@VV大神,@Susan,@各位高手
遇到了一个问题,实验用协调器周期性的给路由节点发送数据,路由节点收到以后回复一条数据,协调器收到后串口打印输出。
测试中发现,单个路由节点测试很稳定。但两个以上的路由节点测试时,一段时间后,就会有节点掉线,通过IAR发现,程序停在HAL_DEBOUNCE(!HAL_PUSH_BUTTON1());这个位置,,,,不知道怎么解决这个问题,,希望大家能指点,谢谢
xiaoye Lu:
调试发现不是每次都停在HAL_DEBOUNCE(!HAL_PUSH_BUTTON1());
但是周期性一段时间程序就跑到了一个点停了,,今天在HAL_LED_BLINK_DELAY();处停了,,,
请问这个有可能是什么原因呢
VV:
回复 xiaoye Lu:
程序进入异常了。
void halAssertHandler( void ){#if defined( HAL_ASSERT_RESET ) HAL_SYSTEM_RESET();#elif defined ( HAL_ASSERT_LIGHTS ) halAssertHazardLights();#elif defined( HAL_ASSERT_SPIN ) volatile uint8 i = 1; HAL_DISABLE_INTERRUPTS(); while(i);#endif
return;}
你可以在IAR调试模式下,看下view->call stack, 是从哪里进入到这个异常处理的
xiaoye Lu:
回复 VV:
VV大神,查看Call Stack后显示的这个,这个是什么原因使进入错误提示函数呢