Код: Выделить всё
movlw b'11111111'
movwf TRISA
movlw b'00000001'
movwf TRISB
clrf TRISD
bcf STATUS, RP0Код: Выделить всё
movf TRISA
movwf TRISDclrf TRISD и bcf STATUS, RP0 , то что изменится и почему?
Микроконтроллер PIC
Код: Выделить всё
movlw b'11111111'
movwf TRISA
movlw b'00000001'
movwf TRISB
clrf TRISD
bcf STATUS, RP0Код: Выделить всё
movf TRISA
movwf TRISDЯ это понимаю, вопрос все же остался тот же, можете объяснить,что изменится и почему? Мы ведь вставляем movf TRISA и movwf TRISD после clrf trisd.Родэрик писал(а):во-первых, movf trisa, куда копируешь, в W или F ?
Если в W, то в clrf trisd не будет смысла, поскольку тут же после очистки, в trisd ты пересылаешь FF (судя по самой первой строчке), настраивая все его ноги на вход.
если надо и trisa, и trisd настроить на вход, то пиши:
movlw FFh
movwf trisa
movwf trisd
moonk1n писал(а):Код: Выделить всё
Микроконтроллер PIC[/quote] КАКОЙ! потом будем дальше обсуждать! по умолчанию (если не указано) - то копируется в регистр хотя, возможно, не у всех PIC-ов. у большинства PICов TRIS - регистры находятся в одном банке, который тоже еще надо "выбрать", как Родэрик и написал. У некоторых пиков есть еще коварные регистры ANSEL ANCON ADCON, про которые новички часто забывают, но... начнем с используемого PIC-а.
sbhidden писал(а):Начнем с того :moonk1n писал(а):Код: Выделить всё
Микроконтроллер PIC[/quote] КАКОЙ! потом будем дальше обсуждать! по умолчанию (если не указано) - то копируется в регистр хотя, возможно, не у всех PIC-ов. у большинства PICов TRIS - регистры находятся в одном банке, который тоже еще надо "выбрать", как Родэрик и написал. У некоторых пиков есть еще коварные регистры ANSEL ANCON ADCON, про которые новички часто забывают, но... начнем с используемого PIC-а.[/quote] PIC16F877A
В код movf TRISA компилятор попросит вписать получателя, следовательно:moonk1n писал(а):Если добавить кодКод: Выделить всё
movlw b'11111111' movwf TRISA movlw b'00000001' movwf TRISB clrf TRISD bcf STATUS, RP0междуКод: Выделить всё
movf TRISA movwf TRISD
clrf TRISD и bcf STATUS, RP0 , то что изменится и почему?
Микроконтроллер PIC
Код: Выделить всё
movf TRISA,W ; из TRISA закидываем в W значение b'11111111'
movwf TRISD ; из W закидываем в TRISD значение b'11111111'
Код: Выделить всё
movlw b'11111111'
movwf TRISA
movwf TRISD
movlw b'00000001'
movwf TRISB
bcf STATUS, RP0Код: Выделить всё
movf TRISA,F ; проверка TRISA на Zero, бессмысленно - там уже b'11111111'
movwf TRISD ; из W закидываем в TRISD значение b'00000001'
Код: Выделить всё
movlw b'11111111'
movwf TRISA
movlw b'00000001'
movwf TRISB
movwf TRISD
bcf STATUS, RP0