在单片机里面,波特率和比特率是一回事吗?

2019-08-19 18:41发布

在网上结果里,有各种解释,第一种是说波特率是指单位时间内发出的码元数,而码元可以是由不同的比特位组成,另一种就是说波特率是每秒发出的比特数。我查了两本书,讲的也不是很清楚。郭天祥的书里讲的是 :每秒传输二进制代码的位数,即1波特=1位/秒。 另一本新编CS-51单片机应用设计里,定义为:串行口每秒钟发送(或接收)的位数。比较混乱,越看越不明白了,大家可以一起来讨论下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
tnteye
2019-08-20 13:14
/(9600*16) 除以(1/40000000)也就是以时钟周期除了最小时钟周期得到的就是计数的个数。简化而言就是 40000000/(9600*16)=260,也就是频率直接相除就得到要分频计数器计数的个数。     
 [MS1]  
40000000/(9600*16)=260.4    
串口通信必须要设定波特率,本设计采用的波特率为9 600 bit/s。产生波特率的时钟频率是越高越好,这样才可产生较高且精确的波特率。设计选用50M主频率要产生9600bit/s波特率,每传送一位数据需要5 208.33个时钟周期。取一个最接近的数是5 208,则波特率为9 600.61,其误差约为0.006%,误码率很低可以确保通信正常。  
( liupeng  50000000/5208=9600.61) 

一周热门 更多>