波特率 晶振频率 传输速率

来源:互联网 发布:深入浅出java pdf 编辑:程序博客网 时间:2024/05/30 04:23

波特等于每秒钟传输的数据位数,

如果设置波特率为115200,数据位为8bit,起始位为1bit,结束位为1bit,校验位为1bit;

那1s钟不间断可传送的字符(1bit起始位+8bit数据位+1bit校验位+1bit结束位,共11bit)为115200/11=10472;速率约为10kB/ps;

传送一幅200KB的图片,需要的时间约为20s;

往往,主机和从机波特率的设置出来的时钟频率不一定和想要设置的一样。但只要相差不要太大,即一个码元(这里是11bit)的误差不要超过1bit的几%就可以使传送接收正确。具体是几%,应该和发送和接收的机制有关,再查资料分析.......。同样,传输距离的加长,导致负载电容加大,边沿会变缓而且上升时间变大,速率上不去,也会导致一定的偏差,故串口一般都是短距离传输。

115200 可以理解为 每秒传送 115200 bytes. (约 112.5 kb /s)

怎么用115200的波特率传输?

根据公式 波特率= Fosc/时钟数/(定时器溢出值-初值)/(32/2**SMOD)

要计算最大波特率,则SMOD = 1,(定时器溢出值-初值)最小 = 1,
则 波特率=Fosc/时钟数/16,如果Fosc=11059200 Hz,单片机是 12个时钟周期,
则波特率 = 11059200 /12/16 = 57600。
所以波特率要达到115200 ,有两种办法:
1、选择晶振为 22.1184MHz
2、选择单片机是6个时钟周期的

波特率9600与波特率19200有什么区别,另波特率是什么意思?

波特率是一个电子信号上的术语,用于描述信道的数据传输速度。所谓信道,可以是无线的,也可以是有线的,说白了就是两个东西之间传输数据。

波特率通常单位是bit/s,也就是  二进制位/秒。因为一个字节是8个bit,而一个字节通常可以表达一个ASCII码,比如一个英文字母,所以:9600的波特率的信道,理论上每秒可以传输9200/8个英文字母的数据量,也就是1200个字节,大约1.2KB。而19200则是每秒可传输2400字节。

比如一个文件,假设容量是100KB,那么它通过9600的信道传输,需要的时间至少是100/1.2秒,也就是超过一分钟了。

9600和19200波特率的信道,都是早期接口的传输率标准。比如早期的COM口(也叫串口),经常采用这样的标准,今天看来,速度非常非常慢。早期使用这样的接口用于鼠标、键盘等简单装置的连接,以及计算机和其它设备的通信。而现在,还有少数主板支持这样的接口。

在今天的计算机上,这个接口标准早已淘汰,但是生产中,还是有很多设备支持这样的接口。

比如,在数控机床上,当计算机与机床通信的时候,很多机床都要求使用COM口,以9600,11200或19200之类的波特率进行通信。

以上回答,不知道你能不能明白。 

附图中,上面的绿色接口就是传说中的串口-COM口,依照RS-232标准。

下面的蓝色接口则是用于连接显示器的VGA接口。


0 0
原创粉丝点击