河北工业大学单片机课第6章 基础内部IO_第1页
河北工业大学单片机课第6章 基础内部IO_第2页
河北工业大学单片机课第6章 基础内部IO_第3页
河北工业大学单片机课第6章 基础内部IO_第4页
河北工业大学单片机课第6章 基础内部IO_第5页
已阅读5页,还剩107页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1第六章第六章 MCS-51MCS-51内部的内部的I/OI/O口、定时器及其应用口、定时器及其应用本章重点讨论本章重点讨论MCS-51MCS-51单片机内部的资源的原理及其应用单片机内部的资源的原理及其应用 并行并行I/OI/O口口 定时器定时器/ /计数器计数器 串行串行I/O I/O 口口基本要求:基本要求: 掌握掌握 P0P3P0P3的特性及其应用的特性及其应用 掌握掌握T/CT/C的原理、工作方式、程序设计方法及应用的原理、工作方式、程序设计方法及应用 学会综合运用学会综合运用 了解串行口的原理、制式了解串行口的原理、制式26.3 MCS-51串行串行I/O口及串行通信口及串行通信

2、第六章第六章 MCS-51MCS-51内部的内部的I/OI/O口、定时器及其应用口、定时器及其应用6.1 MCS-51内部的并行内部的并行I/O口及应用口及应用6.2 MCS-51的定时器的定时器/计数器计数器36.1 MCS-51内部的内部的并行并行I/O口及应用口及应用456.3.1 串行通信串行通信基础知识基础知识6.3.2 MCS-51的的串行串行I/O口及控制寄存器口及控制寄存器6.3.5 MCS-51串行口的串行口的多机通信多机通信6.3.3 MCS-51串行口串行口双机异步通信双机异步通信6.3.4 MCS-51串行口的串行口的应用应用6 8051单片机内部有四个单片机内部有四个

3、8位并行位并行I/O口:口: P0、P1、P2和和P3 P0P3这这4个并行个并行I/O口都可以作准双向通用口都可以作准双向通用I/O口口 P0、P2和和P3口还有复用的第二功能口还有复用的第二功能 每个口都包含:每个口都包含: 一个(一个(8位)锁存器(即特殊功能寄存器位)锁存器(即特殊功能寄存器P0P3) 一个输出驱动器一个输出驱动器 两个三态缓冲器两个三态缓冲器 6.1 MCS-51内部的并行内部的并行I/O口及应用口及应用 7 6.1.1 P0口口 当外部扩展存储器或当外部扩展存储器或I/O口时,由口时,由EA、PC指指针从外部程序存储器取指令码、执行指令针从外部程序存储器取指令码、执

4、行指令MOVC、MOVX时,控制信号时,控制信号=1,使使MUX与反向器与反向器3连通,连通,作分时地址作分时地址/数据总线。数据总线。86.1.2 P1口口 功能:功能: P1P1口作通用口作通用I/OI/O口口 P1P1口也是一个口也是一个“准双向准双向”口,作输入口时要先将输出口,作输入口时要先将输出驱动管截止。驱动管截止。 即先执行一条指令即先执行一条指令 MOV P1,#0FFHMOV P1,#0FFH内部结构:内部结构:如图所示如图所示96.1.3 P2口口 106.1.4 P3口口 功能:功能: 第二输出功能端第二输出功能端=1:=1: P3 P3口用作通用口用作通用I/OI/O

5、口口 P3 P3口用作第二功能口用作第二功能 三根第二功能输出引脚三根第二功能输出引脚 TXDTXD、WRWR和和RDRD 五根第二功能输入引脚五根第二功能输入引脚 INT0INT0、INT1INT1、 T0T0、T1 T1 和和RXD RXD 内部结构内部结构 : :如图所示如图所示 111213Q14(2)位操作指令)位操作指令 同理,必须先写一条同理,必须先写一条SETB PX.Y或能对所读口或能对所读口位的位的D锁存器写入锁存器写入“1”的指令,在其后再紧跟如下的指令,在其后再紧跟如下指令。指令。 MOV C, PX.Y ANL C,PX.Y ORL C,PX.Y JNB PX.Y,r

