《单片机技术应用 教案6-3单片机的串口通信.docx》由会员分享,可在线阅读,更多相关《单片机技术应用 教案6-3单片机的串口通信.docx(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单片机应用技术电子教案授课对象二年级第一学期的机电类专业 学生授课日期第21次课教材单片机应用技术出版社机械工业出版 社授课课题单片机的串口通信课时安排2课时教学目标1 .知识:了解并学习单片机的RS232串行通信,熟悉串口工作方式3的应用技巧。2 .技能:学会用编程软件编写程序,绘图软件绘制原理图并调试成功。3 .情感:培养学生分析问题、解决问题的能力,培养学生查询资料的能力和团结协作的意识。教学重点单片机RS232串行通信控制数码管循环显示数字。9教学难点单片机的RS232串行通信工作过程和工作方式使用。课型新授课教学方法工程教学法教学场景机房教学用具多媒体设备、电脑教学过程教学环节教学步
2、骤与内容教学 组织 形式(全 体讲 授、 分组 讲授 等)教 学时 间导入新课单片机是如何实现人机交互的呢,这节课我们就一起来学习单片机的RS232串口通信。全体 讲授103.方式2和方式3(1)特点8位异步串行通信UART接口。具有多机通信功能,两 种方式除了波特率设置不同外,其余功能完全相同。帧结 构为11位,包括起始位0, 8位数据位,1位可编程位 TB8/RB8, 1位停止位。(2)发送操作发送操作前,用指令定义TB8 (如作为奇偶校验位或 地址/数据标志位),由指令MOV SBUF, A将A中的数据 送入SBUF后启动发送操作;在发送操作中,已定义的TB8 位能自动加入待发送的8位数
3、据之后构成第9位,这样组 成的一帧完整数据自动从TXD端异步发送;发送完成后, T1自动置1,请求中断。要继续发送时,TI必须由指令清 0 (CLR TI) o在多机通信的发送操作中,用TB8作地址/数据标志 位。TB8=1,地址帧;TB8=0,数据帧。(3)接收操作在RI=0的前提下,用指令置REN=1,启动一帧数据的 接收,将接收数据的第9位送入RB8。该数据能否接收, 要由SM2和RB8的状态决定:SM2=0时,串行口不看RB8状态,无条件接收。SM2=1是多机通信方式,接收到的RB8是地址/数据标志位: 假设RB8=1,接收的信息是地址,此时RI自动置1,串行 口接收发送来的数据。假设
4、RB8=0,接收的信息是数据。对于SM2=1的从机, RI不置1,此数据丧失;对于SM2=0的从机,SBUF自动接 收发来的数据。4.波特率的设置在串行通信中,收发双方的数据传送率(波特率)要 有一定的约定,在MCS-51串行口的四种工作方式中,方 式0和方式2的波特率是固定的,而方式1和方式3的波 特率是可变的,由定时器门的溢出率与SMOD值来决定。(1)方式0方式0的波特率固定为晶振外冥的1/12,即波特率二 fosc/12 O(2)方式2方式2的波特率由PCON中的选择位SMOD决定,可由 下式表示:(SMOD) =1 时,波特率=fosc/32; (SMOD) =0 时, 波特率二W6
5、4O(3)方式1和方式3当串行口工作于方式1,波特率是可变的,由SMOD和 定时器T1溢出率确定由下式计算,允许用户所取的波特 率范围比拟大。方式1的波特率二(2SM0732) XT1溢出率用定时器门作波特率发生器时,通常选用定时器工 作方式2 (8位自动重装定时初值),但要禁止T1中断 (ET1=O),以免T1溢出时产生不必要的中断。先设T1的 初值为X,那么每过28-x个机那周期,T1就会产生一次 溢出。溢出周期为:12X(28-X) / fo而T1的溢出率为溢 出周期之倒数,所以波特率的计算如式(7-2-2)所示。波特率二(2sxm732) * (f/12) X 1/(2smod-X)
6、(7-2-2)从而得到T1工作在方式2时的初值如式(7-2-3)所示。X=2- ( X f ) / ( 384 X 波特率)(7-2-3)如果串行通信选用很低的波特率,可将定时器置于方 式0(13位定时方式)或方式1(16位定时方式)。在这种情 况下,T1溢出时需要由中断服务程序来重装初值,那么 应该允许T1中断(ET1),但中断响应和中断处理的时间将 会对波特率精度带来一些误差。常用的波特率如表6-7 所示。表6-7常用波特率波 特 率f(MIIz)SM0D定时器T1C/ T方 式重装初 值12方式0最大12IxlO6 方式2最大12 11.059X1XVXVXV375x103 方式1、32
7、11.059111A 00 00 00 00 0A222222222AFFH FDH FDH FAH F4HE8H 1DH 72H FEEBH62500 19200 96004800 24001200137. 5 110211.059211.059211.059211.98210000000110612三、RS-232接口电路RS-232c是EIA在1969年推出的。全名是“数据终端设备 DTE (如计算机和各种终端机)和数据通讯设备DCE (如调制解 调器MODEM)之间串行二进制数据交换接口技术标准”。它适 合于数据传输速率在020 000bps范围内的通信。RS-232是一种串行接口标准
8、,RS-232接口就是符合RS-232 标准的接口,也称RS-232 口、串口、异步或COM (通信)口。 串口的电气特性:1)、RS-232串口通信最远距离是50英尺; 2)、RS232可做到双向传输,全双工通讯,最高传输速率20kbps; 3)、RS-232c上传送的数字量采用负逻辑,且与地对称。逻辑1: -3-15V ,逻辑0: +3+15V。而单片机的工作电压低 电平为0V ,高电平为+5V,因此,为保证通信双方电平匹配, 需要在单片机串口与RS-232接口之间加电平转换器。电平转换 器常用的集成电平转换芯片MAX232可以实现RS-232C / TTL电 平的双向转换。MAX232是
9、的一款兼容RS-232标准的芯片。该 器件包含2个驱动器、2个接收器和一个电压发生器电路,提 供TIA/E1A-232-F电平。该器件符合TIA/EIA-232T;标准,每 一个接收器将TIA/EIA-232-F电平转换成5V TTL/CMOS电平, 每一个发送器将TTL/CMOS电平转换成TTA/ETA-232-F电平。其 芯片引脚和原理图如图6-4所示。MAX232TTL/CMOS 输入C 倍压锯C2+10 -10VC2-电压反相器_15图6-4 MAX232芯片引脚和原理图它只使用单一的+ 5V电源供电,配接4个1 “F电解电容 即可完成RS-232电平与TTL电平之间的转换。将89C5
10、1芯片的 RXD(P3.0)引脚与MAX232的信号输入端T2in (10脚)连接, TXD(P3. 1)引脚与MAX232的信号输出端T2out (7脚)连接;将 MAX232的信号输出端T2out(7脚)与RS-232接口的2号脚(RXD) 连接,MAX232的信号输入端T2in (10脚)与RS-232接口的3 脚(TXD)连接;同时将RS-232接口的脚脚(GND)接地即可。RS232接口有两种结构:一种是9针,-种是25针。实际 上DB25中有许多引脚很少使用,在计算机与终端通讯中一般只图6-4 MAX232芯片引脚和原理图它只使用单一的+ 5V电源供电,配接4个1 “F电解电容 即
11、可完成RS-232电平与TTL电平之间的转换。将89C51芯片的 RXD(P3.0)引脚与MAX232的信号输入端T2in (10脚)连接, TXD(P3. 1)引脚与MAX232的信号输出端T2out (7脚)连接;将 MAX232的信号输出端T2out(7脚)与RS-232接口的2号脚(RXD) 连接,MAX232的信号输入端T2in (10脚)与RS-232接口的3 脚(TXD)连接;同时将RS-232接口的脚脚(GND)接地即可。RS232接口有两种结构:一种是9针,-种是25针。实际 上DB25中有许多引脚很少使用,在计算机与终端通讯中一般只使用3-9条引线。最常用的9条引线的信号内
12、容见表6-8所示。 两个串口连接时,接收数据针脚与发送数据针脚相连,彼此交 叉,信号地对应相接即可。传输线采用屏蔽双绞线。如图6-5所 不ORXD红色线 蓝色线RXDTXD蓝色扇 X红色线Tx6GNB屏蔽线 屏蔽线图6-5 9针传输线连接示意图表6-8 DB9和DB25的常用信号1却说明DB9 引 脚DB25 引脚信号名 称符号流向功能32发送数 据TXDDTE-DCEDTE发送串 行数据23接收数 据RXDDTE-DCEDTE接收串 行数据74请求发 送RTSDTE-DCEDTE请求 DCE将线路 切换到发送 方式85允许发 送CTSDTE一DCEDCE告诉 DTE线路已 接通可以发 送数据
13、66数据设 备准备 好DSRDTE一DCEDCE准备好57信号地SGND信号公共地18载波检 测DCDDTE一DCE表不DCE接 收到远程载 波420终备 据准 数端好DTRDTE-DCEDTE准备好922振铃指 示RIDTE一DCE表示DCE与 线路接通, 出现振铃数据格式为HOlOlOlOOBo1. RS-232串口通信参数(1)波特率:RS-232-C标准规定的数据传输速率为每秒 50、75、100、150、300、600、1200、2400、4800、9600. 19200 波特。(2)数据位:标准的值是5、7和8位,如何设置取决于 你想传送的信息。比方,标准的ASCII码是。127
14、(7位); 扩展的ASCH码是0-255 (8位)。(3)停止位:用于表示单个包的最后一位,典型的值为 1, 1.5和2位。由于数是在传输线上定时的,并且每一个设备 有其自己的时钟,很可能在通信中两台设备间出现了小小的不 同步。因此停止位不仅仅是表示传输的结束,并且提供计算机 校正时钟同步的机会。(4)奇偶校验位:在串口通信中一种简单的检错方式。 对于偶和奇校验的情况,串口会设置校验位(数据位后面的一 位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例 如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑 高的位数是偶数个。如果是奇校验,校验位位1,这样就有3 个逻辑高位。2. RS
15、-232串口通信的传输格式串行通信中,线路空闲时,线路的TTL电平总是高,经反 向RS232的电平总是低。一个数据的开始RS232线路为高电平, 结束时Rs232为低电平。数据总是从低位向高位一位一位的传 输。示波器读数时,左边是数据的高位。例如,对于16进制数 据55aaH,当采用8位数据位、1位停止位传输时,它在信号线 上的波形如图6-6 TTL电平和RS-232电平所示。 55H=01010101B,取反后OOOIOB,加入一个起始位1, 一个 停止位 0, 55H 的数据格式为 1010101010B; aaH=10101010B, 取反后01010101B,加入一个起始位1, 一个停
16、止位0, 55H的图6-6 TTL电平和RS-232电平3. RS-232串口通信的接收过程异步通信:接收器和发送器有各自的时钟;同步通信:发 送器和接收器由同一个时钟源控制。RS232是异步通信。(1)开始通信时,信号线为空闲(逻辑1),当检测到由 1到0的跳变时,开始对“接收时钟”计数。(2)当计到8个时钟时,对输入信号进行检测,假设仍为 低电平,那么确认这是“起始位”,而不是干扰信号。(3)接收端检测到起始位后,隔16个接收时钟,对输入 信号检测一次,把对应的值作为DO位数据。假设为逻辑1,作为 数据位1;假设为逻辑0,作为数据位0。(4)再隔16个接收时钟,对输入信号检测一次,把对应
17、的值作为D1位数据。直到全部数据位都输入。(5)检测校验位P (如果有的话)。(6)接收到规定的数据位个数和校验位后,通信接口电路 希望收到停止位S(逻辑1),假设此时未收到逻辑1,说明出现了 错误,在状态寄存器中置“帧错误”标志。假设没有错误,对全 部数据位进行奇偶校验,无校验错时,把数据位从移位寄存器 中送数据输入寄存器。假设校验错,在状态寄存器中置奇偶错标教学后记志。(7)本帧信息全部接收完,把线路上出现的高电平作为 空闲位。(8)当信号再次变为低时,开始进入下一帧的检测。单片机常用IL 0592M的的晶振,波特率为9600BPS每位位 宽 tl=l/9600s,晶振周期 t2=l/lL
18、0592/1000000S,单片机机 器周期t3=12*t2, tl/t3=96,即对于9600BPS的串口,单片机 对其以96倍的速率进行采样。如果单片机晶振用的不正确,会 对串口接受产生误码。课堂小结本节课重点任务是掌握RS232串口通讯工作原理,并实现人机交 换。全体讲授5课后作业1.熟悉RS232串口通信工作原理,并控制实现0-9数字。独立 完成5利用工程教学,学生有明确的学习目标,根据任务完成情况及时检验学习效果。新课学习【任务描述】单片机RS232串行通信控制数码管循环显示数字09。【任务分析】Proteus内置虚拟终端(Virtual Terminal)的RXD连接单片机TXD
19、引脚,通过内置虚拟终端(Virtual Terminal)向单片机发送数据,当在 虚拟终端输入09时,数码管相应显示09。注意不要将虚拟终端(Virtual Terminal)连接MAX232的T1OUT引脚,这样显示的是乱码,虚拟终 端(Viriual Terminal)要宜接连接单片机串口,另外还要注意将单片机 晶振设为11.0592MHZ,而且虚拟终端(Virtual Terminal)的波特率等 设置要与程序中的设置相同。通过设置单片机工作于串口模式3, AT89C51串行门与MAX232 连接,电平转换后与PC机事行口相连,串行数据通过单片机的10脚 P3.0/RXD 输出与 MAX
20、232 的 RIOUT (12 脚)相连,11 脚 TXD (P3.1) 与MAX232的T2IN (10脚)相连,以方式3进行数据的串行口发送。 SCON中的TB8写入输出移位寄存器的第9位,8位数据装入SBUF寄 存器,开始时,先把起始位0输出到TXD引脚,然后现发送数据位D0 位到TXD引脚,之后每一个移位脉冲都使输出移位寄存器的各位向低 端移动一位,并由TXD引脚输出,发送完毕后硬件会自动将TI置位。 在发送下一字节前,TI要用软件清零。我们在内置虚拟终端(Virtual Terminal)输入不同的数字(09),在数码管显示相应的数字。【任务实施】根据任务分析,设计出硬件电路图,在P
21、roteus上进行绘 制,然后在Keil软件中采用C语言对单片机进行编程,使用 Proteus进行仿真和调试。活动1绘制电路原理图单片机RS232串行通信控制数码管循环显示数字09的电 路设计如图6-4所示,AT89c51串行口与MAX232连接,电平转 换后与PC机串行相连,串行数据通过单片机的10脚 P3. O/RXD 输出与 MAX232 的 R10UT( 12 脚)相连,11 脚 TXD(P3. 1) 与MAX232的T2IN (10脚)相连,AT89C51的P0 口与数码管相 连接,排阻RP1是上拉电阻。全体 讲 授、 教师 演 示、 上机 实训60图6-4单片机RS232串行通信控
22、制数码管循环显示数字。9电路图图6-4所示电路图中的元器件参数见表6-6活动2编写程序文件串行口工作之前,应对其进行初始化,主要是设置产生波特率的定 时器1、串行口控制和中断控制具体步骤如下;.确定T1的工作方式(编程TMOD寄存器);1 .计算T1的初值,装载TH1、TL1;.启动T1 (编程TCON中的TRI位);2 .确定串行口控制(编程SCON寄存器)。串行口在中断方式工作时,要进行中断设置(编程IE、IP寄存器)。单片机串行通信控制数码管循环显示数字。9的C语言程序如下 所示:#include包含单片机寄存器的头文件unsignedcharcodeTab =0x3F.0x06,0x5
23、B.0x4F,0x66.0x6D,0x7D,0x07. 0x7F, 0x6F; 数码管显示控制码/*串行口发送个字节数据*/void Send(unsigned char dat)(SBUF=dat;while(TI=O);TI=O;)/*延时 */ void delay(void) (unsigned char m,n;for(m=0;m200;m+) for(n=0;n250;n+); ) /* 主函数 */ void main(void) ( unsigned char i;TMOD=0x20; /TMGD=0()10 0000B,定时器 T1 工作于方式 2SCON=OxcO; /SC
24、ON=HOOOOOOB,串口工作方式 3,SM2置0,不使用多机通信,TB8置0PCON=OxOO; /PCON=OOOOOOOOB,波特率 9600THI=0xfd;根据规定给定时器T1赋初值TLl=0xfd;/根据规定给定时器T1赋初值TRI = 1;启动定时器T1while(l)( for(i=0;i10;i+)模拟检测数据(Send(Tabi); 发送数据 iP0=TabiJ;发送数据i在P0 口输出dclayO;延时发送一次检测数据) 活动3仿真运行编写好程序文件后,生成hex文件,在Proleus的单片机中加载该hex文件,点击“运行”按钮,会看到数码管由09 循环显示。【知识链接
25、】一、MCS-51单片机串行口通信技术MCS-51单片机内部有一个全双工的串行通信口,它有 两根串行通信传输线:输入线RXD(P3.0)和输出线 TXD(P3. DoMCS-51单片机有两个物理上独立的发送缓冲寄存器 和接收缓冲寄存器,它们是特殊功能寄存器SBUF,地址为 (99H),发送缓冲器只能写入不能读出;接收缓冲器只能 读出不能写入。两个串行数据缓冲器通过特殊功能寄存器 SBUF来访问。当执行一条向SBUF写入数据指令时,那么将数据写入 发送缓冲寄存器,开启发送过程。在发送时钟的控制下, 先发送一个低电平的起始位,紧接着把发送数据寄存器中 的内容按低位在前,高位在后一位一位的发送出去,
26、最后 发送一个高电平的停止位。一个字符发送完毕,串行控 制寄存器中的发送中断标志位TI置位;对于方式2和方 式3,当发送完数据后,要把串行口控制寄存器SCON中的 TB8位发送出去后才发送停止位。当对它执行读SBUF指令 时,那么接收缓冲寄存器接收数据。接收数据时,串行数据 的接收受到串口控制寄存器SCON中的允许接收位REN控 制。当REN置1,接收控制就开始工作,对接收数据线进 行采样,当采样到从“1”到“0”的负跳变时,接收控制 器开始接收数据。为了减少干扰的影响,接收控制器在接 收数据时,将1位的传送时间分为16等份,用当中的7、 8、9三个状态对接收数据线进行采样,三次采样当中,当
27、两次采样为低电平,就认为接收的是“0” ;次采样为高 电平,就认为是接收的是“1”。如果接收到的起始位的值不是“0”,那么起始位无效,复位接收电路。如果起始 位为“0”,那么开始接收其他各位数据。接收的前8位数 据依次移入输入移位寄存器,接收的第9位数据置入串口 控制寄存器的RB8位中。如果接收有效,那么输入移位寄存 器中的数据置入接收数据寄存器中,同时控制寄存器中的 接收中断位RI置1,通知CPU来取数据。MCS-51单片机 的CPU中还有两个特殊功能寄存器SC0N和PCON,分别用 于控制串行口的工作方式以及波特率,定时器T1用作波 特率发生器,对数据的接收、发送均可触发中断系统,使 用十
28、分方便。用户可以通过编程设置SCON和PCON,来实 现对串行通信系统的管理控制。1. SCON串行通信控制寄存器串行口控制寄存令SCON用于串行通信的控制,其字节 地址为98H。包含串行口工作方式选择位、接收发送控制 位以及串行口状态标志位,其格式如表6-4所示:表6-4串行口控制寄存器SCON格式SCOND7D6D5D4D3D2D1D0位名 称SMOSM1SM 2RE NTB 8RB8TIRI位地 址9FH9E H9D9C H9B H9AH99 H98 H各控制位的含义如下。(1) SMO、SM1串行口工作方式选择位,其定义如 表6-5所示。表6-5串行口工作方式定义SMO SMI工作方式
29、功能说明波特率00方式08位移位寄存方式f/1201方式18位UART(异步收发)可变(T1溢出率/n)10方式29位UAI1T(异步收发)f / 64 或 f/3211方式39位LART(异步收发)可变(T1溢出率/n)(2) SM2是多机通信控制位。在方式2或方式3处于接收时,如果SM2设置为“1”,那么在接收到的第9位数据(RB8)为“0”时,那么输入移位寄存器中接收的数据不能 移入到接收数据寄存器SBUF,接收中断标志位RT不置1, 接收无效;如果接收到的第9位数据(RB8)为“1”时,那么 输入移位寄存器中接收的数据移入到接收数据寄存器 SBUF,接收中断标志位RI置“1”,接收有效
30、。当SM2为 “0”时无论接收到的第9位数据(RB8)是“1”还是“0”, 输入移位寄存器中接收的数据都不能移入到接收数据寄 存器SBUF,同时接收中断标志位RI置1,接收都有效。(3) REN 允许接收位。当REN=1,那么允许接收;当 REN=0,那么禁止接收。(4) TB8 在方式2或方式3中,TB8为发送数据的第 9位,它可以用来做奇偶校验位。在多机通信中,它往往 用来表示主机发送的是地址还是数据:TB8-0为数据, TB8=1为地9。它可由软件置位或复位。在方式0和方式1 中该位未用。(5) RB8在方式2和方式3中要接收到的第9位数据。 在方式1中,假设SM2= 0”,那么RB8是
31、已接收到的停止位。 在方式0中,不使用RB8o(6) TI发送中断标志位。在一组数据发送完后被硬 件置位为1。在方式。中,串行发送第8位结束时,由硬 件使TI二“1”;在其他3种方式中,在停止位开始发送时, 由硬件置位,使Trl,表示一帧数据发送完毕。可通过软 件查询TI标志位,也可经中断系统请求中断。TI不能自 动清零,必须由软件清零。(7) RI接收中断标志位。在方式0中,接收完第8 位数据后,由硬件使RI置位;在其他3种方式中,如果 SM2控制位允许,那么接收到停止位或第9位时,由硬件置位RIO RI = 1,表示一帧信息接收结束。可通过软件查询 RI标志位,也可经中断系统请求中断。RI
32、不能自动清零,必须由软件清零。2. PCON电源控制寄存器PCON的地址为87H,最高位SMOD位,是串行波特率的培增位,其格式如表6-6所示:表6-6电源控制寄存器PCON格式PCOND7D6D5D4D3D2D1D0位名称SMOD当SMOD=1时,使串行口方式1、方式2、方式3的波 特率加倍;当SMOD=O时,使串行口波特率不加倍。一、MCS-51单片机串行口的工作方式1.串行通信方式0(1)特点串行口为同步移位寄存器的输入输出方式,常用于串 行口外接移位寄存器以扩展I/O 口,也可以外接串行同 步输入输出设备。串行数据由RXD(P3.0)端子输入或输出, 同步移位脉冲由TXD(P3. 1)
33、端子送出。发送和接收均为8 位数据,低位在前,高位在后。有固定的波特率,为fosc/120(2)发送操作当执行写入发送缓冲器SBUF (99H)指令后,就启动 串行口发送器,串行口即把8位数据以fosc/12的波特率将 输出移位寄存器的内容逐次从RXD(P3.0)端串行输出(低 位在前),并在TXD(P3. 1)脚输出fosc/12的移位脉冲。发 送完8位数据后,中断标志位TI置1,请求中断。要继续 发送时,TI必须由指令清0。(3)接收操作用指令置REN=1 (同时RI=0),可以启动一帧数据的 接收。RXD(P3.0)端的输人数据(低位在前),同样由 TXD(P3. 1)脚输出 W12的移
34、位脉冲。接收完一帧数据中 断标志RI置1,请求中断。想继续接收时要用指令将R1清Oo2.串行通信方式1(1)特点串行通信方式1亦称为8位异步通信接口(UART)。传 送一帧信息为10位,包括1位起始位“0”,8位数据位(先 低位,后高位)和1位停止位“1”,停止位进入SCON的 RB8O波特率由软件设置,由T1的溢出率决定。(2)发送操作当执行写入发送缓冲器SBUF (99H)指令后,就启动 串行发送器,在发送移位脉冲时钟(由波特率决定)的 同步下,从TXD(P3. 1)脚先送出起始位,然后是8位数据 位,最后是停止位。发送完一帧10位数据后,TI置1, 请求中断。要继续发送时,TI必须由指令
35、清0。方式1发送时的移位时钟是由定时器n送来的溢出信 号经过16或32分频(取决于SMOD位)而取得的。因此,方 式1的波特率是可变的。(3)接收操作用指令置REN=1 (同时RI=0),启动一帧数据的接收。 接收器以16倍波特率的速率对串行口采样RXD(P3.0)端, 当采样到1至。的跳变时,说明接收到串行数据的起始位, 开始接收一帧数据。接收完一帧信息后,在RIR并且 SM2=0(或接收到的停止位为“1”)时,那么将接收移位寄存 器中的8位数据装入接收缓冲器SBUF,收到的停止位装入 SCON中的RB8,此时RI置1,请求中断并通知CPU从SBUF 中取走已接收到的数据。想继续接收时要用指令将RI清 Oo在接收操作中,接收移位脉冲的频率和发送波特率相 同,也是由定时器T1的溢出信号经16或32分频(由SMOD 位决定)而得到的。