关于一个休眠的小问题无法进休眠
首先说休是可以用的。然后再使用中发生的问题如下
定义 float TEMP_TEMP=0;
因为要运算所以就这么定义了。
如果下面这样写就不出错
if (TEMP_TEMP>=0 && TEMP_TEMP<14)
{
P1=0;
P14=1;
}
如果下面这么定就会出错(无法休眠)
if (TEMP_TEMP<13)
{
P1=0;
P14=1;
}
实在搞不懂为什么。求指教
现在这样改了只能进一次中断! if (TEMP_TEMP>=22 && TEMP_TEMP<23)
{//2210110
P1=0;
P14=1;
P15=0;
P16=1;
P17=1;
P13=0;
}
有这个就不行了 现在解决方法就是不能写P1=0;或者P1=1; 没看明白哇,哪个型号,能上传下可复现的工程? ercircle 发表于 2025-3-27 21:08
没看明白哇,哪个型号,能上传下可复现的工程?
Stc 8h2k08u
这个问题我已经解决了
就是不能设置p1=0或者p1=1,可能和用p10p11做iic通讯有关系,反正就是只要有这两句,他就不会进入休眠. qepuemc 发表于 2025-3-27 21:19
Stc 8h2k08u
这个问题我已经解决了
就是不能设置p1=0或者p1=1,可能和用p10p11做iic通讯有关系,反正就是 ...
使用硬件I2C就不要软件操作IO口
不要声明时赋值,否则编译器不清楚在何时赋值 DebugLab 发表于 2025-3-27 21:28
使用硬件I2C就不要软件操作IO口
不要声明时赋值,否则编译器不清楚在何时赋值 ...
学到了谢谢。以后声明时不赋值了。 qepuemc 发表于 2025-3-28 07:53
学到了谢谢。以后声明时不赋值了。
那是定义时赋值,是完全正常合理的,编译在main之前会处理正确的, Ayb_ice 发表于 2025-3-28 09:04
那是定义时赋值,是完全正常合理的,编译在main之前会处理正确的,
谢谢我是常定义时赋值,我怕运行时值不确定。
看电流就是设置了P1后导致P10 11 不对程序进了死循环了。程序已经改了在操作中不设置P10 11就没事了。
页:
[1]