之前也遇到过这个问题后来把HAL_Delay 去掉了. 然后发现不行, 还是得有它.不然发串口数据发的太快会乱掉. 得慢点发. 然后调试到HAL_Delay()方法的内部发现 HAL_GetTick( )函数一直返回 __weak void HAL_Delay(uint32_t Delay) { uint32_t tickstart = HAL_GetTick(); uint32_t wait = Delay; /* A...
TIMEOUT_VALUE的值是否合适。如果超时值设置得太小,可能会导致程序在启动时等待外部时钟的过程中卡死。
调试发现,程序卡在if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE)处,不往下进行。原因:重复使能时钟。。
调试发现,程序卡在if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE)处,不往下进行。原因:重复使能时钟。