FitzSimmons79 2022-03-28 22:37 采纳率: 37.5%
浏览 31
已结题

LPC3250丢失数据

PLC使用的是LPC3250的MCU,在进行串口通讯时使用UART4,现在问题是发3帧数据,如下:
12 25 0A
41 41 20 20 20 30 2E 30 30 30 20
0A 25 14
帧之间发送时间间隔5ms,PLC扫描周期9ms,经常出现第2帧丢失几个字节的情况,有懂这个的能解释一下吗?

  • 写回答

1条回答 默认 最新

  • 嵌入式吴彦祖 2022-03-29 18:07
    关注

    我说的不一定对哈!
    怀疑 1.扫描周期是9ms就是每隔9ms读一次串口存数据的buffer意思吗?如果是的话,那就是读取速度跟不上发送速度,你刚读完第一帧,第二帧发过来了,你还占用哪个缓冲串口数据的buffer呢!你使用完的时候,串口这个缓冲buffer需要清空留着接受下次数据,这个缓冲区就同时被清空任务和输入任务两个人使用,你现在知道为啥会出现乱码的问题了吧!
    解决办法!
    把你的扫描周期缩短到3ms一下,但是这个方法不靠谱!!!!
    把你发送每帧数据的时间拉长到15ms,这样我感觉会稳妥一点!

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月14日
  • 创建了问题 3月28日

悬赏问题

  • ¥15 VESTA绘图原子颜色显示异常
  • ¥15 天翼云搭建多ip l2tp
  • ¥30 matlab求解刃位错方程
  • ¥15 python实现CAD识图
  • ¥15 如何实现在renpy中创建并应用不同大小尺寸对话框?
  • ¥15 table表格有一列是固定列 滑动到最下面时 固定的那一列有几行没显示出来
  • ¥20 单细胞数据注释时报错
  • ¥15 vscode编译ros找不到头文件,cmake.list文件出问题,如何解决?(语言-c++|操作系统-linux)
  • ¥15 通过AT指令控制esp8266发送信息
  • ¥15 有哪些AI工具提供可以通过代码上传EXCEL文件的API接口,并反馈分析结果