Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

лек въпрос за входове/изходи pic16f84a
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=9613
Страница 1 от 1

Автор:  Nenko [ Съб Дек 17, 2011 4:37 am ]
Заглавие:  лек въпрос за входове/изходи pic16f84a

правя следното:

Код:
; vhodno-izhodni izvodi

      #define      CH1      PORTB,7      ; CLEAN
      #define      CH2      PORTB,6      ; CRUNCH
      #define      CH3      PORTB,5      ; DRIVE
      #define      CH4      PORTB,4      ; SOLO
      #define      CH5      PORTB,3      ; HI_GAIN
      #define      CH6      PORTB,2      ; HI_GAIN_SOLO
      #define      REVERB      PORTB,1      ; REVERB - ON/OFF
      #define      MUTE      PORTB,0      ; izhod za MUTE

      #define      RDRVCLN      PORTA,4
      #define      RLOHIGN      PORTA,3
      #define      RMIDSFT      PORTA,2
      #define      RREVERB      PORTA,1
      #define      FX         PORTA,0

; programa

      ORG      H'0000'
      goto      start

; na4alo na programata

start           bsf      STATUS,RP0
      movlw      B'00010100'
      movwf      OPTION_REG
      bcf      STATUS,RP0
      clrf      PORTB
      bsf      STATUS,RP0
      movlw      B'11111110'      ; portowete B -> vhodove, B0-> izhod za mute
      movwf      TRISB
      bcf      STATUS,RP0
      clrf      PORTA
      bsf      STATUS,RP0
      clrf      TRISA         ; nulirane portove A -> izhodi
      bcf      STATUS,RP0
      call      clean
      goto      main


и примерно после следва това:

Код:
check4          btfsc      CH4         ; solo
      goto      check5
      call      wait
      btfsc      CH4
      goto      check5
      call      solo

solo    bsf         MUTE
      movlw      H'03'
      call      read_ee
      call      wait
      bcf         MUTE
      return

read_ee   movwf      EEADR      ; 4etene na eeprom
      bsf         STATUS,RP0
      bsf         EECON1,RD
      bcf         STATUS,RP0
      movf      EEDATA,w
      movwf      PORTA
      return


в цялата схема и програма всичко си работи с изключение на портА4. чете си от еепрома както трябва, изкарва записа върху всички изходи на портА, само на портА4 не иска. какво ли не правих, от 2 дена се главоблъскам и немога да открия грешката. по принцип на портА има и Т0CKI, но не го включвам...а и да го включа пак нищо не се променя.
някой може ли да помогне?

Автор:  fan [ Съб Дек 17, 2011 7:29 am ]
Заглавие:  Re: лек въпрос за входове/изходи pic16f84a

Здравей! Конфигуриран като изход конкретния PORTА,4 на този микроконтролер е тип отворен колектор (или дрейн). За това е нужно добавянето на външен резистор (примерно 10К) между пина и плюса на захранването на микроконтролера.

Автор:  Nenko [ Съб Дек 17, 2011 11:51 am ]
Заглавие:  Re: лек въпрос за входове/изходи pic16f84a

пробвах със запис на 00, пробвах с нулиране - все същото - не работи. а това с нулирането го срещнах в програми написано, не го измислих на своя глава.

Автор:  Nenko [ Съб Дек 17, 2011 12:06 pm ]
Заглавие:  Re: лек въпрос за входове/изходи pic16f84a

благодаря за напомнянето че е с отворен дрейн. оправи се работата

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/