发 帖  
原厂入驻New
无法执行到循环里面内容
131 ARM
分享
还是那个死机问题,如果有人解决请到另一个帖也回打一下,金钱一并奉上,每次死机都是运行至“while(wavtransferend==0);//等待wav传输完成 ;”出不来 ,此时wavtransferend为零,条件满足但无法执行到循环里面的内容,如图,
看了上面的ARM指令,不是很懂,大概是把wavtransferend填充到r0,然后r0与0x00作比较,若满足条件则跳转到“OStimeDlyHMSM(0,0,0,30,OS_OPT_TIME_PERIODIC,&err);” 问题是程序总在这四步里面循环出不去,如图
  请教这是哪里的问题?
0
2020-3-17 04:35:43   评论 分享淘帖 邀请回答
6个回答
感谢回答,怪我没看清楚,现在改过来了,while循环里面原先就是空,后来我给加上的能引起调度的延时函数,改过来试了试,还是死在里面。。。还在研究
2020-3-17 08:23:21 评论

举报

2020-3-17 08:33:52 评论

举报

wavtransferend为必须定义为volatile类型!这个是常识。
2020-3-17 08:41:33 评论

举报

另外你的程序逻辑上,wavtransferend为零那就是在while循环里,二楼都说过了
2020-3-17 09:00:41 评论

举报

  没错,这个值就是定义的volatile 类型的,感谢回答
2020-3-17 09:17:21 评论

举报

  没错,这个值就是定义的volatile 类型的,感谢回答
2020-3-17 09:27:45 评论

举报

只有小组成员才能发言,加入小组>>

264个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表