6、el JB PX.Y,rel 15P0P0、P2P2、P3P3口复用作片外扩展系统的系统总线口复用作片外扩展系统的系统总线 16(1)(1) 无条件输入无条件输入/ /输出程序输出程序 (2)(2) 查询输入查询输入/ /输出程序输出程序 (3)(3) 中断输入中断输入/ /输出程序输出程序 三、直接输入三、直接输入/ /输出输出 171819(2) (2) 查询输入查询输入/ /输出程序输出程序 读入读入P3.0引脚上的开关引脚上的开关K4的预置状态的预置状态,若若P3.0=1,则驱动则驱动P1.7输出使输出使LED3闪亮一段时间;否则,查询等闪亮一段时间;否则,查询等待。参考程序如下:待。

7、参考程序如下: ORG 0200H MAIN3: MOV SP,#60H SETB P1.7 WAIT: JNB P3.0,WAIT MOV R7,#0FH LOOP: CPL P1.7 ACALL DLY DJNZ R7,LOOP SJMP WAIT END206 62 MCS-512 MCS-51的定时器的定时器/ /计数器计数器 在单片机实时应用系统中,定时和对外部事件计数的功能在单片机实时应用系统中,定时和对外部事件计数的功能 。定时定时:对周期已知的脉冲信号计数对周期已知的脉冲信号计数计数:计数:对外部事件计数,对周期未知的外来脉冲信号计数对外部事件计数,对周期未知的外来脉冲信号计数

8、定时方法:定时方法: 采用软件占用采用软件占用CPU的时间,降低了的时间,降低了CPU的使用效率;的使用效率;定时或计数方法:定时或计数方法: 采用专门的硬件电路,参数调节不便;采用专门的硬件电路,参数调节不便; 采用可编程的定时器采用可编程的定时器/计数器是最好的方法。计数器是最好的方法。 可以方便灵活地修改定时或计数的参数或方式可以方便灵活地修改定时或计数的参数或方式 与与CPU并行工作,大大提高了并行工作,大大提高了CPU的工作效率的工作效率 216.2.1 6.2.1 定时器定时器/ /计数器的组成计数器的组成 Timer/ Counter MCS-51 MCS-51单片机内部有二单片

9、机内部有二个个1616位的可编程的定时器位的可编程的定时器/ /计数器:计数器: 定时器定时器/ /计数器计数器0 0(T/C0T/C0) 定时器定时器/ /计数器计数器1 1(T/C1T/C1) 它们都有定时和对外部它们都有定时和对外部事件计数的功能,可用于定事件计数的功能,可用于定时控制、延时、对外部事件时控制、延时、对外部事件检测和计数等场合检测和计数等场合. . 22结构组成:结构组成: T/C0由两个由两个8位的位的TH0(8CH)和)和TL0(8AH)组成)组成 T/C1由由TH1(8DH)和)和TL1(8BH)组成)组成软件设置:软件设置: 计数初值:计数初值: 对对TH1、TL

10、1 、TH0、和、和TL0的初始化编程的初始化编程 工作方式:工作方式: 通过通过TMOD和和 TCON对每个对每个T/C设置定时或计数设置定时或计数特殊功能寄存器特殊功能寄存器 TMOD(Timer Mode Register) TCON(Timer Control Register ) THx 存放计数初值的高存放计数初值的高8位位 TLx 存放计数初值的低存放计数初值的低8位位定时器定时器/ /计数器(计数器(T/C0T/C0和和T/C1T/C1)的组成)的组成T/C0T/C0和和T/C1T/C1都是都是1616位的位的加加1 1计数器计数器23方式方式0 0方式方式1 1方式方式2 2

