QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3862|回复: 8

串口编程中的停止位问题

[复制链接]
发表于 2004-7-7 09:30:35 | 显示全部楼层 |阅读模式
请问,串口通信中,停止位为1位和为2位有什么实质性的影响?
我测试过在9600bps速度下,发送方设停止位1和接受方设停止位2都能正确接受
停止位是否在低速传送时才有影响?是否发送方设置成2位停止位更保险一点?
发表于 2004-7-7 11:04:07 | 显示全部楼层
帮你顶,等mozilla   
回复

使用道具 举报

 楼主| 发表于 2004-7-7 11:49:49 | 显示全部楼层
[quote:e5a7894027="sagaeon"]帮你顶,等mozilla   [/quote]
谢谢
呵呵,顶到他上来
回复

使用道具 举报

发表于 2004-7-7 13:49:53 | 显示全部楼层
一般情况下,串口每发一个字节都会加一个停止位,表示数据发完了,1表示用一个高电平作为停止为,2表示用两个连续高电平作为停止位,用2的话,实际传输速度要比1慢点.
回复

使用道具 举报

 楼主| 发表于 2004-7-7 14:03:28 | 显示全部楼层
[quote:3609ee33ff="mozilla"]一般情况下,串口每发一个字节都会加一个停止位,表示数据发完了,1表示用一个高电平作为停止为,2表示用两个连续高电平作为停止位,用2的话,实际传输速度要比1慢点.[/quote]

那发送方设一个停止位,接收方设两个停止位为何不会接收出错?
回复

使用道具 举报

发表于 2004-7-7 15:22:47 | 显示全部楼层
1,2在一般情况下没什么区别,因为在停止位发出到发送下一个字节前,一直是高电平,如果发送方停止位是1,接收方是2,接收方会把停止位1后面的一个高电平当成停止位2.
在传输速率很高的情况下可能会有问题.
回复

使用道具 举报

 楼主| 发表于 2004-7-7 16:31:15 | 显示全部楼层
呵呵,明白了,谢谢

还有,校验模式有什么影响,如果发送方设置奇校验,而接受方设置为偶校验,那接受方在收到数据时应该发生校验错误了吧,为何win下的串口调试工具依然能正确显示数据?
是否奇偶校验在发生错误时硬件只会将相应的寄存器位置出错标志,让软件对出错进行处理,而不会从硬件上将出错的数据丢弃?

设置IGNPAR(IGNPAR Ignore parity errors)是忽略校验错误,那这个忽略校验错误是
产生校验错误时不置相应标志位
还是
产生校验错误时不丢弃收到的数据?
回复

使用道具 举报

发表于 2004-7-10 22:44:37 | 显示全部楼层
这个不太了解
回复

使用道具 举报

 楼主| 发表于 2004-7-11 22:56:54 | 显示全部楼层
谢了,我再翻点资料看看这校验
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-8 00:04 , Processed in 0.045804 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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