单片机原理及应用系统设计第8章--串行口通信课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《单片机原理及应用系统设计第8章--串行口通信课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 系统 设计 串行口 通信 课件
- 资源描述:
-
1、第8章 串行口通信单片机原理及应用系统设计8.1 8.1 串行通信基础串行通信基础 第八章第八章 串行口通信串行口通信 常用串行口通信方式有两种:常用串行口通信方式有两种:并行通信和串行通信并行通信和串行通信。并行通信是通过多条数据线同时传送数据的每一位,如图并行通信是通过多条数据线同时传送数据的每一位,如图8-18-1所示。其所示。其特点是:传送速度快,但所需数据线多,适用于近距离通信。特点是:传送速度快,但所需数据线多,适用于近距离通信。串行通信是通过单条数据线一位一位按顺序传送数据,如图串行通信是通过单条数据线一位一位按顺序传送数据,如图8-28-2所示。所示。其特点是:传送速度慢,但仅
2、需一条数据线,故适用于远距离通信。其特点是:传送速度慢,但仅需一条数据线,故适用于远距离通信。串行通信有两种方式:串行通信有两种方式:异步串行通信和同步串行通信异步串行通信和同步串行通信。第八章第八章 串行口通信串行口通信1 1串行通信的分类串行通信的分类(1 1)同步通信)同步通信 同步通信传送信息的位数几乎不受限制,一次通信传输的数同步通信传送信息的位数几乎不受限制,一次通信传输的数据有几十到几千个字节,通信效率高,但在通信中必须始终据有几十到几千个字节,通信效率高,但在通信中必须始终保持精确的同步时钟,即收发双方要严格的同步(常用的做保持精确的同步时钟,即收发双方要严格的同步(常用的做法
3、是两个设备使用同一个时钟源)。法是两个设备使用同一个时钟源)。同步通信的字符帧结构由同步字符、数据字符和校验字符三同步通信的字符帧结构由同步字符、数据字符和校验字符三部分组成。部分组成。其中,同步字符采用统一的标准格式,也可以由用户约定。其中,同步字符采用统一的标准格式,也可以由用户约定。用于同一电路板内各元件之间数据传送的用于同一电路板内各元件之间数据传送的SPISPI接口就是典型接口就是典型的同步通信接口。的同步通信接口。(2 2)异步通信)异步通信 异步通信是异步通信是以字符为单位组成字符帧进行数据传输的以字符为单位组成字符帧进行数据传输的,字符,字符之间没有固定的时间间隔要求,而每个字
4、符中的各位则以固之间没有固定的时间间隔要求,而每个字符中的各位则以固定的时间传送。定的时间传送。收发双方可以由各自的时钟来控制数据的发送和接收。这两收发双方可以由各自的时钟来控制数据的发送和接收。这两个时钟源彼此独立,互不同步,但要求传送速率一致。个时钟源彼此独立,互不同步,但要求传送速率一致。收发双方依靠字符帧格式来协调数据的发送和接收。具体来收发双方依靠字符帧格式来协调数据的发送和接收。具体来说就是,在一个有效字符正式发送之前,发送方先发送一个说就是,在一个有效字符正式发送之前,发送方先发送一个起始位,然后发送有效字符位,在字符结束时再发送一个停起始位,然后发送有效字符位,在字符结束时再发
5、送一个停止位,起始位至停止位构成一帧。止位,起始位至停止位构成一帧。停止位至下一个起始位之间是不定长的空闲位,并且规定停止位至下一个起始位之间是不定长的空闲位,并且规定起始位为低电平起始位为低电平(逻辑值为(逻辑值为0 0),),停止位和空闲位都是高电停止位和空闲位都是高电平平(逻辑值为(逻辑值为1 1),这样就保证了起始位开始处一定会有一),这样就保证了起始位开始处一定会有一个下跳沿,由此就可以标志一个字符传输的起始。而根据个下跳沿,由此就可以标志一个字符传输的起始。而根据起始位和停止位也就很容易得实现了字符的界定和同步。起始位和停止位也就很容易得实现了字符的界定和同步。图8-3 异步通信数
6、据格式 起始位起始位:必须是持续一个比特时间的逻辑:必须是持续一个比特时间的逻辑0 0电平,标志传输一个字符开电平,标志传输一个字符开始,接收方可用起始位使自己的接收时钟与发送方数据同步。始,接收方可用起始位使自己的接收时钟与发送方数据同步。数据位数据位:数据位紧跟在起始位之后,是通信中的真正有效信息。数据位:数据位紧跟在起始位之后,是通信中的真正有效信息。数据位的位数可以由通信双方共同约定,一般可以是的位数可以由通信双方共同约定,一般可以是5 5位、位、7 7位或位或8 8位,标准的位,标准的ASCIIASCII码是码是01270127(7 7位),扩展的位),扩展的ASCIIASCII码是
7、码是02550255(8 8位)。传输数据时位)。传输数据时先传送字符的低位,后传送字符的高位。先传送字符的低位,后传送字符的高位。奇偶校验位奇偶校验位:奇偶校验位仅占一位,用于进行奇校验或偶校验,奇偶检:奇偶校验位仅占一位,用于进行奇校验或偶校验,奇偶检验位不是必须有的。如果是奇校验,需要保证传输的数据总共有奇数个验位不是必须有的。如果是奇校验,需要保证传输的数据总共有奇数个逻辑高位;如果是偶校验,需要保证传输的数据总共有偶数个逻辑高位。逻辑高位;如果是偶校验,需要保证传输的数据总共有偶数个逻辑高位。停止位停止位:停止位可以是是:停止位可以是是1 1位、位、1.51.5位或位或2 2位,可以
8、由软件设定。它一定是位,可以由软件设定。它一定是逻辑逻辑1 1电平,标志着传输一个字符的结束。电平,标志着传输一个字符的结束。空闲位空闲位:空闲位是指从一个字符的停止位结束到下一个字符的起始位开:空闲位是指从一个字符的停止位结束到下一个字符的起始位开始,表示线路处于空闲状态,必须由高电平来填充。始,表示线路处于空闲状态,必须由高电平来填充。2.2.串行通信的传输方式串行通信的传输方式 串行通信根据数据传输的方向及时间关系可分为:单工、串行通信根据数据传输的方向及时间关系可分为:单工、半双工和全双工。半双工和全双工。单工单工是指数据仅能沿着一个方向传输,不能实现反向传输,是指数据仅能沿着一个方向
9、传输,不能实现反向传输,如图如图8-4(1)8-4(1)所示。所示。半双工半双工是指数据可以沿两个方向传输,但需要分时进行,是指数据可以沿两个方向传输,但需要分时进行,如图如图8-4(2)8-4(2)所示。所示。全双工全双工是指数据可以同时进行双向传输,如图是指数据可以同时进行双向传输,如图8-4(3)8-4(3)所示。所示。(1)单工 (2)半双工 (3)全双工 图8-4 串行通信的三种传输方式3.3.传输速率与传输距离传输速率与传输距离 (1 1)传输速率传输速率 传输速率常用波特率描述传输速率常用波特率描述,定义为每秒钟传送二进制数码的,定义为每秒钟传送二进制数码的位数。单位是:位位数。
10、单位是:位/秒秒(bps)(bps)。波特率越高,数据传输速度越快。串口典型的传输波特率波特率越高,数据传输速度越快。串口典型的传输波特率600bps600bps,1200bps1200bps,2400bps2400bps,4800bps4800bps,9600bps9600bps,19200bps19200bps,38400bps38400bps。(2 2)传输距离与传输速率的关系传输距离与传输速率的关系 传输距离与波特率及传输线的电气特性有关。通常传输距离传输距离与波特率及传输线的电气特性有关。通常传输距离随波特率的增加而减小。随波特率的增加而减小。如使用非屏蔽双绞线如使用非屏蔽双绞线(5
11、0pF/0.3m)(50pF/0.3m)时,波特率时,波特率9600bps9600bps时最大时最大传输距离为传输距离为76m76m,若再提高波特率,传输距离将大大减小。,若再提高波特率,传输距离将大大减小。8.2 IAP15W4K58S48.2 IAP15W4K58S4单片机的串行口单片机的串行口1 1 IAP15W4K58S4IAP15W4K58S4单片机集成有单片机集成有4 4个可编程的全双工串行通信接个可编程的全双工串行通信接口,具有口,具有UARTUART全部功能。全部功能。每个串行口由每个串行口由2 2个数据缓冲器个数据缓冲器SBUFSBUF、一个移位寄存器一个移位寄存器、一个一个
12、串行控制寄存器串行控制寄存器和和一个波特率发生器一个波特率发生器组成。组成。每个串行口的数据缓冲器每个串行口的数据缓冲器SBUFSBUF由由2 2个互相独立的接收、发送个互相独立的接收、发送缓冲器构成,可同时发送接收数据。缓冲器构成,可同时发送接收数据。发送缓冲器发送缓冲器SBUFSBUF只能写入不能读出,接收缓冲器只能写入不能读出,接收缓冲器SBUFSBUF只能只能读出不能写入,因而两个缓冲器可共用一个地址码。读出不能写入,因而两个缓冲器可共用一个地址码。8.2 IAP15W4K58S48.2 IAP15W4K58S4单片机的串行口单片机的串行口1 1 串行口串行口1 1内部简化结构如图内部
13、简化结构如图8-58-5所示。所示。图图8-5 8-5 串行口简化结构串行口简化结构8.2.1 8.2.1 串行口串行口1 1的控制寄存器的控制寄存器1.1.串行口串行口1 1的控制寄存器的控制寄存器SCONSCON和和PCONPCON 串行口串行口1 1设有两个控制寄存器:串行控制寄存器设有两个控制寄存器:串行控制寄存器SCONSCON和波和波特率选择特殊功能寄存器特率选择特殊功能寄存器PCONPCON。串行控制寄存器串行控制寄存器SCONSCON用于选择串行通信的工作方式和某些用于选择串行通信的工作方式和某些控制功能。控制功能。其其地址为地址为98H98H,可位寻址,格式如表,可位寻址,格
14、式如表8-18-1所示:所示:B7B6B5B4B3B2B1B0SM0/FE SM1SM2RENTB8RB8TIRI 表8-1 SCON寄存器8.2.1 8.2.1 串行口串行口1 1的控制寄存器的控制寄存器SM0 SM1 工作方式工作方式功能说明功能说明波特率波特率00方式0移位寄存器方式SYSclk/12或SYSclk/201方式18位UART可变,取决于T1或T2的溢出率10方式29位UART(2SMOD/64)x SYSclk系统工作时钟频率11方式39位UART可变,取决于T1或T2的溢出率 表8-2 串行口工作方式(位数注意核对)SM0/FE SM0/FE:当:当PCONPCON寄存
15、器中的寄存器中的SMOD0/PCON.6SMOD0/PCON.6位为位为1 1时,时,该位用于帧错误检测。当检测到一个无效停止位时,通过该位用于帧错误检测。当检测到一个无效停止位时,通过UARTUART接收器设置该位。它必须由软件清零。接收器设置该位。它必须由软件清零。当当PCONPCON寄存器中的寄存器中的SMOD0/PCON.6SMOD0/PCON.6位为位为0 0时,该位和时,该位和SM1SM1一起指定串行通信的工作方式,如下表一起指定串行通信的工作方式,如下表8-28-2所示。所示。SM0SM0、SM1SM1:串行口工作方式选择位,可选择串行口工作方式选择位,可选择4 4种工作方种工作
16、方式,如表式,如表8-28-2所示。所示。SM2SM2:允许方式:允许方式2 2或方式或方式3 3多机通信控制位。多机通信控制位。RENREN:允许:允许/禁止串行接收控制位。由软件置位禁止串行接收控制位。由软件置位RENREN,即,即REN=1REN=1为允许串行接收状态,可启动串行接收器为允许串行接收状态,可启动串行接收器RxDRxD,开始,开始接收信息。软件复位接收信息。软件复位RENREN,即,即REN=0REN=0,则禁止接收。,则禁止接收。TB8TB8:在方式:在方式2 2或方式或方式3 3,它为要发送的第,它为要发送的第9 9位数据,按需要由位数据,按需要由软件置位或清软件置位或
17、清0 0。RB8RB8:在方式在方式2 2或方式或方式3 3,是接收到的第,是接收到的第9 9位数据,作为奇偶位数据,作为奇偶校验位或地址帧校验位或地址帧/数据帧的标志位。方式数据帧的标志位。方式0 0中不用中不用RB8RB8(置置SM2=0SM2=0)。方式。方式1 1中也不用中也不用RB8(RB8(置置SM2=0SM2=0,RB8RB8是接收到的停止是接收到的停止位位)。8.2.1 8.2.1 串行口串行口1 1的控制寄存器的控制寄存器 TITI:发送中断请求标志位:发送中断请求标志位。在方式。在方式0 0,当串行发送数据第,当串行发送数据第8 8位位结束时,由内部硬件自动置位,结束时,由
18、内部硬件自动置位,即即TI=1TI=1,向主机请求中断,向主机请求中断,响应中断后响应中断后TITI必须用软件清零,即必须用软件清零,即TI=0TI=0。在其他。在其他方式中,方式中,则在停止位开始发送时由内部硬件置位,即则在停止位开始发送时由内部硬件置位,即TI=1,TI=1,响应中断响应中断后后TITI必须用软必须用软件清零。件清零。RIRI:接收中断请求标志位接收中断请求标志位。在方式。在方式0 0,当串行接收到第,当串行接收到第8 8位位结束时由内部硬件自动置位结束时由内部硬件自动置位RI=1RI=1,向主机请求中断,响应向主机请求中断,响应中断后中断后RIRI必须用软件清零,即必须用
19、软件清零,即RI=0RI=0。在其他方式中,串行。在其他方式中,串行接收到停止位的中间时刻由内部硬件置位,即接收到停止位的中间时刻由内部硬件置位,即RI=1RI=1,向向CPUCPU发中断申请,响应中断后发中断申请,响应中断后RIRI必须由软件清零。必须由软件清零。8.2.1 8.2.1 串行口串行口1 1的控制寄存器的控制寄存器2.2.串行口串行口1 1的电源控制寄存器的电源控制寄存器PCON PCON 电源控制寄存器电源控制寄存器PCONPCON中的中的SMOD/PCON.7SMOD/PCON.7用于设置用于设置方式方式1 1、方式、方式2 2、方式、方式3 3的波特率是否加倍。的波特率是
20、否加倍。其其地址为地址为87H87H,不可位寻址,格式如表,不可位寻址,格式如表8-38-3所示:所示:表表8-3 PCON寄存器寄存器B7B6B5B4B3B2B1B0SMOD SMOD0 LVDFPOFGF1GF0PDIDLSMODSMOD:波特率选择位。当用软件置位:波特率选择位。当用软件置位SMODSMOD,即,即SMOD=1SMOD=1,则使串行通信方式则使串行通信方式1 1、2 2、3 3的波特率加倍;的波特率加倍;SMOD=0SMOD=0,则,则各工作方式的波特率不加倍。复位时各工作方式的波特率不加倍。复位时SMOD=0SMOD=0。SMOD0SMOD0:帧错误检测有效控制位。当:
21、帧错误检测有效控制位。当SMOD0=1SMOD0=1,SCONSCON寄寄存器中的存器中的SM0/FESM0/FE位用于位用于FE(FE(帧错误检测帧错误检测)功能;当功能;当SMOD0=0SMOD0=0,SCONSCON寄存器中的寄存器中的SM0/FESM0/FE位用于位用于SM0SM0功能功能,和和SM1SM1一起指定串行口的工作方式。复位时一起指定串行口的工作方式。复位时SMOD0=0SMOD0=0。PCONPCON中的其他位都与串行口中的其他位都与串行口1 1无关无关 8.2.2 8.2.2 串口串口1 1的工作方式的工作方式IAP15W4K58S4IAP15W4K58S4系列单片机的
22、串行口系列单片机的串行口1 1有有4 4种工作方式,可通过种工作方式,可通过软件编程对软件编程对SCONSCON中的中的SM0SM0、SM1SM1的设置进行选择。的设置进行选择。1.1.方式方式0 0 在方式在方式0 0下,串行口下,串行口1 1工作在同步移位寄存器模式,主要用于工作在同步移位寄存器模式,主要用于扩展并行输入或输出口。串行口数据由扩展并行输入或输出口。串行口数据由RxD/P3.0RxD/P3.0端输入,同端输入,同步移位脉冲(步移位脉冲(SHIFTCLOCKSHIFTCLOCK)由)由TxD/P3.1TxD/P3.1输出,发送、接输出,发送、接收的是收的是8 8位数据,低位在先
23、。位数据,低位在先。(1)(1)发送:执行发送:执行“写入写入SBUF”SBUF”指令后,启动发送过程。指令后,启动发送过程。(2)(2)接收:复位接收中断请求标志接收:复位接收中断请求标志RIRI,即,即RIRI0 0,置位允许接,置位允许接收控制位收控制位REN=1REN=1时启动方式时启动方式0 0接收过程。接收过程。8.2.2 8.2.2 串口串口1 1的工作方式的工作方式2 2方式方式1 1 当软件设置当软件设置SCONSCON的的SM0SM0、SM1SM1为为“01”“01”时,串行口时,串行口1 1则以则以模式模式1 1工作。此模式为工作。此模式为8 8位位UARTUART格式,
24、一帧信息为格式,一帧信息为1010位:位:1 1位起始位,位起始位,8 8位数据位位数据位(低位在先低位在先)和和1 1位停止位。位停止位。(1)(1)发送:当主机执行一条写发送:当主机执行一条写“SBUF“SBUF“的指令就启动串行通的指令就启动串行通信的发送,写信的发送,写“SBUF”“SBUF”信号还把信号还把“1”“1”装入发送移位寄存装入发送移位寄存器的第器的第9 9位,并通知位,并通知TXTX控制单元开始发送。控制单元开始发送。(2)2)接收:接收:当软件置位接收允许标志位当软件置位接收允许标志位RENREN,即,即REN=1REN=1时,时,接收器便以选定波特率的接收器便以选定波
25、特率的1616分频的速率采样串行接收端口分频的速率采样串行接收端口RxDRxD,当检测到,当检测到RxDRxD引脚输入电平发生负跳变时,则说明引脚输入电平发生负跳变时,则说明起始位有效,将其移入移位寄存器,并开始接收这一帧信起始位有效,将其移入移位寄存器,并开始接收这一帧信息的其余位。息的其余位。8.2.2 8.2.2 串口串口1 1的工作方式的工作方式3.3.方式方式2 2和方式和方式3 3 串行口串行口1 1工作在方式工作在方式2 2和方式和方式3 3时,其一帧的信息由时,其一帧的信息由1111位组成:位组成:1 1位起始位,位起始位,8 8位数据位位数据位(低位在先低位在先),1 1位可
展开阅读全文