11、方式方式3 3TH0TH0TL0TL0TH1TH1TL1TL124 2、 计数方式计数方式 T/C计数来自引脚计数来自引脚T0(P3.4)和和T1(P3.5)的外部脉冲信号的的外部脉冲信号的个数。个数。 输入脉冲由输入脉冲由1变变0的下降沿的下降沿时,计数器的值增加时,计数器的值增加1直到回直到回零产生溢出中断零产生溢出中断,表示计数已达表示计数已达预期个数。预期个数。 最高计数频率为振荡频率最高计数频率为振荡频率的的1/241/24。 即计数周期即计数周期=2=2机器周期机器周期。 25 由软件把控制字写入由软件把控制字写入TCON和和TMOD,用来设置,用来设置T/C0和和T/C1的工作方

12、式和控制功能。的工作方式和控制功能。 当当8051系统复位时,系统复位时,TCON和和TMOD所有位都被清所有位都被清0。 一、工作模式寄存器一、工作模式寄存器TMOD(89H) TMOD用于控制用于控制T/C0和和T/C1的工作模式,其各位的定义的工作模式,其各位的定义格式如下:格式如下: 其中,低其中,低4位用于位用于T/C0,高,高4位用于位用于T/C1。各位功能如下:。各位功能如下: 261M1和和M0 工作方式选择位工作方式选择位这两位可形成四种编码,对应四种工作方式:这两位可形成四种编码,对应四种工作方式: M1 M0 方式方式 功功 能能 描描 述述 0 0 0 为为13位定时器

13、位定时器/计数器计数器,TL存放低存放低5位位,TH存高存高8位位 0 1 1 为为16位定时器位定时器/计数器计数器 1 0 2 常数自动装入常数自动装入8位定时器位定时器/计数器计数器 1 1 3 仅适于仅适于T/C0,两个两个8位定时器位定时器/计数器计数器2 C/T 计数计数/定时选择位定时选择位 C/T 0, 设为定时方式,对机器周期计数;设为定时方式,对机器周期计数; C/T 1,设为计数方式,对来自,设为计数方式,对来自T0或或T1引脚的外来脉冲计数。引脚的外来脉冲计数。27 3GATE 门控位(控制启动方式)门控位(控制启动方式) GATE0时,时,T/C的启动只要用软件使的启

14、动只要用软件使TR0(或(或TR1)置)置1即可,而不管即可,而不管/INT0(或(或/INT1)的电平是高还是低。)的电平是高还是低。 GATE1时,只有时,只有/INT0(或或/INT1)引脚为高电平且由软)引脚为高电平且由软件使件使TR0(或(或TR1)置)置1时,才启动时,才启动T/C工作。工作。 也就是也就是T/C的启动受双重控制。的启动受双重控制。注意:注意:TMOD不能位寻址,不能位寻址,只能由字节设置只能由字节设置T/C的工作方式,的工作方式, 低半字节设定低半字节设定T/C0,高半字节设定,高半字节设定T/C1。2829303132333435 。36 3738 394041

15、 42 1621328243 44。 45 13246 ORG 0000H AJMP MAIN ; 转到主程序转到主程序MAIN ORG 000BH AJMP TC0S ; 转到转到T/C0的中断服务程序的中断服务程序TC0S主程序:主程序: ORG 1000H MAIN: MOV SP,#6FH MOV TMOD ,#00H ;置;置T/C0为方式为方式0,定时。,定时。 MOV TH0,#0E0H ;送计数初值;送计数初值 MOV TL0,#18H SETB ET0 ;T/C0允许中断允许中断 SETB EA ;CPU开中断开中断 SETB TR0 ;启动;启动T/C0定时定时 HERE:

