一个单片机的程序,用的是PIC16F873A,为什么执行完后PORTC=00H呢?给跪了,求大神指点%>_<%

初始化I/O端口
START: MOVLW 3FH ;初始化I/O端口
MOVWF PORTA
MOVLW 0FFH
MOVWF PORTB ;熄灭LED1
MOVWF PORTC
BCF PORTC,5 ;20121125
BSF STATUS,RP0 ;选择存储体1
MOVLW 83H ;取消B口弱上拉,预分频器分配给TMR0使用,分频率为1:16
MOVWF OPTION_REG
MOVLW 85H ;VREF+=AN3,VREF-=VSS,测量结果右移保存
MOVWF ADCON1 ;设置AN0/1为模拟输入,AN3为参考电压,AN2和AN4至AN7为数字I/O
MOVLW 3FH ;设置RA0至RA5为输入
MOVWF TRISA
MOVLW 03H ;设置RB0/1为输入,RB2/3/4/5/6/7为输出
MOVWF TRISB
MOVLW 0D4H ;设置RC2/4/6/7为输入,RC0/1/3/5/7为输出20121125
MOVWF TRISC
BCF STATUS,RP0 ;选择存储体0

第1个回答  2013-06-07
portc上电默认是输入吧?包括其它io,在写入数据输出前,先将io的方向寄存器(如:TRISC)设置为输出。追问

没懂o(╯□╰)o,TRISC设置了0D4H啊

追答

先设置TRISC,再写PORTC,注意顺序。

第2个回答  2015-07-13
呃,好像没有TRISC 寄存器
第3个回答  2013-06-07
你好

目前在帮你查找,请稍等

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网