• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

请教各路大神串口调♂教问题

_落雪千寒灬 2017-08-28 浏览量:547
今天调了一天串口 我现在的心情就像我头像那样
用的芯片是f103cb 串口波特率9600 MCU与上位机串口通讯调试

首先用虚拟串口连接com1 2 然后用KeilMDK Debug(不是在线)串口调试 配合串口调试助手软件


通信情景1:
MDKDebug 与 串口调试助手 从串口调试助手发送几十次大约十几位的特定数据包
结果:MDK接收后发来同样次数的特定数据包 说明MDK接收和发送正常 且正确率100%
通信情景2:
上位机程序 与 串口调试助手 从串口调试助手发送几十次大约十几位的特定数据包
结果:上位机接收后发来同样次数的特定数据包 说明上位机接收和发送正常 且正确率100%
通信情景3:
MDKDebug 与 上位机程序 从上位机发送几条数据包信息 MDK接收不稳定 各种丢包 正确率五五开 GG

从MDK发送几条数据包信息 上位机接收不稳定 各种丢包 正确率五五开 GG


以上都是没用板子 直接调试程序 实际用板子和上位机调试 也是各种丢包
感觉很奇怪 为什么用串口调试助手毫无问题 实际又各种丢包
有什么串口调试好的方法 各路大神推荐一下
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 一,
    你的STM32工程中对于串口是使用什么方式,是中断还是查询。
    你的工程中只运行串口程序,把其他的程序注释了,看看结果。
    二、
    你的上位机发送速率是多少,不是波特率,会不会发送太快,STM32还没有处理就又发了下一个数了。
    三、
    有没有用系统,任务内存分配是不是不够。或是没有加临界段。
    • 发布于 2017-08-28
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:2
  • 感觉是你的虚拟串口被占用了,你使用上位机程序时先检查一下串口被释放没
    • 发布于2017-08-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 楼主,估计你的串口接收写的有问题;数据未正确接收。
    • 发布于2017-08-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

请教各路大神串口调♂教问题