16、 SJMP HERE ;等待中断;等待中断中断服务程序:中断服务程序: ORG 1200H TC0S: MOV TH0,#0E0H ;重新装入计数初值;重新装入计数初值 MOV TL0,#18H CPL P1.0 ;输出方波;输出方波 RETI ;中断返回;中断返回 END474849例例6-5 利用利用GATE门控位门控位测量从测量从INT1引脚输入的正脉冲宽度。引脚输入的正脉冲宽度。解:解:1. 确定工作方式确定工作方式 (1(1)送方式控制字)送方式控制字(TMOD)1001 0000B90H ; T/C1定时,方式定时,方式1 ,GATE1 。(2(2)计算初值)计算初值 由于被测正脉

17、冲宽度未知,由于被测正脉冲宽度未知, 假设宽度假设宽度= 65.536ms,fosc12MHz ,则:,则: 计数个数:计数个数:X65536(最大)(最大) 定时初值:定时初值:C65536-X65536-655360, (TH1)00H,(,(TL1)00H。 50 对对P3.3(INT1)P3.3(INT1)引脚输入的脉冲采用查询的方法。引脚输入的脉冲采用查询的方法。 ) 被测脉宽被测脉宽 置置1 TR1 TH1TL1从从0开始计数开始计数 清清0 TR1,停止停止T/C1计数计数图图6-12 脉冲测试原理脉冲测试原理51 ORG 0000HMAIN:MOV SP,#6F MOV TMO

18、D,#90H MOV TL1,#00H MOV TH1,#00HLOOP:JB P3.3,LOOP SETB TR1LOOP1:JNB P3.3,LOOP1LOOP2:JB P3.3,LOOP2 CLR TR1 MOV 30H,TL1 MOV 31H,TH1 . ACALL Calc ;计算子程序略;计算子程序略 ACALL DIR ;显示子程序略;显示子程序略 SJMP $ END 52 53 5455 5657 在实际应用中在实际应用中,不但计算机与外部设备不但计算机与外部设备之间常常要进行信息交换之间常常要进行信息交换,而且计算机之间而且计算机之间也需要交换信息也需要交换信息,所有这些信

19、息的交换均称所有这些信息的交换均称为为“通信通信”。 通信的基本方式分为并行通信和串行通信的基本方式分为并行通信和串行通信两种。通信两种。一、并行通信与串行通信一、并行通信与串行通信6.3.1 6.3.1 串行通信基础知识串行通信基础知识581. 并行通信并行通信数据的各位同时发送数据的各位同时发送 并行通信是构成1组数据的各位同时进行传送,例如8位数据或16位数据并行传送。 其特点是传输速度快、效率高。但当距离较远、位数又多时导致了通信线路复杂且成本高。2. 串行通信串行通信数据一位一位顺序传送数据一位一位顺序传送 串行通信是数据一位接一位地顺序传送。其特点是通信线路简单,只要一对传输线就可

20、以实现通信(如电话线),从而大大地降低了成本,特别适用于远距离通信。缺点是传送速度慢。 59 图614通信的两种基本方式(a)并行通信; (b)串行通信601. 异步通信异步通信 异步通信的特点是数据在线路上的传送不异步通信的特点是数据在线路上的传送不连续。在传送时连续。在传送时,数据是以一个字符为单位进行数据是以一个字符为单位进行传送的。它用一个起始位表示字符的开始,用传送的。它用一个起始位表示字符的开始,用停止位表示字符的结束。字符帧由发送端一帧停止位表示字符的结束。字符帧由发送端一帧一帧的发送,通过传输线由接收设备一帧一帧一帧的发送,通过传输线由接收设备一帧一帧的接收。的接收。 在异步通

21、信中,发送端和接收端依靠字符在异步通信中,发送端和接收端依靠字符帧格式规定和波特率来协调数据的发送和接收。帧格式规定和波特率来协调数据的发送和接收。二、异步通信与同步通信二、异步通信与同步通信61起始位起始位:位于字符帧开头,只占一位,始终为逻辑:位于字符帧开头,只占一位,始终为逻辑0低电平,用于向接收设备表示发送端开始发送一帧数低电平,用于向接收设备表示发送端开始发送一帧数据。据。数据位数据位:紧跟起始位之后,用户根据情况可取:紧跟起始位之后,用户根据情况可取5位、位、6位、位、7位或位或8位,低位在前高位在后。若所传数据为位,低位在前高位在后。若所传数据为ASCII字符,则常取字符,则常取

