波特率有时候会同比特率混淆,实际上后者是对信息传输速率(传信率)的度量。波特率可以被理解为单位时间内传输码元符号的个数(传符号率),通过不同的调制方法可以在一个码元上负载多个比特信息。
严谨定义:
.比特率
在数字信道中,比特率是数字信号的传输速率,它用单位时间内传输的二进制代码的有效位(bit)数来表示,其单位为每秒比特数bit/s(bps)、每秒千比特数(Kbps)或每秒兆比特数(Mbps)来表示(此处K和M分别为1000和1000000,而不是涉及计算机存储器容量时的1024和1048576)。
.波特率
波特率指数据信号对载波的调制速率,它用单位时间内载波调制状态改变次数来表示,其单位为波特(Baud)。 波特率与比特率的关系为:比特率=波特率X单个调制状态对应的二进制位数。
如何区分两者?
显然,两相调制(单个调制状态对应1个二进制位)的比特率等于波特率;四相调制(单个调制状态对应2个二进制位)的比特率为波特率的两倍;八相调制(单个调制状态对应3个二进制位)的比特率为波特率的三倍;依次类推。
一直很疑惑串口的工作流程,特别是波特率和采样时间的关系。
今天下午测了一下,终于知晓了,首先要说明的是串口的波特率实质是比特率!!两者计算公式如下:
(
测试条件:笔记本+USB转串口线(还有驱动)+串口调试助手(AVEN)---陈绍文+示波器+max232
在串口调试助手里,我发送0xff,在DB9型串口里的TXD端能检测到一个高脉冲,在MAX232的RXD端口能检测到一个低脉冲,根据
起始位为低电平可以推测该低脉冲是起始位,从这里可以看到DB9型的TXD输出实际上时数据取反后的结果,经过MAX232再次取反
后还原为初始数据
在波特率为9600时能测到max232RXD输出脚的低脉冲的宽度为104us,实际上也就是1/9600的近似结果
以此类推,波特率为4800时max232RXD输出脚的低脉冲的宽度为208us......
另外,串口是先发送数据的低位,也就是说,你在串口调试助手里0xfe,从MAX232出来的是0_ 01111111 _1,其中开始和末尾的是起始位和停止位
接收方时钟要比波特率(也就是比特率)大,一般为16、32、64倍,原因这里就不说了.....