单片微型计算机原理及其应用电子教案2_第1页
单片微型计算机原理及其应用电子教案2_第2页
单片微型计算机原理及其应用电子教案2_第3页
单片微型计算机原理及其应用电子教案2_第4页
单片微型计算机原理及其应用电子教案2_第5页
已阅读5页,还剩97页未读 继续免费阅读

下载本文档

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

文档简介

1、第2章 中断、定时/计数器与串行通信2.1 中断系统结构及管理n2.1.1 中断请求与控制外部中断外部中断2个(中断接入)个(中断接入)定时计数中断定时计数中断2个(个(3个)个)串行中断(输入、输出)串行中断(输入、输出)2.1.2 中断系统的结构2.1.3 中断源nINT0:由由P3.2端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。INT1:由由P3.3端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。nT0:定时:定时/计数器计数器0中断,由中断,由T0回零溢出引起。回零溢出引起。 T0允许计允许计数后,对数后,对P3.4脚(或机器周期)采样负跳变,从初值

2、开始脚(或机器周期)采样负跳变,从初值开始加加1,直至溢出,直至溢出,TF0=1.向向CPU请求中断,请求中断, CPU相应中相应中断后,由硬件清断后,由硬件清0 TF0。 T1:定时:定时/计数器计数器1中断,由中断,由T1回零溢出引起。回零溢出引起。n串行串行I/O中断:通过中断:通过P3.0/P3.1完成一帧字符发送完成一帧字符发送/接收引起接收引起中断。由中断。由TI/RI描述发送描述发送/接收中断标志位。接收中断标志位。 CPU相应中断相应中断后,硬件不清后,硬件不清0 TI/RI。2.1.4 中断控制n1中断允许寄存器中断允许寄存器IE(A8H)nIE在特殊功能寄存器中,字节地址在

3、特殊功能寄存器中,字节地址A8H,位地,位地址分别是址分别是A8HAFH。IE控制控制CPU对中断源总对中断源总的开放或禁止以及每个中断源是否允许中断的开放或禁止以及每个中断源是否允许中断。0:关INT 中断01:开INT 中断00:关T 中断1:开T 中断001:开T 中断0:关T 中断0:关INT 中断1:开INT 中断11110:关T 中断1:开T 中断221:开所有中断0:关所有中断1:开串行口中断0:关串行口中断位地址IEEAAFADETACESABETAAEXA9ETA8EX001122中断优先寄存器中断优先寄存器IP(B8H)IP在特殊功能寄存器中,字节地址为在特殊功能寄存器中,

4、字节地址为B8H,位地,位地址分别是址分别是B8HBFH,IP用来锁存各中断源用来锁存各中断源优先级的控制位,优先级的控制位, 2.1.5 中断响应过程n单片机在每个机器周期的单片机在每个机器周期的S5P2期间,顺序采样每期间,顺序采样每个中断源,个中断源,CPU在下一个机器周期在下一个机器周期S6期间按优先期间按优先级顺序查询中断标志,如查询到某个中断标志为级顺序查询中断标志,如查询到某个中断标志为1,将在再下一个机器周期,将在再下一个机器周期S1期间按优先级进行期间按优先级进行中断处理。中断处理。n中断得到响应后自动清除中断标志,由硬件将程中断得到响应后自动清除中断标志,由硬件将程序计数器

5、序计数器PC内容压入堆栈保护,然后将对应的中内容压入堆栈保护,然后将对应的中断矢量装入程序计数器断矢量装入程序计数器PC,使程序转向中断矢量,使程序转向中断矢量地址单元中去执行相应的中断服务程序。地址单元中去执行相应的中断服务程序。 n下列任何一种情况存在中断申请将被封锁:下列任何一种情况存在中断申请将被封锁:n(1)CPU正在执行一个同级或高一级的中断正在执行一个同级或高一级的中断服务程序。服务程序。n(2)当前正在执行的那条指令还未执行完。)当前正在执行的那条指令还未执行完。n(3)当前正在执行的指令是)当前正在执行的指令是RETI或对或对IE,IP寄存器进行读寄存器进行读/写指令,执行这

