PORTA的问题
我用C写了一个小程序,如下:#include<pic16f87.h>
void delay(void);
void main()
{TRISA=0x00;
PORTA=0x01;
LOOP: PORTA=PORTA<<1;
delay();
goto LOOP;
}
void delay(void)
{int x;
dly:for(x=50000;--x;){;}
}
可是,用WATCH 窗口查看,PORTA的值一直为0 AD配置问题!
16系列单片机有个AD配置寄存器,默认状态下所有的PORTA口都为模拟输入端口,这样据说功耗较低。
ADCON0及ADCON1这两个寄存器需要配置,详细资料自己查一下吧。
对于端口操作一定要注意,如果端口有复用功能的情况,注意相关的配置寄存器。
页:
[1]