在做单片机的程序设计时候,发现针对某个针脚进行设置为高低电平时候,发现测试电压时候没有变化?
这个什么情况?
程序中直接进行针脚定义:
SBIT(P12,SFR_P1,2);
主函数中直接设置:
P12=1或者P12=0
然后测试电压,没有变化。
1. 查询管脚定义,看是否能这样用
2. 尝试其他脚设置是否起效,来排除程序运行问题
3. 检测外围电路连接,是否被短路(钳位)了。
是只要这一个没有变化,还是都没有变化?
如果是只有这一个没变化,先看看外围电路是不是有问题,在就是单片机坏了
程序样例:
sbit P11 = P1^1;
void main()
{
P11 = 0;
delay();
P11 = 1;
delay()
}
你再试试好不好用,记得加头文件
看引脚内部带不带上拉,外部有没有上拉电阻,不带上拉设置1也不会输出高.
看引脚有没有设置成输入,改成输出
看外部电路有没有钳位成高电平或低电平。
电源
硬件连接情况
软件设置输入输出状态
都要检查
这个GPIO是不是配置成了GPIO模式呢,是不是输出模式呢,
再看看程序,是不是设置的这个引脚,