6、些指令后至少写指令,执行这些指令后至少再执行一条指令才会响应中断再执行一条指令才会响应中断2.1.5外部中断外部中断由由P3.2端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。由由P3.3端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。外部中断寄存器外部中断寄存器TCON(88H)IE1:外部中断外部中断1(INT1,P3.3)请求源标志,)请求源标志, IE1=1请求中断。请求中断。 当当IE1=1时,外部中断时,外部中断1向向CPU请求请求中断,中断, CPU相应中断后,由硬件清相应中断后,由硬件清0 IE1。IE0:外部中断外部中断0 (INT0,P3.2

7、)请求源标志,)请求源标志, IT1:外部中断源外部中断源1触发方式控制位。触发方式控制位。 IT1=0时为电平时为电平触发方式,触发方式,当当P3.3脚输出为低电平时,脚输出为低电平时,IE1=1,当当P3.3脚输出为高电平时,脚输出为高电平时,IE1=0。 IT1=1时时为为边沿触发方式,边沿触发方式,只有两个采样周期监测到负跳变只有两个采样周期监测到负跳变时时IE1=1。IT0:外部中断源外部中断源0触发方式控制位。同上触发方式控制位。同上例:当外部按键每按例:当外部按键每按1下,下,P1的小灯左移亮。的小灯左移亮。ORG 0000HLJMP MAINORG 0003HRL AMOV P

8、1,A RETIMAIN:SETB EASETB EX0SETB IT0MOV A,#0FEHMOV P1,ASJMP $例:当外部按键每按例:当外部按键每按1下,下,P1.0的小灯亮一秒。的小灯亮一秒。ORG 0000HLJMP MAINORG 0013HSETB PI.1LL:SETB P1.0;LCALL DELAY1SCLR P1.0LCALL DELAY1SSJMP LLRETIMAIN:SETB EASETB EX1SETB IT1SJMP $n例:当外部例:当外部(P3.3)按键每按按键每按1下,下,P1.0的小灯闪的小灯闪3次。次。n作业:当外部按键每按作业:当外部按键每按1下

9、,把下,把A的内容的内容+1,并,并送送P1口显示。(硬件口显示。(硬件+软件)软件)n问:如何停止中断。问:如何停止中断。n实践:设(实践:设(30H)=0,当外部,当外部(P3.2)按键每按按键每按1下,(下,(30H)=(30H)+1,并将结果送,并将结果送P1口显口显示。当示。当30H计满时计满时,停止显示停止显示, P1口全暗。口全暗。中断程序的其他写法(1)nORG 0000HnSETB IT0nLOP:JNB TF0,LOPnCLR TF0nSETB P1.0nLCALL DELAY1SnCLR P1.0nSJMP LOP中断程序的其他写法(2)nORG 0000HnLOP:JN

10、B P3.2,LOPnLOP1:JB P3.2,LOP1nSETB P1.0nLCALL DELAY1SnCLR P1.0nSJMP LOPn例:当外部有意外操作下,例:当外部有意外操作下,30H的内容的内容+1。nORG 0001HnLJMP MAINnORG 0003HnINC 30HnRETInMAIN:SETB EAnSETB EX0nSETB IT0nSJMP $多外部中断源设计2.2 定时/计数器结构特点及控制n2.2.1 定时定时/计数器结构计数器结构n定时定时/计数器简称定时器,计数器简称定时器,8031单片机有单片机有2个个16位的定时位的定时/计数器:定时器计数器:定时器0

11、(T0)和定时器)和定时器1(T1)。它们都有定时器或事件计数的功能,)。它们都有定时器或事件计数的功能,可用于定时控制、延时、对外部事件计数和检可用于定时控制、延时、对外部事件计数和检测等场合。测等场合。nT0由由2个特殊功能寄存器个特殊功能寄存器TH0和和TL0构成构成nT1则由则由TH1和和TL1构成。构成。n作计数器时,通过引脚作计数器时,通过引脚T0(P3.4)和)和T1(P3.5)对外部脉冲信号计数,当输入脉冲信)对外部脉冲信号计数,当输入脉冲信号从号从1到到0的负跳变时,计数器就自动加的负跳变时,计数器就自动加1。2.2.2 定时/计数器控制寄存器n定时器共有定时器共有2个控制寄

