请问串口波特率的确切含义

[复制链接]
4208|7
 楼主| 似水无痕 发表于 2012-2-20 10:44 | 显示全部楼层 |阅读模式
比如我用串口调试助手,将串口波特率调到9600,是说明串口的物理层的方波频率是9600么?但是我全速传输30秒数据,发现总共传了36234个字节,每秒钟1207个字节。那么串口物理层频率应该是1207×(8+1+1) = 12070,大于9600啊,这是咋回事呢。难道串口波特率是指实际传输的有效数据吗?(1207×8 = 9660)如果是的话,那我把串口速率设置成9600,修改不同的起始位和校验位,如果起始位和校验位增加,那么串口物理层频率也会自动增加以保证波特率是9600,是这样么?
HWM 发表于 2012-2-20 13:38 | 显示全部楼层
“波特率”应该仅针对有效位。
wangjun403 发表于 2012-2-20 15:07 | 显示全部楼层
1/每一位的传输时间=波特率
NE5532 发表于 2012-2-20 17:14 | 显示全部楼层
1/9600=104uS,指串口上的单位时间,即启动位、停止位和数据位的实际时间,换句话说,启动位和停止位要消耗传输带宽,一般可以按1mS一个字节估算。
icecut 发表于 2012-2-21 11:32 | 显示全部楼层
上示波器就一目了然
ghost1325 发表于 2012-2-21 15:08 | 显示全部楼层
:lol年前买了块USB口的小逻辑分析仪,几十块钱,24M采样,看这个应该比示波器更清楚
chunyang 发表于 2012-2-21 18:30 | 显示全部楼层
楼主理解的不对,串口波特率在计算时包括了所有位信息,不同停止位时,物理速率不会自动改变,故而有效数据传输率是不同的。
andyany 发表于 2012-3-5 17:39 | 显示全部楼层
波特率应该是位速率,bps, bit per second,位每秒的意思。
30秒时间可能有些短,误差可能比较大。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

489

帖子

1

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