22、7位。位。奇偶校验位奇偶校验位:位于数据位后,仅占一位,用于表征串:位于数据位后,仅占一位,用于表征串行通信中采用奇校验还是偶校验,由用户根据需要决行通信中采用奇校验还是偶校验,由用户根据需要决定。定。停止位停止位:位于字符帧末尾,为逻辑:位于字符帧末尾,为逻辑1高电平,通常可高电平,通常可取取1位、位、1.5位或位或2位,用于向接收端表示一帧字符信位,用于向接收端表示一帧字符信息已发送完毕,也为发送下一帧字符作准备。息已发送完毕,也为发送下一帧字符作准备。(1)字符帧:)字符帧:由起始位、数据位、奇偶校验由起始位、数据位、奇偶校验位和停止位位和停止位4个部分组成。个部分组成。62 图615串

23、行异步传送的字符格式(a)字符格式; (b)有空闲位的字符格式 63(2)波特率:)波特率:是数据的传送速率,即是数据的传送速率,即每秒钟传每秒钟传送的二进制数码的送的二进制数码的位数位数,单位为位,单位为位/秒(秒(b/s)。它与)。它与字符的传送速率不同,字符的传送速率不同,字符的实际传输速率字符的实际传输速率是指每是指每秒内所传字符帧的秒内所传字符帧的帧数帧数(字符(字符/秒)秒) 。二者之间存在。二者之间存在如下关系:如下关系: 波特率波特率=位位/字符字符字符字符/秒秒=位位/秒秒 要求发送端与接收端的波特率必须一致。要求发送端与接收端的波特率必须一致。64 例如:假设字符传送的速率

24、为例如:假设字符传送的速率为120字符字符/秒秒而每而每1个字符为个字符为10位,那么传送的波特率位,那么传送的波特率为:为: 10位位/字符字符120字符字符/秒秒 =1200位位/秒秒=1200波特波特 每每1位二进制位的传送时间位二进制位的传送时间Td就是波就是波特率的倒数特率的倒数,例如上例中,例如上例中 Td=1/1200=0.833ms652. 同步通信同步通信 同步通信是一种连续串行传送数据的通信同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。方式,一次通信只传送一帧信息。 信息帧由同步字符、数据字符和校验字符信息帧由同步字符、数据字符和校验字符等三部分组成。等

25、三部分组成。同步字符:同步字符:位于帧结构开头,用于确认数据字位于帧结构开头,用于确认数据字符的开始符的开始数据字符数据字符:在同步字符之后,个数不受限制,:在同步字符之后,个数不受限制,由所需传输的数据块长度决定;由所需传输的数据块长度决定;校验字符校验字符:有:有12个,位于帧结构末尾,用于个,位于帧结构末尾,用于接收端对接收到的数据字符的正确性校验。接收端对接收到的数据字符的正确性校验。66 图616串行同步传送的字符格式(a)单同步信息帧结构; (b)双同步信息帧格式 同步字符数据字符1数据字符2数据字符3数据字符nCRC1 CRC2(a)同步字符1同步字符2数据字符1数据字符2数据字

26、符nCRC1 CRC2(b)671. 单工制式:单工制式:A端为发送站,B端为接收站,数据仅能从A站发至B站。2. 半双工制式:半双工制式:数据既可从A站发送到B站,也可以由B站发送到A站。不过在同一时间只能作1个方向的传送。3. 全双工制式:全双工制式:每个站(A、B)既可同时发送,也可同时接收。 三、串行通信的制式三、串行通信的制式68 图617串行通信的三种方式(a)单工方式;(b)半双工方式;(c)全双工方式691. 检错方法:奇偶校验、校验和、循环冗余码校验。2. 纠错方法:海明码校验、交叉奇偶校验四、通信数据的差错检测和校正四、通信数据的差错检测和校正70 串行通信中的数据是逐位依