12、存器个控制寄存器TMOD和和TCON,由软件写入由软件写入TMOD和和TCON 两个两个8位寄存器,位寄存器,设置各个定时器的操作模式和控制功能。设置各个定时器的操作模式和控制功能。1工作模式控制寄存器TMOD(89HGATEC/TM10MGATE C/T1M0M控 制 T1控 制 T089H和T 类同01M0M00011011方 式方式0方式1方式2方式301定时器模式计数器模式01与INT 无关00与INT 有关2定时器控制寄存器TCON(88H)TCON位地址0DD1D2D3D4D5D6D7IT0IE0IT11IETR0TF0TR1TF188898A8B8C8D8E8F见下一节00:停T

13、 计数01:启T 计数00:无T 中断(硬件复位)1:有T 溢出中断00:无T 中断(硬件复位)10:停T 计数1:有T 溢出中断1:启T 计数1112.2.3 定时/计数器工作方式n每个定时每个定时/计数器还有计数器还有4种工作模式,也就是每种工作模式,也就是每个定时器可构成个定时器可构成4种电路结构模式。种电路结构模式。n在模式在模式0、1和和2,T0和和T1的工作模式相同,在的工作模式相同,在模式模式3,两个定时器的模式不同。下面以,两个定时器的模式不同。下面以T1为为例,分述各种工作模式的特点和用法。例,分述各种工作模式的特点和用法。定时/计数器工作方式0n计数位数计数位数8+5=13

14、n计数范围计数范围08Kn计时时间计时时间08MS(FSOC=12MHZ)n计数初值计算计数初值计算A=(8K-计数值计数值)=1E0CHn例:在例:在P1.0 输出输出1MS的方波的方波计数器初值计数器初值TC的计算的计算n把计数器计满为零所需要的计数值设定为把计数器计满为零所需要的计数值设定为C,计数初,计数初值设定为值设定为TC,由此可得到公式:,由此可得到公式: TC= 213 -C 定时器初值定时器初值TC的计算的计算n在定时器模式下,计数器由单片机主脉冲经在定时器模式下,计数器由单片机主脉冲经12分频后分频后计数。因此,定时器定时时间计数。因此,定时器定时时间T的公式:的公式: T

15、=(213-TC)*T计数计数 上式也可写成:上式也可写成:TC =213-(T/ T计数计数) T计数是单片机振荡周期计数是单片机振荡周期TCLK的的12倍;倍; ORG 0000HLJMP MAINORG 000BHCPL P1.0MOV TH0,#0F0HMOV TL0,#0CHRETIMAIN:SETB EASETB ET0MOV TMOD,#00HMOV TH0,#0F0HMOV TL0,#0CHSETB TR0SJMP $ 定时/计数器工作方式1n计数位数计数位数8+8=16n计数范围计数范围064Kn计时时间计时时间064MS(FSOC=12MHZ)n计数初值计算计数初值计算A=

16、(64K-计数值计数值)n例:在例:在P1.0 输出输出1MS的方波的方波ORG 0000HLJMP MAINORG 000BHCPL PI.0MOV TL0,#06HMOV TH0,#0FEHRETIMAIN: MOV TMOD,#01HMOV TL0,#06H MOV TH0,#0FEHSETB EASETB ET0SETB TR0SJMP $定时/计数器工作方式2n计数位数计数位数8n计数范围计数范围0256n计时时间计时时间0250US(FSOC=12MHZ)n计数初值计算计数初值计算A=(256-计数值计数值)n例:在例:在P1.0 输出输出500uS的方波的方波ORG 0000HL

17、JMP MAINORG 000BHCPL P1.0RETIMAIN:SETB EASETB ET0MOV TMOD,#02HMOV TH0,#06HMOV TL0,#06HSETB TR0SJMP $ 计数100次响一下蜂鸣器ORG 0000HLJMP MAINORG 000BHSETB P1.0LCALL D3SCLR P1.0RETIMAIN:SETB EASETB ET0MOV TMOD,#06HMOV TH0,#09CHMOV TL0,#09CHSETB TR0SJMP $ 定时/计数器工作方式32.2.4 定时/计数器常数的计算n1计数器初值的计算计数器初值的计算n把计数器计满为零所

18、需要的计数值设定为把计数器计满为零所需要的计数值设定为C,计数初值设定为计数初值设定为TC,由此可得到公式:,由此可得到公式:nTC=M-Cn式中,式中,M为计数器模值,该值和计数器工作方为计数器模值,该值和计数器工作方式有关。在方式式有关。在方式0时时M为为213;在方式;在方式1时时M为为216;在方式;在方式2和方式和方式3时时M为为28。n2定时器初值的计算定时器初值的计算n在定时器模式下,计数器由单片机主脉冲经在定时器模式下,计数器由单片机主脉冲经12分频后计数。因此,定时器定时时间分频后计数。因此,定时器定时时间T的公式:的公式:nT=(M-TC)T计数计数n 上式也可写成:上式也

19、可写成:TC=M-T/ T计数计数n式中,式中,M为模值,和定时器的工作方式有关;为模值,和定时器的工作方式有关;T计数是单片机振荡周期计数是单片机振荡周期TCLK的的12倍;倍;TC为为定时器的定时初值定时器的定时初值2.3 定时/计数器及中断系统综合应用n【例】设【例】设MCS-51单片机系统时钟频率单片机系统时钟频率CLK为为6MHZ,请编出利用定时,请编出利用定时/计数器计数器T0在在P1.0引脚上产生周期为引脚上产生周期为2秒,占空比为秒,占空比为50%的方波的方波信号的程序信号的程序n(1)主程序)主程序任务:任务:1)T0工作方式的设定:工作方式的设定: 选择方式选择方式1(16

20、位位方式)(最大定时方式)(最大定时131ms) 2)定时常数的设定:)定时常数的设定: TC=216-100ms/2s =15536=3CB0H;即:即:TH0应装应装3CH,TL0应装应装B0H。3)中断管理:)中断管理: 允许允许T0中断,开放总中断中断,开放总中断 即:即:IE应装应装10000010B。 4)启动定时器)启动定时器T0: SETB TR0 5)设置软件计数器初值:(如使用)设置软件计数器初值:(如使用R7)即即R7应装应装0AH 6)动态停机:)动态停机:SJMP $主程序如下:主程序如下:MAIN:MOV TMOD,#01H;设定;设定T0为方式为方式1MOVTH0

