stm32 keil 变量赋值无效,有可能是什么原因啊

2020-01-01 17:49发布

for(k=0;k<14;k++)
{
                        {
                                if(PCard_StateJS[k]<60)PCard_StateJS[k]++;
                                else {PCard_State[k]=0xAA;}
                        }
}
每秒一次,1分钟后应该是PCard_State[0]到PCard_State[13]都为0xAA,结果
PCard_State[14]数组中,只有PCard_State[1]=0xAA;

有可能是什么原因呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
klxx68
1楼-- · 2020-01-02 18:06
确定1分钟内执行了60次吗?
derive3000
2楼-- · 2020-01-02 22:26
编译器不会犯这么低级的错误吧
lianglee
3楼-- · 2020-01-03 01:02
 精彩回答 2  元偷偷看……
Doci
4楼-- · 2020-01-03 05:25
johnlj 发表于 2016-7-30 11:20
不会是被优化掉了吧

加volatile 无效
Doci
5楼-- · 2020-01-03 07:18
lianglee 发表于 2016-8-1 14:35
volatile 这个东西就是让你告诉编译器,不要对我进行优化。

加volatile 无效
Doci
6楼-- · 2020-01-03 07:50
klxx68 发表于 2016-8-1 11:44
确定1分钟内执行了60次吗?

屏幕实时显示出来加到59了,而且查看内存也是0x3C的,再执行这段的时候只执行 =0 一次,就跳走了

一周热门 更多>