PIC的单片机,IO口的宏定义 突然不起作用了是什么原因?

2020-02-06 10:11发布

本帖最后由 zpywz 于 2015-9-24 11:31 编辑

在一个头文件里宏定义了一个IO口, 之前可以的,最近不知道改了哪里,现在通过宏定义无法操作IO了。

头文件内的定义:
#define  EN_Power   RD1               

主程序:
EN_Power=1 ;                这句不起作用。
NOP;                             如果仿真时在这里设置断点,这个IO口又是可以变高电平的。
RD1=1 ;                         否则非要这样才能操作这个IO口

很纳闷,什么情况下会出现这种问题?求解~


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
gaolf_2012
2020-02-06 14:44
本帖最后由 gaolf_2012 于 2015-9-24 11:54 编辑

#define EN_Power         LATDbits.LATD1
#define EN_Power_TRIS    TRISDbits.RD1

使用前先将其设成输出口,
EN_Power_TRIS = 0;
如果单片机该口有模拟(ad)功能,还得将ANSELD &= 0xfd;

一周热门 更多>