21、,#3CH;装入定时常数高;装入定时常数高8位位MOVTL0,#0B0H;装入定时常数低;装入定时常数低8位位MOVIE,#82H;开放;开放T0中断中断SETBTR0;启动;启动T0MOVR7,#10;设置软件计数器;设置软件计数器SJMP$(2)中断服务程序任务:任务:1)恢复)恢复T0常数;常数; 2)软件计数器减)软件计数器减1; 3)判断软件计数器是否为)判断软件计数器是否为0。为。为0时,改变时,改变P1.0状状态,并恢复软件计数器初值;不为态,并恢复软件计数器初值;不为0时中断返回。时中断返回。程序如下:程序如下:TOINT:MOV TL0,#0B0H;恢复定时常数;恢复定时常数

22、MOVTH0,#3CH; DJNZR7,NEXTCPLP1.0 MOVR7,#10NEXT:RETI其他程序n门控位使用:计算某一高电平的持续时间门控位使用:计算某一高电平的持续时间n(30h,秒秒),(31h分分),(32h时时),计算机,计算机1秒后对时秒后对时钟处理。钟处理。n综合应用定时和计数的程序综合应用定时和计数的程序n记数应用记数应用例例:音乐的应用音乐的应用n音频产生的原理音频产生的原理n如:如:1 F=523 ;T=1/523=1923US;;T/2=956US(956)n音长产生的原理音长产生的原理n设:设:1拍拍=0.4秒秒;1/4拍拍=0.1秒秒,1/8拍拍=0.05秒

