WIFI模块与主芯片通过串口进行数据交换,在串口接收中断中将接收到的数据发给调试串口1,
同时用一个全局变量将接收到的数据传递给主程序,在主程序中根据这个全局变量的值不同,点亮或熄灭LED灯。
问题:
if(res=='a') LED=0; //亮
if(res==2)LED=1; //灭
调试现象:发 a ,灯亮; 发 2 ,灯不灭????
错误原因: 调试的时候,'a'是字符类型,2是整型数据!!! 网络调试助手里设置发送的默认是字符型,因此发 a 程序执行亮灯。 发 2 其实是发的'2',即2的ASCII码,不是程序中的数字2,因此判断条件不成立,灯不灭!!!
备注: 程序中经常出现字符与数字类型混乱的问题,这个细节要注意啊!!!!
版权声明:本文为CSDN博主「芯片设计之路」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gogoisme/article/details/121915260
暂无评论