1. 常用波特率有哪些
一、STC51单片机外部引脚介绍
1、电源和时钟引脚。如Vcc、GND、XTAL1、XTAL2
2、编程控制引脚。如RST(复位)。
3、I/O口引脚。
Vcc、GND——单片机电源引脚,不同的型号单片机接入对应电压电源,常压为+5V,低压为+3.3V
XTAL1、XTAL2——外接时钟引脚。XTAL1为片内震荡电路的输入端,XTAL2为片内震荡电路的输出端。8051的时钟有两种方式,一种是片内时钟震荡方式,需要在这两个脚外接石英晶体和震荡电容,震荡电容的值一般取10p~30p;另一种是外部时钟方式,将XTAL1接地,外部时钟信号从XTAL2脚输入。
P0口——双向8位I/O口,每个口可独立控制,没有上拉电阻,为高阻态,所以不能正常的输出高低电平,因此该组IO口在使用时务必要接上拉电阻,一般选10千欧。
P1口——准双向8位IO口,每个口可独立控制,内带上拉电阻,这种接口输出没有高阻状态,输入也不能锁存,故不是真正的双向IO口。之所以称它为准双向,是因为该口在作为输入使用前,要先向该口进行写1操作,然后单片机内部才可正确的读出外部信号,也就是要使其先有个“准”备的过程,所以说才是准双向接口。
P3口——与P1口类似,作为第二功能使用时,和引脚有着各种功能的定义,要查手册。
二、电平特性
单片机的输入输出电平为TTL电平,其中高电平为+5V,低电平为0V。计算机串口为RS-232电平,其中高电平为-12V,低电平为+12V。注意,RS-232为负逻辑电平。
三、单片机的几个周期介绍
1、时钟周期:也称为震荡周期,定义为时钟频率的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数,如12Mhz的晶振,它的时钟周期就是1/12us),它是单片机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成这一个最基本的动作
2、状态周期:它是时钟周期的两倍
3、机器周期:单片机的基本操作周期,在一个操作周期内,单片机完成一项基本操作,如取指令、存储器读写等。它由12个时钟周期(6个状态周期)组成。
4、指令周期:他是指CPU执行一条指令所需要的时间。一般一个指令周期含有1~4个机器周期。
四、移位操作
1、左移。C51操作符为“<<”,最低位补零
2、右移。同上
3、循环左移,最高位移入最低位,其他依次向左移一位。
五、数码管显示原理
电路方面有共阴极和共阳极之分,让数码管显示不同的数字就是先定义一个保存16进制数的数组,然后在程序中把这个16进制数赋值给相应的引脚。
六、中断概念
1、51单片机一共有6个中断源
INT0——外部中断0
INT1——外部中断1
T0/1/2——计时器/定时器中断,由计数器满回零引起。
T1/R1——串行口中断,串行端完成一帧字符发送/接收后引起。
七、单片机的定时器中断
51单片机内部共有两个16位可编程的定时器/计数器,即定时器T0和定时器T1。它们既有定时功能又有计数功能。定时器/计数器的实质是加1计数器(16位),由高8位和底8位两个寄存器组成,TMOD寄存器是定时器/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0,T1的启动和停止以及设置溢出标志。
加一计数器的输入计数脉冲有两个来源,一个是由系统的时钟振荡器输出脉冲经12分频后送来;另一个是T0或T1引脚输入的外部脉冲源。如果定时器/计数器工作在定时模式,则表示时间已到;如果工作在计数模式,则表示计数值已经满了。
定时器初始化过程如下:
①对TMOD赋值,以确定T0和T1的工作方式
②计算初值,并将初值写入TH0、TL0或TH1、TL1中。
③中断方式时,则对IE赋值,开放中断。
④使TR0或TR1置位,启动定时器/计数器定时或计数
八、并行与串行基本通信方式
1、并行通信方式:将数据字节的各位用多条数据线同时进行传输,每位数据都需要一条传输线。
2、串行通信方式:串行通信是将数据字节分成一位一位的形式在一条传输线上逐个的传输,此时只需要一条数据线
3、异步串行通信方式:指通信的接收与发送设备使用各自的时钟控制数据的发送和接收过程。其特点是:不要求发送双方时钟严格一致,容易实现,设备开销小,但每个字符要附加2~3位,用于起始位、校验位、停止位,各帧之间还有间隔,因此传输效率不高。在单片机与单片机之间,单片机与计算机之间通信时,通常采用异步串行通信方式。
4、同步串行通信方式:同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方完全达到同步。
九、RS-232电平与TTL电平的转换
一般使用MAX232实现电平转换
十、波特率与定时器初值的关系
1、波特率:单片机或计算机在串口通信时的速率用波特率表示,它定义为每秒传输二进制代码的位数,即1波特 = 1位/秒,单位是bps。
2、波特率的计算:在串行通信中,收、发双方对发送或接受数据的速率有约定。通过编程可对单片机串行口设定四种工作方式,其中方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率来决定。
3、为什么51系列单片机常用11.0592MHz的晶振设计?常用波特率通常按规范取1200,2400,4800,9600···,若采用晶振12Mhz或6Mhz,计算得出的T1定时初值将不是一个整数,这样通信时便会产生积累误差。
十一、串行口结构描述
1、串行口结构:51单片机的串行口是一个可编程全双工的通信接口,具有UART(通用异步收发器)的全部功能,能同时进行数据的发送和接收。串行口主要由两个独立的串行数据缓冲寄存器SBUF(一个发送缓冲寄存器,一个接收缓冲寄存器)和发送控制器、接收控制器、输入移位寄存器以及若干控制门电路组成。执行写指令时,访问串行发送寄存器;执行读指令时,访问串行接收寄存器。与串口紧密相关的一个特殊功能寄存器是串行口控制寄存器SCON,它用来设定串行口的工作方式,接收/发送控制以及设置状态标志位等。
2、串口方式简介:重点介绍方式1:。方式1是十位数据的异步通信口,其中1为起始位,8为数据位,1位停止位。TXD为数据发送引脚,RXD为数据接收引脚。其传输的波特率是可变的,对于51单片机,波特率由定时器1的溢出率决定。通常在做单片机与单片机串口通信、单片机与计算机串口通信、计算机与计算机串口通信时,基本都选择方式1。
3、在具体操作串行口之前,需要对单片机的一些与串口有关的特殊功能寄存器进行初始化设置,主要是设置产生波特率的定时器1、串行口控制和中断控制。①确定T1工作方式(编程TMOD寄存器)②计算T1的初值,装载TH1,TL1③启动T1(编程TCON寄存器的TR1位)④确定串行口工作方式(编程SCON寄存器)⑤串行口工作在中断方式时,要进行中断设置(编程IE、IP寄存器)
十二、I2C总线概述
1、I2C具有接线口少,控制简单,器件封装形式小,通信速率高等优点。I2C总线由数据线SDA和时钟线SCL两条线构成通信线路,即可发送数据,也可接受数据。
2、单片机模拟I2C总线通信,因为有许多单片机没有I2C总线接口,如51单片机,不过我们可以在单片机应用系统中通过软件模拟I2C总线的工作时序,在使用时,只需要正确调用各个函数就能方便地扩展I2C总线接口器件。
3、单片机在模拟I2C通信时,需要写出如下几个关键部分的程序:总线的初始化、启动信号、应答信号、停止信号、写一个字节、读一个字节。
十三、单片机空闲与掉电模式
1、空闲模式:除CPU处于休眠状态之外,其余硬件全部处于活动状态。
2、掉电模式:也成为休眠模式,外部晶振停振,CPU,定时器、串行口全部停止工作,只有外部中断继续工作。
十四、看门狗概念
在由单片机构成的系统中,由于单片机的工作有可能受到外界电磁场的干扰,造成程序的跑飞,从而陷入死循环,程序的正常运行被打断,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称看门狗。
其工作过程如下:看门狗芯片和单片机的一个IO引脚相连,该IO引脚通过单片机程序控制,使他定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散的放在单片机其他控制语句中间的,一旦单片机由于干扰造成的程序跑飞而陷入某一程序段进入死循环状态时,给看门狗引脚送电平的程序便不能被执行到,这时看门狗电路会由于得不到单片机送来的信号,便对它与单片机复位引脚相连接的引脚送一个复位信号,使单片机复位。
十五、SPI接口
1. 概述
SPI = Serial Peripheral Interface,是串行外围设备接口,是一种高速,全双工,同步的通信总线。常规只占用四根线,节约了芯片管脚,PCB的布局省空间。现在越来越多的芯片集成了这种通信协议,常见的有EEPROM、FLASH、AD转换器等。
优点:
支持全双工,push-pull的驱动性能相比open-drain信号完整性更好;
支持高速(100MHz以上);
协议支持字长不限于8bits,可根据应用特点灵活选择消息字长;
硬件连接简单;
缺点:
相比IIC多两根线;
没有寻址机制,只能靠片选选择不同设备;
没有从设备接受ACK,主设备对于发送成功与否不得而知;
典型应用只支持单主控;
相比RS232 RS485和CAN总线,SPI传输距离短;
2. 硬件结构
SPI总线定义两个及以上设备间的数据通信,提供时钟的设备为主设备Master,接收时钟的设备为从设备Slave;
信号定义如下:
SCK : Serial Clock 串行时钟
MOSI : Master Output, Slave Input 主发从收信号
MISO : Master Input, Slave Output 主收从发信号
SS/CS : Slave Select 片选信号
2. 波特率种类
信道包括模拟信道和数字信道。在模拟信道,带宽按照公式W=f2-f1 计算;数字信道的带宽为信道能够达到的最大数据速率,两者可通过香农定理互相转换。
中文名
信道带宽
外文名
Channel bandwidth
公式
W=f2-f1
领域
信息科学
快速
导航
数字信道相关区别
模拟信道
模拟信道的带宽 W=f2-f1 其中f1是信道能够通过的最低频率,f2是信道能够通过的最高频率,两者都是由信道的物理特性决定的。当组成信道的电路制成了,信道的带宽就决定了。为了使信号的传输的失真小些,信道要有足够的带宽。
模拟信道的带宽
数字信道
数字信道是一种离散信道,它只能传送离散值的数字信号,信道的带宽决定了信道中能不失真的传输脉冲序列的最高速率。
一个数字脉冲称为一个码元,我们用码元速率表示单位时间内信号波形的变换次数,即单位时间内通过信道传输的码元个数。若信号码元宽度为T秒,则码元速率B=1/T。码元速率的单位叫波特(Baud),所以码元速率也叫波特率。早在1924年,贝尔实验室的研究员亨利·尼奎斯特就推导出了有限带宽无噪声信道的极限波特率,称为尼奎斯特定理。若信道带宽为W,则尼奎斯特定理指出最大码元速率为B=2W(Baud)尼奎斯特定理指定的信道容量也叫尼奎斯特极限,这是由信道的物理特性决定的。超过尼奎斯特极限传送脉冲信号是不可能的,所以要进一步提高波特率必须改善信道带宽。
码元携带的信息量由码元取的离散值个数决定。若码元取两种离散值,则一个码元携带1比特(bit)信息。若码元可取四种离散值,则一个码元携带2比特信息。即一个码元携带的信息量n(bit)与码元的种类数N有如下关系:n=log2N
单位时间内在信道上传送的信息量(比特数)称为数据速率。在一定的波特率下提高速率的途径是用一个码元表示更多的比特数。如果把两比特编码为一个码元,则数据速率可成倍提高。
对此,我们有公式:
R=B log2N=2W log2N(b/s)
其中R表示数据速率,单位是每秒比特,简写为bps或b/s
数据速率和波特率是两个不同的概念。仅当码元取两个离散值时两者才相等。对于普通电话线路,带宽为3000HZ,最高波特率为6000Baud。而最高数据速率可随编码方式的不同而取不同的值。这些都是在无噪声的理想情况下的极限值。实际信道会受到各种噪声的干扰,因而远远达不到按尼奎斯特定理计算出的数据传送速率。香农(shannon)的研究表明,有噪声的极限数据速率可由下面的公式计算:
C =W log2(1+s/n)
这个公式叫做香农定理,其中W为信道带宽,S为信号的平均功率,N为噪声的平均功率,s/n叫做信噪比。由于在实际使用中S与N的比值太大,故常取其分贝数(db)。分贝与信噪比的关系为 : db=10lgs/n
例如当s/n为1000,信噪比为30db。这个公式与信号取的离散值无关,也就是说无论用什么方式调制,只要给定了信噪比,则单位时间内最大的信息传输量就确定了。例如信道带宽为3000HZ,信噪比为30db,则最大数据速率为
C=3000log2(1+1000)≈3000×9.97≈30000b/s
这是极限值,只有理论上的意义。实际上在3000HZ带宽的电话线上数据速率能达到9600b/s就很不错了。
综上所述,我们有两种带宽的概念,在模拟信道,带宽按照公式W=f2-f1 计算,例如CATV电缆的带宽为600HZ或1000HZ;数字信道的带宽为信道能够达到的最大数据速率,例如以太网的带宽为10MB/S或100MB/S,两者可通过香农定理互相转换。
相关区别
信道带宽
频段带宽是发送无线信号频率的标准。在常用的2.4-2.4835GHz频段上,每个信道的频段带宽为20MHz;前者工作的协议有b/g/n,后者有ac/a/n。
频率越高越容易失真,其中20MHz在11n的情况下能达到144Mbps(怎么计算的?)带宽,它穿透性较好,传输距离远(约100米左右);40MHz在11n的情况下能达到300Mbps带宽,穿透性稍差,传输距离近(约50米左右)。
信号带宽
信号带宽是指在自由空间(包括空气和真空)传播的射频频段的电磁波。
电磁波包含很多种类,按照频率从低到高的顺序排列为:无线电波、红外线、可见光、紫外线、X射线及γ射线。无线电波分布在3Hz到3000GHz的频率范围之间。在这个频谱内可以细划为12个波段频率越低,传播损耗越小,覆盖距离越远,绕射能力也越强。但是低频段的频率资源紧张,系统容量有限,因此低频段的无线电波主要应用于广播、电视、寻呼等系统。
高频段频率资源丰富,系统容量大。但是频率越高,传播损耗越大,覆盖距离越近,绕射能力越弱。
3. 什么是波特率
波特率不是数据传输速率,数据传输速率是比特率。 解析:波特率指单片机或计算机在串口通信时的速率。指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数,如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时的波特率为240Bd,比特率为10位*240个/秒=2400bps。
又比如每秒钟传送240个二进制位,这时的波特率为240Bd,比特率也是240bps。(但是一般调制速率大于波特率,比如曼彻斯特编码)。波特率,可以通俗的理解为一个设备在一秒钟内发送(或接收)了多少码元的数据。
它是对符号传输速率的一种度量,1波特即指每秒传输1个码元符号(通过不同的调制方式,可以在一个码元符号上负载多个bit位信息),1比特每秒是指每秒传输1比特(bit)。 单位“波特”本身就已经是代表每秒的调制数,以“波特每秒”(Baud per second)为单位是一种常见的错误。波特率有时候会同比特率混淆,实际上后者是对信息传输速率(传信率)的度量。波特率可以被理解为单位时间内传输码元符号的个数(传符号率),通过不同的调制方法可以在一个码元上负载多个比特信息。
4. 波特和波特率
比特率(Bitrate,变量Rbit)是单位时间内传输或处理的比特的数量。单位为bps(BitPerSecond),比特率越高,传送的数据越大。在电子通信领域,波特率(Baudrate)即调制速率,指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数。它是对符号传输速率的一种度量,1波特即指每秒传输1个符号。单位“波特”本身就已经是代表每秒的调制数,以“波特每秒”(Baudpersecond)为单位是一种常见的错误。波特率是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变的次数来表示,其单位是波特(Baud)。波特率与比特率的关系是比特率=波特率X单个调制状态对应的二进制位数。
5. 什么是波特率,最常用的波特率是多少?
.RS-232-C标准规定的数据传输速率为50、75、100、150、300、600、1200、2400、4800、9600、19200、38400波特。自定义随便只要可以达到。
2.UART串口,作为单片机最常用的通讯接口已经深入每一个嵌入式工程师的脑海。UART串口有着简单、实用的特性,嵌入式工程师常常用来将其作为调试系统的重要工具。UART串口的配置参数有很多,但是最常用,且需要修改的参数只有通讯波特速率这一个
6. 波特率 常用
意味着每分钟传送每分钟=960*60 = 57600个字节。
算法:
条件:波特率:9600 停止位:1 起始位:1 校验位:0
一个ASCII码=1个Byte
1Byte=8bit+2=10Bit
9600bit/(10) = 960Byte = 960个ASCII码/秒
每分钟=960*60 = 57600个字节
扩展资料:
常用波特率计数查找表
//建立查找表–比特率选择
reg [15:0]bps_max;//分频计数最大值
always @(posedge clk or negedge rst_n)
if(!rst_n)
bps_max
else begin
case (baud_set)
0: bps_max
1: bps_max
2: bps_max
3: bps_max
4: bps_max
default:bps_max
endcase
end
7. 什么叫波特率?
波特率有时候会同比特率混淆,实际上后者是对信息传输速率(传信率)的度量。波特率可以被理解为单位时间内传输码元符号的个数(传符号率),通过不同的调制方法可以在一个码元上负载多个比特信息。
波特率一般指的是调制解调器的通讯速度。波特率是指线路状态更改的次数。只有每个信号符合所传输数据的一位时,才等于每秒位数。
8. 常见的波特率有哪些
1、51单片机串口通讯波特率可以通过相应定时器寄存器设置成多个值,典型的波特率有2400、4800、9600、19200、38400和115200,其中最常用的是9600和15200。
2、具体使用哪个波特率,要看串口通信采用了哪一种通讯协议,像ModBUS之类的标准通信协议对波特率都有硬性的规定,不能随意设置。