23、秒,最小最小时间单位时间单位,通过延时达到节拍通过延时达到节拍n表格编码表格编码;音频计数表音频计数表;音乐编码表音乐编码表(音符音符+节拍节拍)n设计过程设计过程n查音乐编码表查音乐编码表,确定延时时间及音频确定延时时间及音频,修改计数器修改计数器,发音发音.n延时时间结束延时时间结束,查下一组编码查下一组编码,继续操作继续操作.直到下结直到下结束束.电子钟应用主程序软件资源软件资源n30H,31H,32H 存放秒、时、分存放秒、时、分n78H-7FH存放显示区。存放显示区。nR0,R1,R7,R6,R5,R4n定时器定时器0,定时定时50MS硬件驱动硬件驱动 三级管三级管,集成芯片集成芯片

24、 主程序MAIN:MOV TMOD,#01H;设定;设定T0为方式为方式1MOVTH0,#3CH ;装入定时常数高;装入定时常数高8位位MOVTL0,#0B0H;装入定时常数低;装入定时常数低8位位MOVIE,#82H;开放;开放T0中断中断SETBTR0;启动;启动T0MOVR7,#14H;设置软件计数器;设置软件计数器 MOV 30H,#00H;50 MOV 31H,#00H;59 MOV 32H,#00H;23;SJMP$SS:LCALL DIR;显示程序显示程序 ;键盘处理键盘处理SJMP SSBCD码调整码调整,送显存送显存程序TOINT:PUSH A MOV TL0,#0B0H;恢

25、复定时常数;恢复定时常数MOV TH0,#3CH ; DJNZ R7,NEXT INC 30H MOV R7,#14H;对秒调整对秒调整LCALL AD1;时时,分分,秒调整秒调整LCALL BCD;BCD码调整码调整,送显存送显存 NEXT: POP ARETIn时时,分分,秒调整秒调整程序AD1: MOV A, 30H CJNE A,#60,NEXT1 INC 31H MOV 30H,#00H ;对分调整对分调整 MOV A, 31H CJNE A,#60,NEXT1 INC 32H MOV 31H,#00H;对时调整对时调整 MOV A, 32H CJNE A,#24,NEXT1 MOV

26、 31H,#00H MOV 32H,#00H;对对24时调整时调整NEXT1:RET30h,31h,32h送显存显示送显存显示(78h,79h7dh).BCD:MOV A,30hMOV B,#0AhDIV ABMOV 78H,BMOV 79H,AMOV A,31hMOV B,#0AhDIV ABMOV 7AH,BMOV 7BH,AMOV A,32hMOV B,#0AhDIV ABMOV 7CH,BMOV 7DH,ARET把显存的内容送把显存的内容送LED显示显示.(78h,79h7dh).DIR:MOV R0,#78HMOV R6,#06HMOV R5,#0FEHLOP:MOV A,R0ADD

27、 A, #MOVC A,A+PCMOV P1,AMOV A,R5MOV P2,ARL AMOV R5,ALCALL D1MSINC R0DJNZ R6,LOPRETDB 3FH,06H, 2.4 串行通信及其接口4.4.1 概述概述 串行通信是将数据的各位一位一位地依次传送。串行通信是将数据的各位一位一位地依次传送。适合于计算机之间、计算机与外部设备之间的适合于计算机之间、计算机与外部设备之间的远距离通信。远距离通信。 串行通信从传输方式分为:串行通信从传输方式分为: 单工方式、半双工方式、单工方式、半双工方式、全双工方式。全双工方式。 从接收方式来说,串行通信有两种方式:从接收方式来说,串行

