1.单片机中的波特率是什么
波特率是传输通道频宽的指标,单片机中的波特率主要是指串口通信时的速率。在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。由此,我们可以这样理解单片机中的波特率:单片机一秒钟内发送(或接收)了多少码元的数据。
单片机串口的通信波特率不能随意设定,而应该再一些值中去选择。一般常见的波特率是9600或者115200,即低端的单片机如51常用9600,高端的单片机和嵌入式Coc一般用115200。通常来说,单片机的波特率越高,发送数据的效率就越高。
2.单片机中计算波特率的方法
串行口工作方式为方式1:
- (波特率=(2^SMOD)/32)定时器T1的溢出率
- 定时器T1的溢出率=单片机内部时钟频率/(256-X),X是定时器的初值
- 波特率=(2^SMOD)/32(单片机内部时钟频率/(256-X))
对于这个公式可以这样理解:
- 要计算波特率,实际就是要计算如何得到我们想要的频率。
- 单片机的晶振频率一般为11.0592 MHZ。而想要得的频率为9600(波特率),很显然晶振频率要远远大于我们实际想要的。这时,就需要通过软硬件的计算方法得到波特率。