|
STM32F103长时间运行,串口发送失败,目前定位到一致卡在USART_FLAG_TC判断那里,我们采用轮询的方式发送数据,然后判断USART_FLAG_TC是否发送成功,在大量发送后出现了一次发送后USART_FLAG_TC没有置位,然后就一直卡在这里了,这可如何是好? |
有没有大佬知道这个电路输出为什么只有1V多?按数据手册接的,设置外部输出,输出值也不对
有没有大佬有1602的HAL库驱动
stm32 spi从机实现bissc通信(在线等)
stm32 定时器外部时钟1的TI1FP1及TI2FP2的设置问题
STM32F1定时器中触发信号TRC的来源及选择配置是怎么样的
输入捕获测频率返回异常?
STM32F103 bug
怎么将keil工程更换为vscode工具链?
HAL_UART_Receive_IT不管设置size是多少,我串口一次性发4个字符,最后保存在buffer的也只有一个元素
Error in final launch sequence: Failed to execute MI command: target remote localhost:61234
微信公众号
手机版
定时喂狗?当USART_FLAG_TC置位后喂狗成功 超时不喂直接重启
嗯,目前只能这样,这个时间还不太好确定,太长会影响正常的连续性,太短会每次都就如,感觉字节与字节大发送间隔是ms级别的
我其实不喜欢用看门狗,直接重启的系统应用的连贯性损失太大
如果对串口发送的实时性要求不高 可以加一个error判断 进入error后打断此次循环/函数
但是这只是一个保险措施 还要找找其他原因,这个方案只能说是躲开了问题 但是没有解决
可以看一下是不是其他程序干扰到了 一点点把程序屏蔽掉
[md]这不现实啊,程序太多了,只能加个超时机制了
能接受其实也没问题,下次设计的时候预留那个error接口
这样就算有问题也可以计时处理