27、次传送的,而计算机系统或计算机终端中的数据是并行发送的。因此,发送端必须把并行数据变成串行并行数据变成串行才能在线路上传送,接收端接收到的串行数据又需串行数据又需要变换成并行数据要变换成并行数据才可以送给终端。 实现方法:软件实现、硬件实现软件实现、硬件实现。五、串行通信中串行五、串行通信中串行I/O数据的实现数据的实现717273 MCS51含有一个可编程含有一个可编程全双工全双工串行通信串行通信接口接口SIO,该接口电路不仅能,该接口电路不仅能同时进行数据的发送和接收,也可作为同时进行数据的发送和接收,也可作为一个同步移位寄存器使用。一个同步移位寄存器使用。 它的字符帧格式可以是它的字符帧

28、格式可以是8位、位、10位位或或11位,可以设置各种波特率,能方便位,可以设置各种波特率,能方便的构成双机、多机串行通信接口,从而的构成双机、多机串行通信接口,从而能实现能实现8051单片机系统之间点对点的单单片机系统之间点对点的单机通信、多机通信以及与系统机的单机机通信、多机通信以及与系统机的单机或多机通信。或多机通信。6 63 32 2 MCS-51MCS-51的串行的串行I/OI/O口及控制寄存器口及控制寄存器 74 MCS 51单片机通过引脚单片机通过引脚RxD(P3.0,串行数据接收端)和引脚,串行数据接收端)和引脚TxD(P3.1,串行数据发送端)与外界进行,串行数据发送端)与外界

29、进行串行通信。串行通信。 MCS51串行口主要由两个物理串行口主要由两个物理上独立的串行数据缓冲寄存器上独立的串行数据缓冲寄存器SBUF、发、发送控制器、接收控制器、输入移位寄存送控制器、接收控制器、输入移位寄存器和输出控制门组成。器和输出控制门组成。一、串行口的结构一、串行口的结构75图622 MCS-51串行口的原理结构图 76 发送缓冲寄存器发送缓冲寄存器SBUF只能写,不能读只能写,不能读;接收缓冲寄存器接收缓冲寄存器SBUF只能读,不能写只能读,不能写。两个缓冲寄存器共用一个地址两个缓冲寄存器共用一个地址99H,可,可以通过读以通过读/写指令区分。写指令区分。 串行发送:串行发送:M

30、OV SBUF,A 串行接收:串行接收:MOV A,SBUF 77 SCON寄存器用来控制串行口的工作方式和状态,它可以是位寻址。在复位时所有位被清,字地址为98H。SCON的格式为 二、串行口控制寄存器二、串行口控制寄存器SCON D7 D6 D5 D4 D3 D2 D1 D0 SCONSM0SM1SM2RENTB8RB8TIRI9F9E9D9C9B9A9998位地址位地址78SCON各位的功能:各位的功能:1) SM0、SM1: 用于定义串行口的操作模式, 两个选择位对应4种工作方式,见下表。其中fOSC是振荡器频率 。SM0 SM1 工作方式 功 能 波特率 0 00 11 01 101

31、01同步移位寄存器 10位异步收发 11位异步收发11位异步收发fOSC/12 由定时器控制 fOSC/64 或fOSC/32 由定时器控制792) SM2:多机通信控制位。在方式0时,SM2不用,应设置为0状态。在方式1下,SM2也应设置为0,此时RI只有在接收电路接收到停止位时才被激活成1,并能自动发出串行口中断请求。在方式2或方式3中,如SM2=1,则接收到的第9位数据(RB8)为0时不启动接收中断标志RI(即RI=0),并且将接收到的前8位数据丢弃;RB8为1时,才将接收到的前8位数据送入SBUF,并置位RI产生中断请求。当SM2=0时,则不论第9位数据为0或1,都将前8位数据装入SB