28、通信有两种方式: 异步通信方式异步通信方式、同步通信方式。、同步通信方式。n2.4.2 MCS-51的串行口的串行口n2.4.2.1 串行口的结构串行口的结构n1串行口控制寄存器串行口控制寄存器SCONn该寄存器的字节地址为该寄存器的字节地址为98H,可位寻址。,可位寻址。SCON格式如图所示格式如图所示SCON位 地址SM0SM1SM2RENTB8RB8TIRI9F9E9D9C9B9A99982特殊功能寄存器特殊功能寄存器PCON其字节地址为其字节地址为87H,没有位寻址功能。,没有位寻址功能。PCON的的格式如图所示,其中与串行接口有关的只有格式如图所示,其中与串行接口有关的只有D7位,是

29、串行口波特率控制位,位,是串行口波特率控制位,SMOD=1时,时,波特率加倍。波特率加倍。3、SBUF串行口收串行口收/发寄存器。发寄存器。PCONSMOD 2.4.2.2 串行口的工作方式 1、方式0n外接移位寄存器方式,用以扩展接口。外接移位寄存器方式,用以扩展接口。n波特率为晶振频率波特率为晶振频率1/12。n支持串支持串并,并并,并串转化。串转化。n数据由数据由RXD串行输入串行输入/输出,输出,TXD输出移位脉输出移位脉冲冲n有有74LS164(输出)(输出),74LS166(输入)连接(输入)连接例:例:74LS164输出为输出为全全1的值。的值。MOV SCON,#00HMOV

30、SBUF,#0FFHLOP:JNB TI,LOPCLR TISJMP $方式1 n8位异步通信接口。位异步通信接口。n波特率由波特率由T1控制可变。控制可变。n1位起始位位起始位+8位数据位位数据位+1位停止位位停止位n数据由双向数据由双向RXD输入、输入、TXD输出输出n例:由例:由A机向机向B机机A发送发送30H的内容,波特率为的内容,波特率为1200。n例:由例:由A机向机向B机机A发送发送30H-39H的内容,波的内容,波特率为特率为1200,用累加和校验。用累加和校验。A机发送:机发送:MOV SCON,#050HMOV PCON,#00HMOV TMOD,#20HMOV TL1,#

31、0FAHMOV TH1,#0FAHSETB TR1MOV SBUF,30HLOP:JNB TI,LOPCLR TISJMP $B机接受:机接受:MOV SCON ,#050HMOV PCON,#00HMOV TMOD,#20HMOV TH1,#0FAHMOV TL1,#0FAHSETB TR1LOP:JNB RI,LOPCLR RIMOV A,SBUFSJMP $B机机中断方式接受ORG 000HLJMP MAINORG 0023HJNB RI,LOPCLR RIMOV A,SBUF;MOV R0,A;INC R0;INC R7MOV P1,ALOP:RETInMAIN: MOV SCON ,

32、#050HMOV PCON,#00HMOV TMOD,#20HMOV TH1,#0FAHMOV TL1,#0FAHSETB TR1SETB EASETB ES;MOV R0,#30H;MOV R7,#00HLCALL OTHERSJMP $MOV SCON,#050H;自己发送自己接受自己发送自己接受0256MOV PCON,#00HMOV TMOD,#20HMOV TL1,#0FAHMOV TH1,#0FAHSETB TR1MOV R7,#00HLOP2:MOV SBUF,R7LOP:JNB TI,LOPCLR TILOP1:JNB RI,LOP1CLR RIMOV A,SBUFMOV P1

33、,ALCALL D1SINC R7SJMP LOP2MOV SCON,#050H;A机发送机发送0256MOV PCON,#00HMOV TMOD,#20HMOV TL1,#0FAHMOV TH1,#0FAHSETB TR1MOV R7,#00HLOP2:MOV SBUF,R7LOP:JNB TI,LOPCLR TILCALL D1SINC R7SJMP LOP2MOV SCON,#050H; B机接受机接受0256MOV PCON,#00HMOV TMOD,#20HMOV TL1,#0FAHMOV TH1,#0FAHSETB TR1LOP1:JNB RI,LOP1CLR RIMOV A,SB

