[MCU] 变量设置问题

[复制链接]
1549|26
 楼主| pangb 发表于 2020-12-9 20:28 | 显示全部楼层 |阅读模式
在IAR中编程,代码为:
​                            uchar a;
​                            a = 1;
​                            while(a)
                            {
                                 LED8 = 0xFD;//LED2亮
                                 LCD_Display();
                            }
​在主程序中,变量a的值没有变过,不知道为什么每次只执行一次 LCD_Display();函数,就跳出循环了,我加了a=1后,如下代码:​
​                           uchar a;
                           a = 1;
                           while(a)
                            {
                                 LED8 = 0xFD;//LED2亮
                                 LCD_Display();
                                 a = 1;
                            }
​就不跳出去了,我想请问一下这是为什么呀,执行 LCD_Display();​函数的过程中​,根本没有涉及到变量a,它的值一直就没有变过呀?为什么还跳出循环呢?求解
llljh 发表于 2020-12-9 20:32 | 显示全部楼层

直接写while(1);不就行了
houcs 发表于 2020-12-9 20:35 | 显示全部楼层
标准的应该是:
while(a==1)
至于a的值是否发生变化,用debug工具单步执行以下,看看每次循环的值就清楚了
xxmmi 发表于 2020-12-9 20:40 | 显示全部楼层
a是什么变量,全局变量?局部变量?
huwr 发表于 2020-12-9 20:47 | 显示全部楼层
是不是看门狗动作了,程序重新跑了
wangpe 发表于 2020-12-9 20:50 | 显示全部楼层
这个变量是什么含义
chuxh 发表于 2020-12-9 20:54 | 显示全部楼层
while(1)吧
supernan 发表于 2020-12-9 20:57 | 显示全部楼层
代码不是很完整的
morrisk 发表于 2020-12-9 21:01 | 显示全部楼层
uchar a定义的有问题吧
hanwe 发表于 2020-12-9 21:05 | 显示全部楼层
LCD_Display();函数呢?
zhanglli 发表于 2020-12-9 21:12 | 显示全部楼层
使用static试试
bqyj 发表于 2020-12-9 21:15 | 显示全部楼层
这个没有碰上过。
chuxh 发表于 2020-12-9 21:19 | 显示全部楼层
a = 1;单步调试了?
zhouyong77 发表于 2020-12-9 21:22 | 显示全部楼层
这就诡异勒
dingy 发表于 2020-12-9 21:23 | 显示全部楼层
IAR变量确实有点怪
xxrs 发表于 2020-12-9 21:27 | 显示全部楼层
程序执行有问题吗
morrisk 发表于 2020-12-9 21:35 | 显示全部楼层
可能变量不能全局使用。
yufe 发表于 2020-12-9 21:38 | 显示全部楼层
你要死循环执行吗?
huwr 发表于 2020-12-9 21:43 | 显示全部楼层
把工程代码粘贴看看
chenho 发表于 2020-12-9 21:46 | 显示全部楼层
a的变量没有赋值
您需要登录后才可以回帖 登录 | 注册

本版积分规则

701

主题

7643

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部