32、UF中,置RI为1,产生中断请求。803) REN:允许串行接收控制位。若REN=0,则禁止接收;若REN=1,则允许接收。该位由软件置位或复位。4) TB8:发送数据第9位。在方式2和方式3时,TB8存放所要发送的第9位数据。该位由软件置位或复位。5) RB8:接收数据第9位。用于在方式2和方式3时存放接收数据第9位。在方式1下,若SM20,则RB8存放接收到的停止位。在方式0下,不使用RB8。816) TI:发送中断标志位,用于指示一帧数据发送是否完成。 在方式0时,发送电路发送完第8位数据时,TI由硬件置位;在其他方式下,TI在发送电路开始发送停止位时置位。7) RI:接收中断标志位,用

33、于指示一帧信息是否接收完。 在方式0时,当接收到的第8位结束后,由内部硬件使RI置位,向CPU请求中断。在其它方式时,接收到停止位的中间便由硬件置位RI,必须在响应中断后,由软件使其复位。RI也可供查询使用。82 PCON主要是为CHMOS型单片机的电源控制而设置的专用寄存器,单元地址为87H,不能位寻址。三、电源控制寄存器三、电源控制寄存器PCON D7 D6 D5 D4 D3 D2 D1 D0 PCONSMODGF1GF0PDIDL8E8D8C8B8A898887位地址位地址 在HMOS单片机中,该寄存器除最高位外,其它位都是虚设的。最高位SMOD为串行口波特率选择位,当SMOD=1时,方

34、式1、2、3的波特率加倍;当SMOD=0时,系统复位。83 串行口有4种工作方式,它是由SCON中的SM0、SM1来定义的。四、串行口的工作方式四、串行口的工作方式SM0 SM1 工作方式 功 能 波特率 0 00 11 01 10101同步移位寄存器 10位异步收发 11位异步收发11位异步收发fOSC/12 由定时器控制 fOSC/64 或fOSC/32 由定时器控制84 1)方式方式0 串行接口的工作方式0为同步移位寄存器方式,其波特率是固定的,为fosc(振荡频率)的1/12。 方式方式0发送发送 数据从RXD引脚串行输出,TXD引脚输出同步脉冲。当1个数据写入串行口发送缓冲器时,串行

35、口将8位数据以fosc/12的固定波特率从RXD引脚输出,从低位到高位。发送完后置中断标志TI为1,呈中断请求状态,在再次发送数据之前,必须用软件将TI清0。 85方式方式0接收接收 在满足REN=1和RI=0的条件下,串行口处于方式0输入。此时,RXD为数据输入端,TXD为同步信号输出端,接收器也以fosc/12的波特率采样RXD引脚输入的数据信息。当接收器接收完8位数据后,置中断标志RI=1为请求中断,在再次接收之前,必须用软件将RI清0。图6-24-a 方式0发送时序图6-24-b方式0接收时序882) 方式方式1 在方式1时,串行口被设置为波特率可变的8位异步通信接口。 方式1发送串行

36、口以方式1发送时,数据位由TXD端输出,发送1帧信息为10位,其中1位起始位、8位数据位(先低位后高位)和一个停止位“1”。CPU执行1条数据写入发送缓冲器SBUF的指令,就启动发送器发送。当发送完数据,就置中断标志TI为1。89 方式1所传送的波特率取决于定时器T1的溢出率和特殊功能寄存器PCON中SMOD的值,即方式1的波特率=(2SMOD/32)定时器T1的溢出率。方式1接收 当串行口置为方式1,且REN=1时,串行口处于方式1输入状态。它以所选波特率的16倍的速率采样RXD引脚状态。 图6-25-a 方式1发送时序图6-25-b 方式1接收时序92 3)方式方式2 串行口工作于方式2时

