OpenEdv-开源电子网

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

【提问】串口数据位长度包不包括停止位的????

[复制链接]

42

主题

141

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
342
金钱
342
注册时间
2015-5-26
在线时间
49 小时
发表于 2015-6-26 16:04:44 | 显示全部楼层 |阅读模式
5金钱
看手册上说stm32串口可以设置n个停止位,那这个n是任意取的吗?我知道数据长度是包含校验位的,那也包含停止位吗?8位数据如果包含校验位,那实际上数据是7位。但如果包含停止位的话(假如是2位停止位),那么数据位就剩下8-1-2=5位了。。。。
还有,如果这个n可以任意取的话,那么一帧不就会出现很多种位数的情况咯?刚学,不懂。。。麻烦大家给讲讲。

最佳答案

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

LZ 有些概念是错的。 UART 基本格式是:1个起始位、8个数据位(即一个字节)、1个停止位。 所以,基本格式是10位,不能再少了。 校验位要单独分配名额,不能占用这 10 位。 额外的停止位,也要另外分配名额。 所以,如果比较齐全,会达到11位、12位。 但是,基本格式用得最多,最普遍。 增加一个位,需要双方的芯片都支持,才行。 用基本格式就足够了,搞花样其实没有任何意义。 增加一 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11555
金钱
11555
注册时间
2014-4-1
在线时间
1317 小时
发表于 2015-6-26 16:04:45 | 显示全部楼层
LZ 有些概念是错的。

UART 基本格式是:1个起始位、8个数据位(即一个字节)、1个停止位。
所以,基本格式是10位,不能再少了。

校验位要单独分配名额,不能占用这 10 位。
额外的停止位,也要另外分配名额。

所以,如果比较齐全,会达到11位、12位。

但是,基本格式用得最多,最普遍。
增加一个位,需要双方的芯片都支持,才行。

用基本格式就足够了,搞花样其实没有任何意义。
增加一个位,通信效率就降低一点,而收益几乎没有。


回复

使用道具 举报

2

主题

239

帖子

0

精华

高级会员

Rank: 4

积分
545
金钱
545
注册时间
2015-6-5
在线时间
110 小时
发表于 2015-6-26 17:20:15 | 显示全部楼层
http://albert-oma.blogspot.tw/2012/03/uart.html
回复

使用道具 举报

42

主题

141

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
342
金钱
342
注册时间
2015-5-26
在线时间
49 小时
 楼主| 发表于 2015-7-4 01:55:20 | 显示全部楼层
回复【3楼】xuande:
---------------------------------
回复收到了。谢谢您的回答。您说的我明白了。但是。。答疑老师,针对stm32,我在网上见到别的网友说到:stm32如果设置成8位长度。这8位不包括起始位,但是如果有校验位的话,是算在这8位里面的。比如说8位长度,一个校验位。那实际数据传输的是7位。如果有校验位且传输的数据是8位,那数据长度就要设置成9位。这样对吗?
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11555
金钱
11555
注册时间
2014-4-1
在线时间
1317 小时
发表于 2015-7-4 12:01:03 | 显示全部楼层
1、7位数据,好像没听过、没见过、没用过。
关键是“校验”的概念。“校验”是谁来执行的?
平时说的概念,都是硬件来执行的,不需要自己编程。如果是自己编程校验,多少位就随你了。

2、把数据位、校验位区分开说话,不要纠缠在一起。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-20 22:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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