完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请教大神,该往哪方面排查,溢出我通过打断点方式触发,后验证可以清除标志,恢复接收![Snipaste_2024-10-29_17-15-12.png] |
|
相关推荐
1个回答
|
|
从您的描述来看,您在使用LL库F030进行串口通信时遇到了一个串口停止运行的问题。这个问题可能与硬件、软件或配置有关。以下是一些建议,帮助您排查和解决这个问题:
1. 硬件检查: - 检查串口1的硬件连接是否正常,包括数据线、电源线和地线。 - 检查串口1的设备是否正常工作,可以尝试更换设备进行测试。 2. 软件检查: - 检查串口1的配置是否正确,包括波特率、数据位、停止位和校验位等。 - 检查串口1的中断配置是否正确,包括中断优先级和中断服务程序。 3. 溢出处理: - 您提到已经通过打断点方式触发溢出处理,可以尝试在中断服务程序中添加溢出处理代码,以确保在溢出发生时能够正确清除标志并恢复接收。 4. 软件优化: - 检查串口1的接收缓冲区是否足够大,以防止溢出。 - 检查串口1的发送缓冲区是否足够大,以防止发送数据时阻塞。 - 检查串口1的接收和发送函数是否正确处理数据,包括数据校验和错误处理。 5. 串口485问题: - 检查串口485的设备是否正常工作,可以尝试更换设备进行测试。 - 检查串口485的配置是否正确,包括波特率、数据位、停止位和校验位等。 - 检查串口485的中断配置是否正确,包括中断优先级和中断服务程序。 6. 系统资源: - 检查系统资源是否足够,包括CPU占用率、内存使用率等。 - 检查是否有其他任务占用了过多的系统资源,导致串口1无法正常工作。 7. 调试和日志: - 在串口1的接收和发送函数中添加调试信息,以便于排查问题。 - 在中断服务程序中添加日志信息,以便于排查溢出处理是否正确。 通过以上步骤,您应该能够找到导致串口1停止运行的原因,并采取相应的措施进行解决。希望这些建议对您有所帮助! |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
LL库F030进行3个串口收发,2个串口为232,一个为485,长时间后,会出现串口1停止运行,另外两个正常,只有重启复原
650 浏览 1 评论
483 浏览 0 评论
921 浏览 0 评论
959 浏览 0 评论
STM32F405使用LL库与ADC芯片通过SPI方式通讯,总是报数据溢出且接收数据不对
1272 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-10-31 01:17 , Processed in 0.374766 second(s), Total 43, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号