OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3938|回复: 5

在串口接收中为什么会有多余的字节?

[复制链接]

10

主题

59

帖子

0

精华

初级会员

Rank: 2

积分
191
金钱
191
注册时间
2018-7-23
在线时间
23 小时
发表于 2019-12-4 17:16:56 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 Ernest2000 于 2019-12-9 09:53 编辑

使用rt-thread 串口设备框架,采用 DMA 传输,为什么有多余的数据?在什么情况下,这个多余的数据会重复计数?

如下图所示:

打印日志.png

图中基本介绍 : pc 发送的 82 个字节,size 为中断中的大小

最佳答案

查看完整内容[请看2#楼]

多余的两个字节是串口工具添加的,但是其中第三条数据是 83 字节的:第一串打印丢了“9” 换成 16 进制后,每毫秒收一次,测试两天,也没有出现丢数据 看起来还得字符串再测测一下
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

10

主题

59

帖子

0

精华

初级会员

Rank: 2

积分
191
金钱
191
注册时间
2018-7-23
在线时间
23 小时
 楼主| 发表于 2019-12-4 17:16:57 | 显示全部楼层
多余的两个字节是串口工具添加的,但是其中第三条数据是 83 字节的:第一串打印丢了“9”

换成 16 进制后,每毫秒收一次,测试两天,也没有出现丢数据 看起来还得字符串再测测一下
回复

使用道具 举报

109

主题

5562

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10542
金钱
10542
注册时间
2017-2-18
在线时间
1908 小时
发表于 2019-12-4 18:29:54 | 显示全部楼层
帮顶~~
回复

使用道具 举报

11

主题

1041

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3696
金钱
3696
注册时间
2011-5-23
在线时间
2008 小时
发表于 2019-12-5 01:09:00 | 显示全部楼层
贴代码
回复

使用道具 举报

6

主题

1127

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1656
金钱
1656
注册时间
2019-8-15
在线时间
102 小时
发表于 2019-12-5 10:55:27 | 显示全部楼层
帮顶                                       
成功没有捷径
回复

使用道具 举报

10

主题

59

帖子

0

精华

初级会员

Rank: 2

积分
191
金钱
191
注册时间
2018-7-23
在线时间
23 小时
 楼主| 发表于 2019-12-6 10:38:25 | 显示全部楼层
本帖最后由 Ernest2000 于 2019-12-9 09:48 编辑

https://www.rt-thread.org/docume ... vice/uart/uart/#dma

改动部分如下
  1. /* 接收数据回调函数 */
  2. static rt_err_t uart_input(rt_device_t dev, rt_size_t size)
  3. {
  4.     struct rx_msg msg;
  5.     rt_err_t result;
  6.     msg.dev = dev;
  7.     msg.size = size;
  8.     rt_kprintf("size: %d",size);  // 添加的部分
  9.     result = rt_mq_send(&rx_mq, &msg, sizeof(msg));
  10.     if ( result == -RT_EFULL)
  11.     {
  12.         /* 消息队列满 */
  13.         rt_kprintf("message queue full!\n");
  14.     }
  15.     return result;
  16. }
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 23:10

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表