37、,被定义为11位异步通信接口。方式2发送发送数据由TXD端输出,发送1帧信息为11位,其中1位起始位(0)、8位数据位(先低位后高位)、1位可控位为1或0的第9位数据、1位停止位。附加的第9位数据为SCON中的TB8,它由软件置位或清0,可作为多机通信中地址/数据信息的标志位,也可作为数据的奇偶校验位。93方式2接收 当串行口置为方式2,且REN=1时,串行口以方式2接收数据。方式2的接收与方式1基本相似。数据由RXD端输入,接收11位信息,其中1位起始位(0)、8位数据位、1位附加的第9位数据、1位停止位(1)。 方式2的波特率=(2SMOD/64)fosc图7-12 方式2发送时序图7-1

38、3 方式2的接收时序96 3)方式方式3 当SM0SM1=11时,串行口工作在方式3。方式3为波特率可变的9位异步通信方式,除了波特率外,方式3和方式2相同。 方式3的波特率由下式确定: 方式3波特率=(2SMOD/32)定时器T1的溢出率 97 串行通信的串行通信的4种工作方式对应着种工作方式对应着3种波特率。种波特率。 (1)对于方式0,波特率是固定的,为单片机时钟的十二分之一,即fosc/12。 (2)对于方式2,波特率有两种可供选择,即fosc/32和fosc/64。对应于以下公式: 波特率=fosc2SMOD/64五、波特率的设置五、波特率的设置98 (3)对于方式1和方式3,波特率

39、都由定时器T1的溢出率来决定,对应于以下公式: 波特率=(2SMOD/32)(定时器T1的溢出率) 而定时器T1的溢出率则和所采用的定时器工作方式有关,并可用以下公式表示: 定时器T1的溢出率=fosc/12(2K-X) 其中X为定时器T1的计数初值,K为定时器T1的位数,对于定时器方式0,取K=13;对于定时器方式1,取K=16;对于定时器方式2、3,取K=8。99 因此,波特率公式为: )C21(12322SMOD初值波特率KOSCf常用的波特率及计算器初值101 双机通信也称为点对点的串行异步双机通信也称为点对点的串行异步通信。利用单片机的串行口,可以进行通信。利用单片机的串行口,可以进

40、行单片机与单片机、单片机与通用微机间单片机与单片机、单片机与通用微机间的点对点的串行通信。的点对点的串行通信。 若利用若利用8031的串行口进行两个的串行口进行两个8031之间的串行异步通信,串行接口有多种之间的串行异步通信,串行接口有多种连接方式,可以根据实际需要进行选择。连接方式,可以根据实际需要进行选择。6 63 33 MCS-513 MCS-51串行口双机异步通信串行口双机异步通信102 采用采用TTL电平直接在电缆(或双电平直接在电缆(或双绞线)上传输信息,传输距离一般不绞线)上传输信息,传输距离一般不超过超过1.5m。1. TTL1. TTL电平信号直接传输电平信号直接传输 两台8

41、031直接通信103 RS-232C是广泛使用的串行总线标是广泛使用的串行总线标准。准。 RS-232C标准规定的信号电平与标准规定的信号电平与TTL电平电平不匹配不匹配。为了实现。为了实现RS-232C电电平与平与TTL电平的连接,必须进行信号电电平的连接,必须进行信号电平转换。平转换。 实现实现RS-232C电平与电平与TTL电平间互电平间互相转换的接口芯片有相转换的接口芯片有MC1488、MC1489和和MAX232等。等。2. RS-232C2. RS-232C电平信号传输电平信号传输104两台8031采用MC1488和MC1489通信105图6-27 两台8031采用MAX232通信8031TxDRxD8031TxDRxDT2INR2OUTT2OUTR2INR2INT2OUTT2INR2OUTM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论