




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章 MCS-51单片机串行接口第一节串行通信的基本概念(一)学习要求1. 掌握串行通信的基本概念。2. 掌握异步通信和同步通信的区别。(二)内容提要一:基本概念及分类串行通信是将数据的各位一位一位地依次传送。适合于计算机之间、 计算机与外部设备之间的远距离通信。串行通信从传输方式分为:单工方式、半双工方式、全双工方式。从接收方式来说,串行通信有两种方式:异步通信方式、同步通信方式。二:串行口的功能MCS 51单片机中的异步通信串行接口能方便地与其他计算机或传送信息的外围设备(如串行打印机、 CPU终端等)实现双机、多机通信。串行口有4种工作方式,见表 7 1。方式0并不用于通信,而是通过外
2、接移位寄存器 芯片实现扩展并行I/O接口的功能。该方式又称为移位寄存器方式。方式 1、方式2、方 式3都是异步通信方式。方式 1是8位异步通信接口。一帧信息由10位组成,其格式见图7 2a。方式1用于双机串行通信。方式 2、方式3都是9位异步通信接口、一帧信息中包 括9位数据,1位起始位,1位停止位,其格式见图7 2b。方式2、方式3的区别在于波 特率不同,方式2、方式3主要用于多机通信,也可用于双机通信。表7-1SM0SM1工位 式功能波特率00方式0移位寄存器方式fosc/1201方式08位通用异步接收器/发送器可变10方式09位通用异步接收器/发送器fosc/32 或 fosc/6411
3、方式09位通用异步接收器/发送器可变(三)习题与思考题1、什么是并行通信?什么是串行通信?各有何优缺点?答:并行通信指数据的各位同时传输的通信方式,串行通信是指各位数据逐位顺序传输的通信方式。2、什么是异步通信?什么是同步通信?各有何优缺点?3、 什么是波特率?某异步串行通信接口每分钟传送1800个字符,每个字符由11位组成, 请计算出传送波特率。第二节MCS-51串行接口的组成(一)学习要求(1) 了解申行接口的结构。了解申行接口的控制与状态寄存器工作原理。(二) 内容提要一:串行接口的结构串行接口主要由发送数据缓冲器、发送控制器、输出控制门、接收数据缓冲器、接收控制器、输入移位寄存器、波特
4、率发生器T1等组成。串行口中还有两个特殊功能寄存器 SCON、PCON,特殊功能寄存器 SCON用来存放串 行口的控制和状态信息。定时器/计数器 1(T1)与定时器/计数器 2(T2)都可构成串行口的 波特率发生器,其波特率是否增倍可由特殊功能寄存器PCON的最高位控制。二:串行接口控制与状态寄存器MCS - 51串行口的工作方式选择、中断标志、可编程位的设置、波特率的增倍均是通 过两个特殊功能寄存器 SCON和PCON来控制的。1 .电源和波特率控制寄存器 PCON电源控制寄存器 PCON的格式如下:D7 D 6 D5D4D3D 2 D 1D0SMOD一一一GF1GF0PDIDL电源和波特率
5、控制寄存器 PCON,其地址为87H,只能进行字节寻址,不能按位寻址。PCON的最高位D7位作SMOD,是串行口波特率的增倍控制位。当 SMOD = 1时,波特率 加倍。例如在工作方式 2下,若SMOD = 0时,则波特率为 f°sc/64;当SMOD = 1时,则 波特率为 f°sc/ 32,恰好增大一倍。系统复位时,SMOD位为0。串行口控制寄存器 SCON解SCON各位的含义如下:SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRI98H9FH9EH9DH9CH9BH9AH99H98H(1) 串行口控制方式选择位 SM0、SM1 ,其S
6、M0、SM1由软件置位或清零,用于选 择串行口的4种工作方式。(2) 多机通信控制位 SM2和接收中断标志位 RI SM2 = 1时,如果接收到的一帧信息 中的第九位数据为1,且原有的接收中断标志位 RI = 0,则硬件将RI置1;如果第九位数据 为0,则RI不置1 ,且所接收的数据无效。SM2 = 0时,只要接收到一帧信息,不管第九位数据是0还是1,硬件都置 RI = 0, RI由软件清零。SM2由软件置位或清零。多机通信时,SM2必须置1,双机通信时,通常使 SM2 = 0。方式0时SM2必须为0。(3) 发送中断标志位 TI 在方式0中,发送完8位数据后,由硬件置位;在其它方 式中,在发
7、送停止位之初,由硬件使 TI = 1。TI置位后可向CPU申请中断,任何方式中 TI 位都必须由软件清除。(4 )接收中断标志 RI 在方式0中,接收完8位数据后,由硬件置位;在其它方式 中,在接收停止位的一半时由硬件将RI置位(还应考虑SM2的设定)。RI被置位后可允许CPU申请中断,任何方式中 TI位都必须由软件来清除。串行发送中断标志 TI和接收中断标志 RI共用一个中断源,CPU并不知道是TI还是RI 产生的中断请求,所以在全双工通信时,必须由软件来断别。(5) 允许接收控制位 RENREN = 1时允许接收,REN = 0时禁止接收。REN由软 件置位或清零。(6) 发送数据D8位T
8、B8 TB8是方式2、方式3中要发送的第九位数据,事先用软 件写入1或0。方式0、方式1不用。(7) 接收数据 D8位RB8 方式2、方式3中,由硬件将接收到的第九位数据存入 RB8。方式1中,停止位存入 RB8。复位后SCON的所有位清零。(三) 习题与思考题1、MCS-51单片机的串行口由哪些功能部件组成?各有什么作用。2、特殊功能寄存器 SCON和PCON勺作用和工作过程是什么?第三节串行口的工作方式(一) 学习要求(1) 了解串行接口的工作方式。(2) 掌握波特率的计算。(二) 内容提要一、串行接口的工作方式 0SM0 = 0、SM1 = 0串行口工作于方式 0,即串行寄存器方式或称为
9、同步移位寄存器输入 /输出方式。CPU执行一条写SBUF的指令如MOV SBUF , A就启动了发送过程。发送 的时序见图7-1。接收时序见图 7-2TfiSCON中的RI位RRECEIVESHIFTRXDfDfiTA IN)1|I|1|I|f图7-1方式0发送时序pq S TkSBUFSENDSHIFT RXD (DATA OUT)n ri n ri ri ri ii iX 乂 X X X XXTXD (SHIFT CUDCK)11IT LILITI图7-2 方式0接收时序串行口方式0不适用于两个8051之间的数据通信,但可通过外接移位寄存器来扩展单 片机的接口。例如,可以采用 74LS16
10、4可以扩展并行输出口,74LS165可以扩展输入口。二、串行口工作方式 1SM0 = 0, SM1 = 1串行口接口工作于方式 1,即将8位异步通信接口方式,结构示意图 见图7-7。RXD为接收端,TXD为发送端。一帧信息由 10位组成,方式1的波特率可变, 由定时器/计数器 1或定时器/计数器 2的溢出速率以及 SMOD (PCON.7)决定,且发送 波特率与接收波特率可以不同。1. 发送CPU执行一条写SBUF指令后便启动了串行口发送,数据从TXD输出,时序见图7-8a。在指令执行期间,CPU送来 写SBUF信号,将并行数据送入 SBUF,并启动发送控制器,经一个机器周期,发送控制器的SE
11、ND、DATA相继有效,通过输出控制门从TXD上逐位输出一帧信号。一帧信号发送完毕后,SEND、DATA失效,发送控制器硬件置发送中断标志TI = 1,向CPU申请中断。2. 接收方式1的接收时序见图7-8b。允许接收位 REN被置1接收器就开始工作,跳变检测器 以波特率16倍的速率采样 RXD弓I脚上电平,当采样到从1到0的负跳变时,启动接收控制器接收数据,由于发送、接收双方各自使用自己的时钟,两者的频率总有少许差异。为了避免这种影响,控制器将 1位送时间等分成16分、位检测器在 7、8、9三个状态也就是在 位信号中央采样 RXD三次。而且,三次采样中至少两次相同的值被确认为数据,这是为 了
12、减小干扰的影响。如果起始位接收到的值不是0,由起始位无效,复位接收电路。如果起始位为0,则开始开始接收本帧其他数据。控制器发出的内部移位脉冲将RXD上的数据逐位移入移位寄存器,当 8位数据及停止位全移入后:(1) 如果RI = 0、SM2 = 0,接收控制器发出 装载SBUF信号,将8位数据装入接收 数据缓冲器SBUF,停止装入RB8,并置RI = 1,向CPU申请中断。(2) 如果RI = 0、SM2 = 1,那么只有停止位为 1时才发生上述动作。(3) 如果RI = 0、SM2 = 1且停止位为0,(通常由传输过程中的干扰所致)所接收的 数据应会丢失,不再恢复。(4) 如果RI = 1,则
13、所接收的数据在任何情况下都会丢失。无论出现哪一种情况,跳变检测器将继续采样RXD引脚的负跳变,以便接收下一帧信息。接收器采用移位寄存器和SBUF双缓冲结构,以避免在接收后一帧数据之前,CPU尚未及时响应中断将前一帧数据取走,造成两帧数据重叠问题。 采用双缓冲器后,前、后两帧数据进入SBUF的时间间隔至少有 10个位传送周期。在后一帧数据送入SBUF之前,CPU有足够的时间将前一帧数据取走。三、串行接口工作方式 2和与方式3串行口工作在方式 2、方式3时,为9位异步通信接口。发送或接收的一帧信息由11位组成,见图7-2b。方式2与方式3仅波特率不同,方式 2的波特率为fos/32 ( SMOD
14、= 1 时)或fosc/64 (SMOD = 0时),而方式3的波特率由定时器/计数器具或定时器/计数器2及SMOD决定。1 .发送方式2、方式3发送时,数据从 TXD引脚输出,附加的第九位数据由SCON中的TB8提供。CPU执行一条写入 SBUF的指令后立即启动发送器发送。发送完一帧信息后由硬件 置 TI=1。2. 接收与方式1相似,REN置1后,跳变检测器不断对 RXD引脚采样。当采样到负跳变后就 启动接收控制器。位检测器对每位数据采集 3个值,用采3取2办法确定每位的数值。 当第 九位数据移入移位寄存器后,将8位数据装入SBUF,第九位数据装入 RB8,并置RI=1 ,其时序见图2-26
15、b。与方式1相同,方式2、方式3中也设置有数据辨别功能,即当RI = 1或SM2 = 1且第九位数据为0时所接收的一帧信息被丢失。四、各方式波特率的设计在串行通信中,收发双方对发送或接收的数据速率(即波特率)要有一定的约定。可通 过对串行口编程设定。各种工作方式下其波特率的设置均有所不同,其中方式0和方式2的波特率是固定的,方式1和方式3的波特率是可变的,由定时器 T1的溢出率确定。(1) 方式0的波特率方式。时,其波特率固定为振荡频率的1/12,并不受PCON中SMOD位的影响。因而,方式 0的波特率=fosc/12o(2) 方式2的波特率 方式2的波特率由系统的振荡频率 fosc和PCON
16、的最高位 SMOD 确定,即为 2 SMOD Xfosc/64。在 SMOD=0 时,波特率=fosc/64;在 SMOD= 1 时,波特 率=fosc/32。(3) 方式1、3的波特率MCS-51串行口方式1、3的波特率由定时器 T1的溢出率和SMOD的值共同确定,即方式1、3的波特率=(2 SMOD/ 32) X定时器T1的溢出率。其中定时器溢出率取决于计数速率和定时器的预置值。计数速率与TMOD寄存器中C/T的设置有关。当C/T = 0时,为定时方式,计数速率 =fosc/12;当C/T= 1时,为计数方 式,计数速率取决于外部输入时钟的频率,但不能超过fosc/24 o定时器的预置值等
17、于 M - X, X为计数初值,M为定时器的最大计数, 与操作模式有关。 (可取213、216、28)。如果为了到达很低的波特率,则可以选择16位的操作模式,即模式1 ,或模式0 ,可以利用 T1中断来实现重装计数值。为能实现定时器计数初值重装,则通常选择操作模式2。在模式2中,TL1作计数用,TH1用于保存计数初值, 当TL1计满溢出时,TH1的值自动装到TL1中。因此一般选用T1 工作于模式2作波特率发生器。设 T1的计数初值为 X,设置C/T=0时,那么每过256- X 个机器周期,定时器 T1就会产生一次溢出。则T1的溢出周期为:溢出周期=12/foscX (256 X)溢出率为溢出周
18、期之倒数,所以波特率=SMOD 2f oscX3212 (256 -X)2SMOD fosc384 (256 X)定时器T1模式2的计数初值由上式可得:SMODX =256 °384波特率(4)在8032/8052单片机中,工作方式1、工作方式3的波特率取决于定时器/计数器1、定时器/计数器2决定。由T2CON中的TCLK、RCLK选择。发送器的波特率由 TCLK 选择,TCLK = 1时,由定时器/计数器 2决定,TCLK = 0时,由定时器/计数器 1决定。 接收器的波特率由 RCLK选择,RCLK = 1时,由定时器/计数器 2决定,RCLK = 0时,由 定时器/计数器1决定。定时器/计数器1构成波特率发生器的波特率计算与8031 / 8051/8751相同。定时器/计数器 2构成波特率发生器的波特率与SMOD无关。由于定时器状态时(C/T2 = 0),加法计数器对时钟脉冲 (fosc/2)计数,所以波特率
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 挂靠联营协议合同
- 各行业人才招聘量统计表
- 二手房房屋买卖合同书
- 矿用管路安装施工方案
- 萃取塔清洗施工方案
- 屋面台阶维修施工方案
- 衡水罐体铁皮保温施工方案
- 脑血管病用药项目风险识别与评估综合报告
- 安徽拼接式蓄水池施工方案
- 同花顺:2024年年度审计报告
- 2024解析:第八章牛顿第一定律、二力平衡-基础练(解析版)
- 高职高考数学复习第四章指数函数与对数函数4-3对数的概念及运算课件
- 全国计算机等级考试(NCRE) 计算机一级(MS Office)考前必背题库(含答案)
- 工地早班会活动记录表(普工、塔司、信号工)
- 2024解析:第十三章内能-基础练(解析版)
- 《selenium安装教程》课件
- 第47届世界技能大赛网络安全项目江苏省选拔赛-模块C样题
- 提高痰标本留取成功率 呼吸科QCC成果汇报品管圈护理课件
- 2024年辽宁省中考数学真题卷及答案解析
- 物业员工安全知识教育培训
- 动物性食品卫生检验教案2
评论
0/150
提交评论