Hi, Dialog
我们基于14585的DSPC例程开发自己的项目,发现当在user_on_system_powered回调函数的执行时间超过2秒(比如用指令delay 2秒)后,系统就宕机了!!!
但是如果我们用J-Link来调试,这个问题就没有,程序可以在user_on_system_powered回调函数里运行任意的时间
但是一样的代码,如果下载到flash,直接上电启动,就会可以复现前面所提到的问题
请问,上电直接运行和在线仿真有什么区别吗?在蓝牙模块断电的情况下,user_on_system_powered回调函数只能运行2秒?
BTW,我们也尝试过把一个3秒的任务分成6个500ms的时间片来执行,每次在user_on_system_powered回调函数都返回KEEP_POWERED,但是当时间累计超过2秒后,系统同样会宕机!
请问,遇到这种需要长时间堵转工作的任务,我们应该如何设计?有没有别的方法可以绕开这个问题?
项目紧急,期盼你们的回复!
Keywords:
Device:
你好,
585的软件架构是基于消息机制的,编写用户程序的时候必须遵循“不能阻塞”的原则。