PIC16系列单片机PORTA端口设置为输出状态,当置其中某一端口为1时没有产生高电平,求解

2020-02-08 12:19发布

如题
现上程序
#difine BAKSLEEP             RA0
#difine BAKSLEEP_DIR         TRISA0
......
......
......
void main()
{
    TOIE=0;
    GIE=0;
    OSCTUNE=0X00;
    OPTION=0X02;
    CMCON0=0X07;
    WDA=0X04;
    WPUDA=0X04;
    BAKSLEEP_DIR=0;
    BAKSLEEP=0;
    ....
    ....
    ....
    BAKSLEEP=1;
   .....
   .....
   .....
}
在调试的时候发现RA0没有产生高电平,有人能帮我找到原因么??
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
xwc891106
1楼-- · 2020-02-08 14:15
我用的是PIC16F636
ThinkARM
2楼-- · 2020-02-08 18:44
回复【1楼】xwc891106  
-----------------------------------------------------------------------

可能还要设为“数字”端口,PORTA大部分默认为AD输入。
portx
3楼-- · 2020-02-08 19:34
回复【楼主位】xwc891106
-----------------------------------------------------------------------

2楼说的对,看看ADCON寄存器吧,A口因为是复用端口所以要设置一下模拟量与数字量的区分
irisice008
4楼-- · 2020-02-08 19:55
在ADCON里把模拟功能设置为普通I/O功能就可以了

一周热门 更多>