[MCU] 串口通信的字节数

[复制链接]
1906|18
 楼主| zhn11212023 发表于 2015-12-22 10:02 | 显示全部楼层 |阅读模式
最近在弄串口通信,MCU通过RS232与从机相连,为了保证数据安全可靠,选择用包的形式传输,但是不知道包的大小怎么设定,想问下一般是怎么选择包的大小的呀?谢谢啦~~
JY-DX-JY 发表于 2015-12-22 10:26 | 显示全部楼层
需要多大设多大。你都要传输那些数据呀。一般是帧头,字节数,数据,校验和。
ningling_21 发表于 2015-12-22 10:41 | 显示全部楼层
根据传送的数据量的多少自己定义,几个到几百个字节都可以
 楼主| zhn11212023 发表于 2015-12-22 10:49 | 显示全部楼层
JY-DX-JY 发表于 2015-12-22 10:26
需要多大设多大。你都要传输那些数据呀。一般是帧头,字节数,数据,校验和。 ...

没有一个通用的大小么?我的格式是帧头(2),长度(1),数据(n),CRC(2),帧尾(1),但是不知道数据多长合适
 楼主| zhn11212023 发表于 2015-12-22 10:49 | 显示全部楼层
ningling_21 发表于 2015-12-22 10:41
根据传送的数据量的多少自己定义,几个到几百个字节都可以

帧头(2),长度(1),数据(n),CRC(2),帧尾(1),这是我的格式 。为了考虑到效率啦,容错啦,有一般性的长度么?
JY-DX-JY 发表于 2015-12-22 10:52 | 显示全部楼层
zhn11212023 发表于 2015-12-22 10:49
没有一个通用的大小么?我的格式是帧头(2),长度(1),数据(n),CRC(2),帧尾(1),但是不知道数 ...

没有通用大小
JY-DX-JY 发表于 2015-12-22 10:52 | 显示全部楼层
zhn11212023 发表于 2015-12-22 10:49
没有一个通用的大小么?我的格式是帧头(2),长度(1),数据(n),CRC(2),帧尾(1),但是不知道数 ...

没有通用大小
ningling_21 发表于 2015-12-22 12:17 | 显示全部楼层
zhn11212023 发表于 2015-12-22 10:49
帧头(2),长度(1),数据(n),CRC(2),帧尾(1),这是我的格式 。为了考虑到效率啦,容错啦,有一 ...

如果波特率够高,数据包可以大点几百个,波特率低就小点几十个
yhn1973 发表于 2015-12-22 12:27 | 显示全部楼层
可以用modbus协议
justtest111 发表于 2015-12-22 13:01 | 显示全部楼层
字节数可以根据你的波特率和闪存大小自己决定啊
 楼主| zhn11212023 发表于 2015-12-22 13:51 | 显示全部楼层
justtest111 发表于 2015-12-22 13:01
字节数可以根据你的波特率和闪存大小自己决定啊

可以详细一点么?
 楼主| zhn11212023 发表于 2015-12-22 13:52 | 显示全部楼层
ningling_21 发表于 2015-12-22 12:17
如果波特率够高,数据包可以大点几百个,波特率低就小点几十个

115200,你觉得怎么样一个范围合适呢?
sjnh 发表于 2015-12-22 14:02 | 显示全部楼层
zhn11212023 发表于 2015-12-22 13:52
115200,你觉得怎么样一个范围合适呢?

既然用RS232说明通信距离很近,干扰也少,115200可以;
ningling_21 发表于 2015-12-22 14:19 | 显示全部楼层
zhn11212023 发表于 2015-12-22 13:52
115200,你觉得怎么样一个范围合适呢?

不知道你的数据量有多少
changmiao 发表于 2015-12-22 14:26 | 显示全部楼层
你这个问题就好像进入自助餐厅后问服务员,我可以吃多少东西呢?
qq4988 发表于 2015-12-22 15:54 | 显示全部楼层
一个包的字节数多少,看你使用单片机的RAM多少,可以任意定的。自己定义一个协议,就可以
 楼主| zhn11212023 发表于 2015-12-22 17:36 | 显示全部楼层
sjnh 发表于 2015-12-22 14:02
既然用RS232说明通信距离很近,干扰也少,115200可以;

是的,可是我问的是数据的长度耶。。。
justtest111 发表于 2015-12-22 20:47 | 显示全部楼层

这个真得根据你的需求来定啊,你要传输什么数据,多少时间传输1帧数据,你的闪存有多大,大量数据校验耗时是否很长,这些都是影响因素啊,我跟你说我一帧数据几百个字节也没用啊。
lentgi 发表于 2015-12-23 09:23 | 显示全部楼层
根据经验,一般控制在250个以内最好,波特率19200以上
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

27

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部