(本科)V3第7章单片机的串行通信接口.ppt
《(本科)V3第7章单片机的串行通信接口.ppt》由会员分享,可在线阅读,更多相关《(本科)V3第7章单片机的串行通信接口.ppt(74页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、v课程主讲人:vV3V3第第7 7章单片机的串行通信接口章单片机的串行通信接口2022-5-122022-5-122第第7 7章章 单片机的串行通信接口单片机的串行通信接口计算机串行通信基础计算机串行通信基础7.180C5180C51单片机的串行口单片机的串行口7.280C5180C51单片机的串行口应用单片机的串行口应用7.3应用案例应用案例单片机双机通信单片机双机通信7.42022-5-122022-5-1237.17.1 计算机串行通信基础计算机串行通信基础 并行通信并行通信通信:并行通信与串行通信通信:并行通信与串行通信 特点特点:传送控制简单、速度快,但传输线较多,成本高。:传送控制
2、简单、速度快,但传输线较多,成本高。 2022-5-122022-5-124v 串行通信串行通信特点特点:传送控制复杂、速度慢,传输线少,成本低:传送控制复杂、速度慢,传输线少,成本低 2022-5-122022-5-125 异步通信与同步通信异步通信与同步通信收、发设备时钟独立,以字符收、发设备时钟独立,以字符( (帧帧) )为单位传输为单位传输 7.1.1 7.1.1 串行通信的基本概念串行通信的基本概念v 异步通信异步通信 2022-5-122022-5-126 异步通信帧格式异步通信帧格式n 起始位(位);起始位(位);n 数据位(位);数据位(位);n 奇偶校验位(位,可无校验位);
3、奇偶校验位(位,可无校验位);n 停止位(位)。停止位(位)。 特点特点n 易于实现易于实现n 效率不高效率不高 v 同步通信同步通信(发、收时钟直接连接,效率高。板内元件间的(发、收时钟直接连接,效率高。板内元件间的SPI接口)接口) 2022-5-122022-5-127 串行通信的传输方向串行通信的传输方向v 单工单工 v 半双工半双工 v 全双工全双工 80C5180C51有有1 1个全双工串行口个全双工串行口 2022-5-122022-5-128 信号的调制与解调信号的调制与解调DTEDTE:数据:数据终端终端设备设备DCEDCE:数据:数据通信通信设备设备 调制解调器调制解调器v
4、 调制调制v 解调解调 2022-5-122022-5-129 串行通信的错误校验串行通信的错误校验v奇偶校验奇偶校验 发送字符时发送字符时,数据位尾随,数据位尾随1 1位奇偶校验位(位奇偶校验位(1 1或或0 0)。)。奇校验时奇校验时,数据中,数据中“1 1”的个数与校的个数与校验位验位“1 1”的个数之和应为奇数;的个数之和应为奇数;偶校验时偶校验时,数据中数据中“1 1”的个数与校验位的个数与校验位“1 1”的个数之和的个数之和应为偶数。应为偶数。接收字符时接收字符时,对,对“1 1”的个数进行校验,若发的个数进行校验,若发现不一致,则说明传输数据过程中出现了差现不一致,则说明传输数据
5、过程中出现了差错。错。 2022-5-122022-5-1210v代码和校验代码和校验 发送方发送方将所发数据块求和(或各字节异或),将所发数据块求和(或各字节异或),产生的产生的校验和字节校验和字节附加到数据块的末尾。附加到数据块的末尾。 接收方接收方在接收数据时要对在接收数据时要对数据块(除校验字节数据块(除校验字节外)求和(或各字节异或),外)求和(或各字节异或),将所得的结果与将所得的结果与收到的收到的“校验和校验和”进行比较,相符则无差错,进行比较,相符则无差错,否则就认为传送过程出现了差错。否则就认为传送过程出现了差错。 2022-5-122022-5-1211 传输速率与传输距离
6、传输速率与传输距离v传输速率传输速率比特率比特率:每秒钟传送的信息量。单位:位秒(:每秒钟传送的信息量。单位:位秒(bpsbps) 波特率波特率:每秒钟传送码元数目,单位:波特(:每秒钟传送码元数目,单位:波特(Baud) 基带传输基带传输(每个码元带有(每个码元带有“1 1”或或“0 0”这这1 bit1 bit信息,信息,传码率与传信率相同),传码率与传信率相同),波特率和比特率是相同的波特率和比特率是相同的。 常用波特率为:常用波特率为:24002400、48004800、 96009600、14.4K14.4K、19.2K19.2K等等 v传输距离与传输速率的关系传输距离与传输速率的关
7、系传输距离随波特率的增加而减小。传输距离随波特率的增加而减小。 2022-5-122022-5-1212 机械特性7.1.2 7.1.2 串行通信接口标准串行通信接口标准RS-232CRS-232C定义的是定义的是DTEDTE与与DCEDCE间的接口标准。间的接口标准。 DB-25DB-25(阳头)连接器(阳头)连接器 DB-9DB-9(阳头)连接器(阳头)连接器 阳头通常用于计算机侧,阴头用于连接线侧阳头通常用于计算机侧,阴头用于连接线侧 2022-5-122022-5-1213 功能特性功能特性插针序号插针序号信号名称信号名称功能功能信号方向信号方向1 PGND保护接地保护接地 2(3)T
8、XD发送数据(串行输出)发送数据(串行输出)DTEDCE 3(2)RXD接收数据(串行输入)接收数据(串行输入)DTEDCE 4(7)RTS请求发送请求发送DTEDCE 5(8)CTS允许发送允许发送DTEDCE 6(6)DSRDCE就绪(数据建立就绪)就绪(数据建立就绪)DTEDCE 7(5) SGND信号接地信号接地 8(1)DCD载波检测载波检测DTEDCE 20(4)DTRDTE就绪(数据终端准备就绪)就绪(数据终端准备就绪)DTEDCE 22(9) RI振铃指示振铃指示DTEDCE2022-5-122022-5-1214 电气特性电气特性RS-232CRS-232C采用负逻辑电平,规
9、定(采用负逻辑电平,规定(-3-3-25V-25V)为逻辑)为逻辑“1 1”,(+3+3+25V+25V)为逻辑)为逻辑“0 0”。-3V-3V+3V+3V是未定义的过渡区。是未定义的过渡区。试比较:试比较: 电平转换电路(如电平转换电路(如MAX232MAX232)。)。 2022-5-122022-5-1215 过程特性过程特性v远远程通信,需要调制解调器程通信,需要调制解调器 2022-5-122022-5-1216v近近程通信,不需要调制解调器程通信,不需要调制解调器 无联络线方式无联络线方式 联络线短接(伪连接)方式联络线短接(伪连接)方式 2022-5-122022-5-1217
10、RS-232CRS-232C电平与电平与TTLTTL电平转换驱动电路电平转换驱动电路v早期常用早期常用MC1488MC1488、MC1489MC1489 v近期常用近期常用MAXM232MAXM232: 片内带有自升压电路片内带有自升压电路 仅需仅需+5V+5V电源电源 内含内含2 2个发送器,个发送器,2 2个接收器个接收器 2022-5-122022-5-1218 采用采用RS-232CRS-232C接口存在的问题接口存在的问题 v传输距离短、速率低传输距离短、速率低 通常不超过通常不超过1515米,速率米,速率20Kbps20Kbps v有电平偏移有电平偏移 RS-232RS-232收发
11、共地,地电流会使电平偏移出现逻辑错误。收发共地,地电流会使电平偏移出现逻辑错误。 v抗干扰能力差抗干扰能力差 RS-232RS-232常用单端输入,易混入干扰。(常用单端输入,易混入干扰。(故用大摆幅故用大摆幅) 新标准新标准RS-485RS-485改善了传输特性,应用广泛!改善了传输特性,应用广泛! 2022-5-122022-5-12197.27.2 80C5180C51单片机的串行口单片机的串行口6.2.1 80C516.2.1 80C51串行口的结构串行口的结构 1 1个个全双工全双工串口:通信串口:通信或或接口扩展接口扩展 接收发送缓冲器接收发送缓冲器逻辑同名、物理分开;逻辑同名、物
12、理分开;接收双缓冲。接收双缓冲。 2022-5-122022-5-12207.2.2 80C517.2.2 80C51串行口的控制寄存器串行口的控制寄存器v 串行口控制寄存器串行口控制寄存器SCONSCONv SM0SM0和和SM1SM1:工作方式选择位:工作方式选择位76543210SCONSM0SM1SM2RENTB8RB8TIRI字节地址:字节地址:98HSM0SM1方方 式式说说 明明波特率波特率000移位寄存器移位寄存器fosc/1201110位位UART(8位数据)位数据)可变可变10211位位UART(9位数据)位数据) fosc/64或或fosc/3211311位位UART(9
13、位数据)位数据)可变可变2022-5-122022-5-1221vSM2SM2:多机通信控制位:多机通信控制位SM2=1SM2=1时时, ,接收机处于接收机处于地址帧地址帧筛选筛选状态。若状态。若RB8RB81 1,该地址帧信息可进入,该地址帧信息可进入SBUFSBUF,并使,并使RIRI为为1 1,进,进而在中断服务中再进行地址号比较而在中断服务中再进行地址号比较; ;若若RB8RB80 0,该帧不是地址帧,应丢掉,且保持该帧不是地址帧,应丢掉,且保持RI=0RI=0。 SM2=0SM2=0时,接收机处于时,接收机处于地址帧筛选被禁止地址帧筛选被禁止状态。状态。不论收到的不论收到的RB8RB
14、8为为0 0或或1 1,均可以使收到的信息进,均可以使收到的信息进入入SBUFSBUF,并使,并使RI=1RI=1。此时的此时的RB8RB8通常为校验位通常为校验位。 v RENREN:串行接收使能位,软件置:串行接收使能位,软件置1 1时,启动接收过程时,启动接收过程2022-5-122022-5-1222vTB8TB8:多机方式发送的第:多机方式发送的第9 9位位多机方式的地址多机方式的地址/ /数据帧标志。也可作为奇偶校验位。数据帧标志。也可作为奇偶校验位。 vRB8RB8:多机方式接收的第:多机方式接收的第9 9位位多机方式的地址多机方式的地址/ /数据帧标志。也可作为奇偶校验位。数据
15、帧标志。也可作为奇偶校验位。 vTITI:发送中断标志位,要由软件清:发送中断标志位,要由软件清0 0vRIRI:接收中断标志位,要由软件清:接收中断标志位,要由软件清0 02022-5-122022-5-1223v 电源控制寄存器电源控制寄存器PCON PCON v SMODSMOD:波特率倍增位。在串行口方式:波特率倍增位。在串行口方式1 1、方式、方式2 2、方式、方式3 3时,波特率与时,波特率与SMODSMOD有关,当有关,当SMOD=1SMOD=1时,波特率提高一倍。时,波特率提高一倍。复位时,复位时,SMOD=0SMOD=0。 76543210PCONSMOD字节地址:字节地址:
16、97H2022-5-122022-5-12247.2.3 80C517.2.3 80C51串行口的工作方式串行口的工作方式v 方式方式0 0:同步移位寄存器,用于扩展并行口:同步移位寄存器,用于扩展并行口 vRXDRXD:输入:输入或或输出引脚输出引脚 vTXDTXD:移位脉冲输出:移位脉冲输出v接收和方式都是接收和方式都是8 8位位v波特率固定为:波特率固定为:fosc/12fosc/122022-5-122022-5-1225v 数据输数据输出出: CLRCLR用于对用于对74LS16474LS164清清0 0 2022-5-122022-5-1226v 数据输数据输入入: 2022-5-
17、122022-5-1227v 方式方式0 0应用示例应用示例方式方式0 0输出时,串行口可以外接串行输入输出时,串行口可以外接串行输入并行输出的并行输出的移位寄存器(如移位寄存器(如74HC16474HC164、CD4094CD4094等)等) 图图7.14 7.14 方式方式0 0输出电路输出电路 2022-5-122022-5-1228【例【例7-17-1】方式】方式0 0输出应用。图输出应用。图7.147.14所示电路,通过所示电路,通过74HC16474HC164的输出来控制的输出来控制8 8个个LEDLED发光二极管。编写程序控制发光二极管。编写程序控制8 8个个LEDLED发光二极
18、管流水点亮。发光二极管流水点亮。C51语言参考程序如下:语言参考程序如下:#include#define uchar unsigned char#define uint unsigned int void DelayMs(uint n) /延时函数延时函数 uchar j; while(n-) for(j=0;j 7) + (a 1); 2022-5-122022-5-1230【例【例7-27-2】方式】方式0 0输入应用。如图输入应用。如图7.157.15所示,所示,8 8位开关作为位开关作为74HC16574HC165的并行输入,将开关状态读入到单片机内部。的并行输入,将开关状态读入到单片
19、机内部。2022-5-122022-5-1231C51语言参考程序如下:语言参考程序如下:#include #includesbit P1_0= P10;uchar Rec_Byte;void main(void ) SCON =0 x10; /串行方式串行方式0,允许输入允许输入 P1_0=0; /74HC165读入数据读入数据 _nop( )_; P1_0=1; /74HC165向串口移入数据向串口移入数据 while(!RI); /等待输入等待输入 RI=0; /标志清标志清0 Rec_Byte=SBUF; 2022-5-122022-5-1232v 方式方式1 1:1010位帧,用于位
20、帧,用于双双机通信机通信 v 起始位:起始位:1 1位位 v 数据位:数据位:8 8位位v 停止位:停止位:1 1位位2022-5-122022-5-1233v 串行串行发送发送:(写:(写SBUFSBUF启动发送过程)启动发送过程) v 串行串行接收接收:( (置置REN=1REN=1启动接收过程启动接收过程) ) 2022-5-122022-5-1234v 方式方式2 2和方式和方式3 3:1111位帧,用于位帧,用于多多机通信机通信 v 起始位:起始位:1 1位位 v 数据位:数据位:9 9位位v 停止位:停止位:1 1位位2022-5-122022-5-1235v 串行串行发送发送:(
21、写:(写SBUFSBUF启动发送过程)启动发送过程) v 串行串行接收接收:( (置置REN=1REN=1启动接收过程启动接收过程) ) 2022-5-122022-5-12367.2.4 80C517.2.4 80C51波特率确定与初始化步骤波特率确定与初始化步骤v 波特率的确定波特率的确定 v波特率的计算波特率的计算固定固定波特率:波特率: 方式方式0 0波特率波特率= fosc/12= fosc/12 方式方式2 2波特率波特率= =(2 2SMODSMOD/64/64)* * foscfosc可变可变波特率:波特率: 方式方式1 1波特率波特率= =(2 2SMODSMOD/32/32
22、)* *(T1T1溢出率溢出率) 方式方式3 3波特率波特率= =(2 2SMODSMOD/32/32)* *(T1T1溢出率溢出率) T1 T1 溢出率溢出率 = fosc /12= fosc /12256 256 (TH1TH1)2022-5-122022-5-1237v 波特率的选择波特率的选择 波特率要选择波特率要选择标称值标称值,由于,由于TH1TH1的初值是整数,为了的初值是整数,为了减小波特率计算误差,晶振频率要选为减小波特率计算误差,晶振频率要选为11.059211.0592MHzMHz。 方式方式1 1和方式和方式3 3波特率与波特率与TH1TH1初值的对应关系:初值的对应关
23、系: 波特率波特率/(b/s)19.2 k9600480024001200TH1初值初值FDHFDHFAHF4HE8HSMOD100002022-5-122022-5-1238v 串行口初始化步骤串行口初始化步骤 v确定确定T1T1的工作方式(的工作方式(TMODTMOD)v计算计算T1T1的初值,的初值,装载装载TH1TH1、TL1TL1v启动启动T1T1(置位置位TR1TR1)v确定串行口工作方式(确定串行口工作方式(SCONSCON)v串口中断设置(串口中断设置(IEIE、IPIP)2022-5-122022-5-12397.37.3 80C5180C51单片机的串行口应用单片机的串行口
24、应用单片机与单片机间的通信单片机与单片机间的通信v硬件连接硬件连接v 近程连接近程连接(直连)(直连)v 远程连接远程连接( (电平转换电平转换) )图图7.22 7.22 近程与近程与远程连接的电路远程连接的电路原理图原理图2022-5-122022-5-1240v 电平转换器件与接线电平转换器件与接线2022-5-122022-5-1241v方式方式1 1应用举例应用举例【例【例7-37-3】设两台单片机进行串行通信,连接如图】设两台单片机进行串行通信,连接如图7.227.22所所示。示。A A单片机发送数据,单片机发送数据,B B单片机接收数据,单片机接收数据,A A单片机将字单片机将字
25、符串符串“A-microcomputer”A-microcomputer”发送给发送给B B单片机接收,单片机接收,B B单片机单片机将字符串存储到其内部将字符串存储到其内部RAM50HRAM50H开始的存储单元。开始的存储单元。v A A单片机和单片机和B B单片机串行口采用方式单片机串行口采用方式1 1进行通信,每帧信息进行通信,每帧信息为为1010位;波特率为位;波特率为96009600波特,波特,T1T1工作在定时器方式工作在定时器方式2 2,振,振荡频率选用荡频率选用11.0592MHZ11.0592MHZ,查表,查表7.37.3可得可得TH1=TL1=FDHTH1=TL1=FDH,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科 V3 单片机 串行 通信 接口
限制150内