34、UFMOV P1,ASJMP LOP1A机发送:机发送:MOV SCON,#050H;连续发送;连续发送30 H后的后的10个单个单元的内容元的内容 MOV PCON,#00HMOV TCON,#20HMOV TL1,#0FAHMOV TH1,#0FAHSETB TR1MOV R0,#30HMOV R2,.#0AHLOP1:MOV SBUF ,R0MOV P1,R0LOP:JNB TI,LOPCLR TIINC R0LCALL D1SDJNZ R2,LOP1 SJMP $B机接收:机接收:MOV SCON,#50HMOV PCON,#00HMOV TCON,#20HMOV TL1,#0E6HM

35、OV TH1,#0E6HSETB TR1LOP:JNB RI,LOPCLR RIMOV 30H,SBUFSJMP $方式2 n9位异步通信接口。位异步通信接口。n波特率由波特率由1/64,1/32n1位起始位位起始位+9位数据位位数据位+1位停止位位停止位n数据由双向数据由双向RXD输入、输入、TXD输出输出n第第9位由位由TB8接收,接收,RB8发送发送n例:由例:由A机向机向B机发送机发送30H的内容,波特率为的内容,波特率为1/64。(奇校验)。(奇校验)A机发送:机发送:MOV SCON,#90HMOV PCON,#00HMOV A,30HMOV C,PMOV TB8,CCPL TB8

36、MOV SBUF,30HLOP:JNB TI,LOPCLR TISJMP $B机接收:机接收:MOV SCON,#90HMOV PCON,#00HLOP:JNB RI,LOPCLR RIMOV 30H,SBUFMOV C,RB8SJMP $4方式方式3 当当SM0SM1=11时,串行口工作在方式时,串行口工作在方式3。方式。方式3为波特率可变的为波特率可变的9位异步通信方式,除了波特位异步通信方式,除了波特率外,方式率外,方式3和方式和方式2相同。相同。 方式方式3的波特率由下式确定:的波特率由下式确定: 方式方式3波特率波特率=(2SMOD/32)定时器定时器T1的溢的溢出率出率题目:由题目

37、:由A机向机向B机发送机发送30H-39H的内容,波特的内容,波特率为率为4800,用奇偶校验。用奇偶校验。MOV SCON,#90H;A机累加和校验MOV PCON #00HLOP5:MOV R1,#30HMOV R2,#10MOV A,#00HLOP2:MOV SBUF,R1ADD A,R1LOP:JNB TI,LOPCLR TIINC R1DJNZ R2,LOP2MOV SBUF,ALOP3:JNB TI,LOP3CLR TILOP4:JNB RI,LOP4CLR RIMOV A,SBUFCJNE A,#00H,LOP5RETIMOV SCON,#90H;B机接受MOV PCON #00

38、HLOP5:MOV R1,#30HMOV R2,#10MOV A,#00HLOP:JNB RI,LOPCLR RIMOV R1,SBUFADD A,R1INC R1DJNZ R2,LOPLOP4:JNB RI,LOP4CLR RIMOV 40H,SBUFCJNE A,40H,LOP3MOV A,#00H;相同发;相同发00HMOV SBUF ,ALOP3:JNB TI,LOP3CLR TISJMP LOP6LOP3:MOV A,#55HMOV SBUF,A LOP3:JNB TI,LOP3CLR TISJMP LOP5LOP6:RETI4.4.2.3 波特率的计算2.4.3. 多机通信接口n2.4.3.1 主从机间的通主从机间的通信信n1双机串行异步通信双机串行异步通信n单片机与单片机间的串单片机与单片机间的串行异步通信接口

温馨提示

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

最新文档

评论

0/150

提交评论