单片机原理与控制技术优秀课件.ppt
《单片机原理与控制技术优秀课件.ppt》由会员分享,可在线阅读,更多相关《单片机原理与控制技术优秀课件.ppt(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机原理与控制技术第1页,本讲稿共42页串行通信串行通信优点优点:便于长距离传送便于长距离传送缺点缺点:传送速度较慢传送速度较慢计算机与外界信息交换称为计算机与外界信息交换称为通信通信。通信的通信的基本方式基本方式可分为并行通信和串行通信:可分为并行通信和串行通信:并行通信并行通信是数据的各位同时发送或同时接收;是数据的各位同时发送或同时接收;串行通信串行通信是数据的各位依次逐位发送或接收。是数据的各位依次逐位发送或接收。并行通信并行通信优点优点:传送速度快传送速度快缺点缺点:不便长距离传送不便长距离传送第2页,本讲稿共42页串行通信的基本特征是串行通信的基本特征是数据数据逐位顺序逐位顺序进
2、行传送进行传送串行通信的格式及约定(如:同步方式、通讯速串行通信的格式及约定(如:同步方式、通讯速率、数据块格式、信号电平率、数据块格式、信号电平等)不同,形成等)不同,形成了多种串行通信的协议与接口标准。了多种串行通信的协议与接口标准。常见的有:常见的有:通用异步收发器通用异步收发器(UARTUART)本课程介绍的串口本课程介绍的串口通用串行总线(通用串行总线(USBUSB)I I2 2C C总线总线CANCAN总线总线SPISPI总线总线RS-485RS-485,RS-232CRS-232C,RS422ARS422A标准标准等等等等第3页,本讲稿共42页异异步步通通信信对对硬硬件件要要求求
3、较较低低,实实现现起起来来比比较较简简单单、灵灵活活,适适用用于于数数据据的的随随机机发发送送/接接收收,但但因因每每个个字字节节都都要要建建立立一一次次同同步步,即即每每个个字字符符都都要要额额外外附附加加两两位位,所所以以工工作作速速度度较较低低,在在单单片片机机中中主主要要采采用用异异步步通通信信方式。方式。6-1 6-1 串行通信概述串行通信概述一、一、异步通信和同步通信异步通信和同步通信串行通信按同步方式可分为异步通信和同步通信。串行通信按同步方式可分为异步通信和同步通信。1、异步通信异步通信异步通信依靠起始位、停止位保持通信同步。异步通信依靠起始位、停止位保持通信同步。异步通信数据
4、传送按帧传输,异步通信数据传送按帧传输,一帧数据包含一帧数据包含起始位、数据位、校验位和停止位起始位、数据位、校验位和停止位。第4页,本讲稿共42页同同步步通通信信传传输输速速度度较较快快,但但要要求求有有准准确确的的时时钟钟来来实实现现收收发发双双方方的的严严格格同同步步,对对硬硬件件要要求求较高,适用于成批数据传送。较高,适用于成批数据传送。2、同步通信同步通信同步通信依靠同步字符保持通信同步。同步通信依靠同步字符保持通信同步。同步通信是同步通信是由由1 12 2个同步字符和多字节个同步字符和多字节数据位组成数据位组成,同步字符作为起始位以触发同步,同步字符作为起始位以触发同步时钟开始发送
5、或接收数据;多字节数据之间不时钟开始发送或接收数据;多字节数据之间不允许有空隙,每位占用的时间相等;空闲位需允许有空隙,每位占用的时间相等;空闲位需发送同步字符。发送同步字符。第5页,本讲稿共42页波特率的倒数即为每位传输所需的时间。波特率的倒数即为每位传输所需的时间。相相互互通通信信的的甲甲乙乙双双方方必必须须具具有有相相同同的的波波特特率,否则无法成功地完成串行数据通信。率,否则无法成功地完成串行数据通信。二、二、串行通信波特率串行通信波特率波特率波特率bps(bit per second)bps(bit per second)定义定义:每秒传输数据的位数,即:每秒传输数据的位数,即:1波
6、特波特=1位位/秒(秒(1bps1bps)第6页,本讲稿共42页三、三、串行通信的制式串行通信的制式 串串行行通通信信按按照照数数据据传传送送方方向向可可分分为为三三种种制制式:式:单工制式单工制式是指甲乙双方通信时是指甲乙双方通信时只能单向传只能单向传送数据送数据,发送方和接收方固定。,发送方和接收方固定。1 1、单工制式(单工制式(SimplexSimplex)第7页,本讲稿共42页半半双双工工制制式式是是指指通通信信双双方方都都具具有有发发送送器器和和接接收收器器,既既可可发发送送也也可可接接收收,但但不不能能同同时时接接收收和和发发送,送,发送时不能接收,接收时不能发送。发送时不能接收
7、,接收时不能发送。2、半双工制式(半双工制式(Half DuplexHalf Duplex)第8页,本讲稿共42页 全全双双工工制制式式是是指指通通信信双双方方均均设设有有发发送送器器和和接接收收器器,并并且且信信道道划划分分为为发发送送信信道道和和接接收收信信道道,因因此此全全双双工工制制式式可可实实现现甲甲乙乙双双方方同同时时发发送送和和接接收收数数据据,发送时能接收,接收时也能发送。,发送时能接收,接收时也能发送。3 3、全双工制式(全双工制式(Full DuplexFull Duplex)第9页,本讲稿共42页四、四、串行通信的校验串行通信的校验3、循环冗余码校验循环冗余码校验(Cyc
8、lic Redundancy Check,Cyclic Redundancy Check,简称简称CRCCRC)1、奇偶校验奇偶校验2、累加和校验累加和校验累加和校验累加和校验是指发送方将所发送的数据块求和,并是指发送方将所发送的数据块求和,并将将“校验和校验和”附加到数据块末尾。接收方接收数据附加到数据块末尾。接收方接收数据时也是先对数据块求和,将所得结果与发送方的时也是先对数据块求和,将所得结果与发送方的“校验和校验和”进行比较,相符则无差错,否则即出现了进行比较,相符则无差错,否则即出现了差错。差错。“校验和校验和”的加运算可用逻辑加,也可用算的加运算可用逻辑加,也可用算术加。累加和校验
9、术加。累加和校验的缺点是无法检验出字节位序的缺点是无法检验出字节位序(或或1 1、0 0位序不同位序不同)的错误。的错误。循环冗余码校验的基本原理循环冗余码校验的基本原理是将一个数据块看成一是将一个数据块看成一个位数很长的二进制数,然后用一个特定的数去除个位数很长的二进制数,然后用一个特定的数去除它,将余数作校验码附在数据块后一起发送。接收它,将余数作校验码附在数据块后一起发送。接收端收到该数据块和校验码后,进行同样的运算来校端收到该数据块和校验码后,进行同样的运算来校验传送是否出错。目前验传送是否出错。目前CRC已广泛用于数据存储和已广泛用于数据存储和数据通信中,数据通信中,并在国际上形成规
10、范,已有不少现成并在国际上形成规范,已有不少现成的的CRCCRC软件算法。软件算法。第10页,本讲稿共42页 80C5180C51系系列列单单片片机机有有一一个个全全双双工工的的串串行行口口,这这个个口口既既可可以以用用于于网网络络通通信信,也也可可以以实实现现串串行行异异步步通通信信,还还可可以以作作为同步移位寄存器使用。为同步移位寄存器使用。6-2 80C516-2 80C51串行口串行口第11页,本讲稿共42页51单片机的串行接口SBUF(发)(发)SBUF(收)(收)发送控制器发送控制器TI接收控制器接收控制器RI移位寄存器移位寄存器波波特特率率发发生生器器T1 1A累累加加器器(门门
11、)移位寄存器移位寄存器RxDTxD去申请中断去申请中断引脚引脚引脚引脚CPU内内部部第12页,本讲稿共42页发发送送时时,只只需需将将发发送送数数据据输输入入SBUFSBUF,CPUCPU将将自自动动启启动动和和完完成成串串行行数数据的发送;据的发送;接接收收时时,CPUCPU将将自自动动把把接接收收到到的的数数据据存存入入SBUFSBUF,用用户户只只需需从从SBUFSBUF中读出接收数据中读出接收数据。一、一、串行口特殊功能寄存器串行口特殊功能寄存器1 1、串行数据缓冲器串行数据缓冲器SBUFSBUF 在在逻辑上逻辑上只有一个只有一个,既表示发送寄存器,又表示接收寄存器,既表示发送寄存器,
12、又表示接收寄存器,具有同一个单元地址具有同一个单元地址99H99H,用,用同一寄存器名同一寄存器名SBUFSBUF。在在物理上有两个物理上有两个,一个是发送缓冲寄存器,另一个是接收缓冲寄存,一个是发送缓冲寄存器,另一个是接收缓冲寄存器。器。指令指令 MOV SBUFMOV SBUF,A A 启动一次数据发送启动一次数据发送,可向可向SBUFSBUF 再发送下一个数再发送下一个数指令指令 MOV AMOV A,SBUFSBUF 完成一次数据接收完成一次数据接收,SBUF,SBUF可再可再 接收下一个数接收下一个数第13页,本讲稿共42页2 2、串行控制寄存器串行控制寄存器SCONSCONSCON
13、SCOND7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0位名称位名称SM0SM0SM1SM1SM2SM2RENRENTB8TB8RB8RB8TITIRIRI位地址位地址9FH9FH9EH9EH9DH9DH9CH9CH9BH9BH9AH9AH99H99H98H98H功能功能工作方式工作方式选择选择多机通信多机通信控制控制接收接收 允许允许发送发送 第第9 9位位接收接收 第第9 9位位发送发送 中断中断接收接收 中断中断 SM0 SM1SM0 SM1 串行口串行口工作方式工作方式选择位。选择位。SM2SM2 多机通信控制位。多机通信控制位。RENREN 允许允许接收控制位。接收控
14、制位。REN=1REN=1,允许接收。,允许接收。TB8TB8 方式方式2 2和方式和方式3 3中要发送的第中要发送的第9 9位数据。位数据。RB8RB8 方式方式2 2和方式和方式3 3中要接收的第中要接收的第9 9位数据。位数据。TITI 发送发送中断标志。中断标志。RIRI 接收接收中断标志。中断标志。第14页,本讲稿共42页 SM0 SM1SM0 SM1串行口工作方式选择位。其状态组合所对应的工作串行口工作方式选择位。其状态组合所对应的工作方式如表方式如表6-26-2所示。所示。SM0 SM1工作方式工作方式 功能说明功能说明 00 0同步移位寄存器输入同步移位寄存器输入/输出输出,波
15、特率波特率固定固定为为fosc/12 01 18位位UART;波特率;波特率可变可变(TI溢出率溢出率/n,n=32或或16)10 29位位UART,波特率,波特率固定固定为为fosc/n,(n=64或或32)11 39位位UART,波特率,波特率可变可变(T1溢出率溢出率/n,n=32或或16)SM2-多机通信控制位。在方式多机通信控制位。在方式2和方式和方式3中,若中,若SM2=1,且,且RB8(接收到的第接收到的第9位数据位数据)=1时,将接收到的前时,将接收到的前8位数据送入位数据送入SBUF,并置位并置位RI产生中断请求;否则,将接收到的产生中断请求;否则,将接收到的8位数据丢弃。而
16、当位数据丢弃。而当SM2=0时,则不论第时,则不论第9位数据为位数据为0还是为还是为1,都将前,都将前8位数据装入位数据装入SBUF中,并产生中断请求。中,并产生中断请求。在方式在方式0 0时,时,SM2SM2必须为必须为0 0。第15页,本讲稿共42页REN-允许接收控制位。允许接收控制位。REN位用于对串行数据位用于对串行数据的接收进行控制:的接收进行控制:REN=0,禁止接收;,禁止接收;REN=1,允许,允许接收。该位由软件置位或复位。接收。该位由软件置位或复位。TB8-方式方式2和方式和方式3中要发送的第中要发送的第9位数据。在方位数据。在方式式2和方式和方式3时,时,TB8是发送的
17、第是发送的第9位数据。在多机通信位数据。在多机通信中,以中,以TB8位的状态表示主机发送的是地址还是数据:位的状态表示主机发送的是地址还是数据:TB8=0表示数据,表示数据,TB8=1表示地址。该位由软件置位表示地址。该位由软件置位或复位。或复位。TB8还可用于奇偶校验位。还可用于奇偶校验位。RB8-方式方式2和方式和方式3中要接收的第中要接收的第9位数据。在方位数据。在方式式2或方式或方式3时,时,RB8存放接收到的第存放接收到的第9位数据。位数据。第16页,本讲稿共42页TI-发送中断标志。当方式发送中断标志。当方式0时,发送完第时,发送完第8位位数据后,该位由硬件置位。在其他方式下,遇发
18、送数据后,该位由硬件置位。在其他方式下,遇发送停止位时,该位由硬件置位。因此停止位时,该位由硬件置位。因此TI=1,表示帧发,表示帧发送结束,可软件查询送结束,可软件查询TI位标志,也可以请求中断。位标志,也可以请求中断。TI位必须由软件清位必须由软件清0。RI-接收中断标志。当方式接收中断标志。当方式0时,接收完第时,接收完第8位位数据后,该位由硬件置位。在其他方式下,当接收数据后,该位由硬件置位。在其他方式下,当接收到停止位时,该位由硬件置位。因此到停止位时,该位由硬件置位。因此RI=1,表示帧,表示帧接收结束,可软件查询接收结束,可软件查询RIRI位标志,也可以请求中断。位标志,也可以请
19、求中断。RIRI位也必须由软件清位也必须由软件清0 0。接收接收/发送数据发送数据,无论是否采用中断方式工作无论是否采用中断方式工作,每接每接收收/发送一个数据都必须用指令对发送一个数据都必须用指令对 RI/TIRI/TI 清清0 0,以以备下一次收备下一次收/发。发。第17页,本讲稿共42页3 3、电源控制寄存器电源控制寄存器PCONPCONPCONPCOND7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0位名称位名称SMODSMODGF1GF1GF0GF0PDPDIDLIDLSMODSMOD=1=1,串行口波特率加倍。串行口波特率加倍。PCONPCON寄存器不能进行位寻址。寄
20、存器不能进行位寻址。SMODSMOD:在串行口工作方式:在串行口工作方式 1 1、2 2、3 3 中,是中,是波特波特率加倍位率加倍位 =1=1 时,波特率加倍时,波特率加倍 =0=0 时,波特率不加倍。时,波特率不加倍。(在在PCONPCON中只有这一个位与串口有关中只有这一个位与串口有关)第18页,本讲稿共42页二、二、串行工作方式串行工作方式 80C5180C51串行通信共有串行通信共有4 4种种工作方式,由串行控制寄存器工作方式,由串行控制寄存器SCONSCON中中SM0 SM0 SM1SM1决定。决定。1 1、串行工作方式、串行工作方式0 0(同步移位寄存器工作方式)(同步移位寄存器
21、工作方式)以以RXDRXD(P3.0P3.0)端作为数据移位的输入)端作为数据移位的输入/输出端,输出端,以以TXDTXD(P3.1P3.1)端输出移位脉冲。)端输出移位脉冲。移位数据的发送和接收以移位数据的发送和接收以8 8位为一帧,位为一帧,不设不设起始位和停止位,无论起始位和停止位,无论输入输入/输出,均低位在前高位在后。输出,均低位在前高位在后。其帧格式为:其帧格式为:D0D0D1D1D2D2D3D3D4D4D5D5D6D6D7D7 方式方式0 0可将可将串行串行输入输出数据输入输出数据转换成转换成并行并行输入输出数据。输入输出数据。第19页,本讲稿共42页数据发送数据发送 在在移位时
22、钟脉冲(移位时钟脉冲(TXDTXD)的控制下,数据从串行口的控制下,数据从串行口RXDRXD端逐位端逐位移入移入74HC164 S74HC164 SA A、S SB B端。端。当当8 8位数据全部移出后,位数据全部移出后,SCONSCON寄存器的寄存器的TITI位被自动置位被自动置1 1。其后其后74HC16474HC164的内容即可并行输出。的内容即可并行输出。74HC164 CLR74HC164 CLR为清为清0 0端,输出时端,输出时CLRCLR必须为必须为1 1,否则,否则74HC164 Q074HC164 Q0Q7Q7输出为输出为0 0。串串行行口口作作为为并并行行输输出出口口使使用
23、用时时,要要有有“串串入入并并出出”的的移移位寄存器配合。位寄存器配合。(例如例如CD4094或或74HCl64)第20页,本讲稿共42页(2)(2)数据接收数据接收 串串行行口口作作为为并并行行输输入入口口使使用用时时,要要有有“并并入入串串出出”的的移移位位寄寄存器配合。存器配合。(例如例如CD4014或或74HCl65)74HC165 74HC165 S/LS/L端端为为移移位位/置置入入端端,当当S/L=0S/L=0时时,从从Q0Q0Q7Q7并并行行置置入入数数据据,当当S/L=1S/L=1时时,允允许许从从Q QH H端端移移出出数数据据。在在80C5180C51串串行行控控制制寄寄
24、存存器器SCONSCON中中的的REN=1REN=1时时,TXDTXD端端发发出出移移位位时时钟钟脉脉冲冲,从从RXDRXD端端串串行行输输入入8 8位位数数据据。当当接接收收到到第第8 8位位数数据据D7D7后后,置置位位中中断断标标志志RIRI,表示一帧数据接收完成。,表示一帧数据接收完成。第21页,本讲稿共42页 波特率波特率:方式方式0 0 波特率固定波特率固定,为单片机晶振频率的十二分,为单片机晶振频率的十二分之一。即之一。即一个机器周期进行一次移位。一个机器周期进行一次移位。应用举例应用举例【例例6-16-1】电路如图所示,试编制程序按下列顺序要求每隔电路如图所示,试编制程序按下列
25、顺序要求每隔0.50.5秒秒循环操作。循环操作。从右向左依次点亮,每从右向左依次点亮,每次亮一个;次亮一个;从左向右依次点亮,每从左向右依次点亮,每次增加一个,次增加一个,直至全直至全部点亮;部点亮;返回从返回从不断循环。不断循环。8个发光二极管全部点亮;个发光二极管全部点亮;从左向右依次暗灭,每次减少一个,直至全灭;从左向右依次暗灭,每次减少一个,直至全灭;从左向右依次点亮,从左向右依次点亮,每次亮一个;每次亮一个;解:编程如下:解:编程如下:第22页,本讲稿共42页LIGHT:MOV SCON,#00H LIGHT:MOV SCON,#00H ;串行口方式串行口方式0 0 CLR ES C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 控制 技术 优秀 课件
限制150内