第5章定时器串口中断

上传人:大米 文档编号:567936281 上传时间:2024-07-22 格式:PPT 页数:77 大小:1.62MB
返回 下载 相关 举报
第5章定时器串口中断_第1页
第1页 / 共77页
第5章定时器串口中断_第2页
第2页 / 共77页
第5章定时器串口中断_第3页
第3页 / 共77页
第5章定时器串口中断_第4页
第4页 / 共77页
第5章定时器串口中断_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《第5章定时器串口中断》由会员分享,可在线阅读,更多相关《第5章定时器串口中断(77页珍藏版)》请在金锄头文库上搜索。

1、第第5章章 MCS-51定时定时/计数器计数器 串行口及中断系统串行口及中断系统5.1 MCS-515.1 MCS-51定时定时定时定时/ /计数器计数器计数器计数器5.2 MCS-515.2 MCS-51串行口串行口串行口串行口5.3 MCS-515.3 MCS-51单片机单片机单片机单片机中断系统中断系统中断系统中断系统下页下页宴惟谢锣幻咸湖吩丸沪债烬皖闻酚绰至傅外霹还手谱尼昨剂沈糟筷烬魔苗第5章定时器串口中断第5章定时器串口中断RAMP0口口串行口串行口定时器定时器计数器计数器特殊特殊功能功能寄存器寄存器(SFR)中断中断系统系统微处理器微处理器ALU控制逻辑控制逻辑P2口口P1口口P3

2、口口ROM/EPROMCPU内部内部 总线总线VccVssXTAL1XTAL2PSEN EAALERESETP2.0P2.7P0.0P0.788P1.0P1.78P3.0P 3.788051/8751共共4040条引线条引线面向用户的内部结构面向用户的内部结构上页上页下页下页回目录回目录MCS-51MCS-51内部逻辑结构内部逻辑结构内部逻辑结构内部逻辑结构撕俞处痕爵久懊今戒片宫响倾珍谷背竹掐芝裳氖匈险孕酵裹欺怪猫雌从葵第5章定时器串口中断第5章定时器串口中断6.1 MCS-516.1 MCS-51可编程定时可编程定时可编程定时可编程定时/ /计数器计数器计数器计数器5151系列内部有系列内部

3、有系列内部有系列内部有2 2个个个个1616位的定时位的定时位的定时位的定时/ /计数器计数器计数器计数器T0T0、T1T15252系列内部有系列内部有系列内部有系列内部有3 3个个个个1616位的定时位的定时位的定时位的定时/ /计数器计数器计数器计数器T0T0、T1T1、T2T2功能:功能:功能:功能:定时定时定时定时计数计数计数计数串行口的波特率发生器串行口的波特率发生器串行口的波特率发生器串行口的波特率发生器定时定时定时定时/ /计数器的可编程特性:计数器的可编程特性:计数器的可编程特性:计数器的可编程特性: 确定其工作方式是定时还是计数确定其工作方式是定时还是计数确定其工作方式是定时

4、还是计数确定其工作方式是定时还是计数 预置定时或计数初值预置定时或计数初值预置定时或计数初值预置定时或计数初值 当定时时间到或计数终止时,开放或禁止中断响应当定时时间到或计数终止时,开放或禁止中断响应当定时时间到或计数终止时,开放或禁止中断响应当定时时间到或计数终止时,开放或禁止中断响应 如何启动定时或计数器工作如何启动定时或计数器工作如何启动定时或计数器工作如何启动定时或计数器工作 上页上页下页下页回目录回目录工作方式不同工作方式不同工作方式不同工作方式不同荷啮嘻肖咐梧藐涟缉篮搁桐裂轩皆恋析棘迟寓郴醇撤港静巳实奈糖酶刁肃第5章定时器串口中断第5章定时器串口中断一、定时一、定时一、定时一、定时

5、/ /计数器的结构与工作原理计数器的结构与工作原理计数器的结构与工作原理计数器的结构与工作原理1 1、结构、结构、结构、结构CPUCPUTH1(8TH1(8位位位位) ) TL1 (8TL1 (8位位位位) )T1T1 T1T1(P P 3.53.5)(8DH)(8DH)(8BH)(8BH)7 07 07 07 0TH0(8TH0(8位位位位) ) TL0 (8TL0 (8位位位位) )T0T0 T0T0(P P 3.43.4)(8CH)(8CH)(8AH)(8AH)7 07 07 7 0 0TCON(88H)TCON(88H)TMOD(89H)TMOD(89H)启启启启动动动动 启启启启动动

6、动动 溢溢溢溢出出出出溢溢溢溢出出出出工工工工作作作作方方方方式式式式工作方式工作方式工作方式工作方式图图图图6-1 6-1 定时定时定时定时/ /计数器逻辑结构计数器逻辑结构计数器逻辑结构计数器逻辑结构上页上页下页下页回目录回目录控制寄存器控制寄存器控制寄存器控制寄存器方式寄存器方式寄存器方式寄存器方式寄存器计数器计数器计数器计数器1 1计数器计数器计数器计数器0 0“+1“+1” ”“+1“+1” ”柠匠彼逸痹蝉虾庙爱柜贴渊室披迷垛夸惟管裹谰隅卖虫颐如跺姓焙畔怎段第5章定时器串口中断第5章定时器串口中断2 2、工作原理、工作原理、工作原理、工作原理 定时器定时器定时器定时器定时原理:定时器

7、工作方式时,定时输入信号来自定时原理:定时器工作方式时,定时输入信号来自定时原理:定时器工作方式时,定时输入信号来自定时原理:定时器工作方式时,定时输入信号来自CPUCPU内部振荡内部振荡内部振荡内部振荡信号,在每一个机器周期计数器做一信号,在每一个机器周期计数器做一信号,在每一个机器周期计数器做一信号,在每一个机器周期计数器做一次次次次“+1”“+1”运算。如果定时器的计数器运算。如果定时器的计数器运算。如果定时器的计数器运算。如果定时器的计数器+1+1产生溢出,产生溢出,产生溢出,产生溢出,则标志定时时间到,向则标志定时时间到,向则标志定时时间到,向则标志定时时间到,向CPUCPU提出中断

8、申请。提出中断申请。提出中断申请。提出中断申请。上页上页下页下页回目录回目录结构结构结构结构2 2个个个个1616位位位位T/CT/C分别由分别由分别由分别由8 8位计数器位计数器位计数器位计数器TH0TH0、TL0TL0、 TH1TH1、TL1TL1组成组成组成组成控制寄存器控制寄存器控制寄存器控制寄存器TCONTCON:控制:控制:控制:控制T/CT/C的启停、中断等的启停、中断等的启停、中断等的启停、中断等方式寄存器方式寄存器方式寄存器方式寄存器TMODTMOD:控制:控制:控制:控制T/CT/C的工作方式的工作方式的工作方式的工作方式T0T0T1 T1 时钟精度会影响定时精度时钟精度会

9、影响定时精度时钟精度会影响定时精度时钟精度会影响定时精度。诱灾戮炽放儿噬撞淮前英旁筐类缔拥撬烙睫钉袋够弊押阑柱谎象奥汾忧且第5章定时器串口中断第5章定时器串口中断1 1个机器周期个机器周期个机器周期个机器周期=12=12振荡脉冲振荡脉冲振荡脉冲振荡脉冲计数速率为振荡频率的计数速率为振荡频率的计数速率为振荡频率的计数速率为振荡频率的1/121/12若单片机的晶振主频为若单片机的晶振主频为若单片机的晶振主频为若单片机的晶振主频为12MHz12MHz 则计数周期为则计数周期为则计数周期为则计数周期为1 1 s s 计数器计数器计数器计数器由外部引脚(由外部引脚(由外部引脚(由外部引脚(T0T0为为为

10、为P P3.4 3.4 ,T1T1为为为为P P3.53.5)输入计数脉冲)输入计数脉冲)输入计数脉冲)输入计数脉冲外部输入脉冲宽度应大于外部输入脉冲宽度应大于外部输入脉冲宽度应大于外部输入脉冲宽度应大于2 2个机器周期个机器周期个机器周期个机器周期T T CYCYT T CYCY上页上页下页下页回目录回目录外部输入脉冲发生负外部输入脉冲发生负外部输入脉冲发生负外部输入脉冲发生负 跳变时,进行跳变时,进行跳变时,进行跳变时,进行“+1”“+1”计计计计数数数数下降沿下降沿下降沿下降沿 “+1”“+1”高电平高电平高电平高电平低电平低电平低电平低电平T T CYCY: :为机器周期为机器周期为机

11、器周期为机器周期*定时、计数不占用定时、计数不占用CPU时间,产生溢时间,产生溢出时将向出时将向CPU提出中断申请提出中断申请*棵魔们桥踊僚北设岭传制培哟丙崇毙登僵浚顾系殷簧尿申铂夕毗扬痘沮籍第5章定时器串口中断第5章定时器串口中断二、定时计数器的方式寄存器和控制寄存器二、定时计数器的方式寄存器和控制寄存器二、定时计数器的方式寄存器和控制寄存器二、定时计数器的方式寄存器和控制寄存器1 1、方式寄存器、方式寄存器、方式寄存器、方式寄存器TMODTMODGATEGATEC/TC/T M1M1 M0M0 GATEGATE C/TC/T M1M1 M0M0LSBLSBMSBMSB(89H89H)TMO

12、DTMOD控制控制控制控制T1T1控制控制控制控制T0T0门控位门控位门控位门控位工作方式选择位工作方式选择位工作方式选择位工作方式选择位操作方式选择操作方式选择操作方式选择操作方式选择上页上页下页下页回目录回目录郭管延科呸兼呸克瞬浇索泰衣涸饮潮凿闪肤豹肋钱挽帘龄潜箕陆汞瓮活咆第5章定时器串口中断第5章定时器串口中断GATEGATEC/TC/T M1M1 M0M0 GATEGATE C/TC/T M1M1 M0M0INT1 INT0INT1 INT0引脚输入电平的控制引脚输入电平的控制引脚输入电平的控制引脚输入电平的控制GATEGATE: 门控位。设定门控位。设定门控位。设定门控位。设定T1T

13、1、T0T0运行时是否受运行时是否受运行时是否受运行时是否受GATE=GATE= 0 0 不受外部中断控制不受外部中断控制不受外部中断控制不受外部中断控制C/T=C/T= 0 0 0 0 方式方式方式方式0 130 13位定时器位定时器位定时器位定时器/ /计数器计数器计数器计数器 0 1 0 1 方式方式方式方式1 161 16位定时器位定时器位定时器位定时器/ /计数器计数器计数器计数器 1 0 1 0 方式方式方式方式2 2 可自动重装载的可自动重装载的可自动重装载的可自动重装载的8 8位定时器位定时器位定时器位定时器/ /计数器计数器计数器计数器 1 1 1 1 方式方式方式方式3 T

14、03 T0分为分为分为分为2 2个个个个8 8位计数器,位计数器,位计数器,位计数器,T1T1停止计数停止计数停止计数停止计数M1M0M1M0操作方式操作方式操作方式操作方式功功功功 能能能能表表表表6-1 6-1 操作方式选择操作方式选择操作方式选择操作方式选择上页上页下页下页回目录回目录1 1 受外部中断控制受外部中断控制受外部中断控制受外部中断控制0 0 为定时功能为定时功能为定时功能为定时功能1 1为计数功能为计数功能为计数功能为计数功能飘酗哎红抖樱秸晶渊串诀喻毫搐嫡凶逮秦鬃镀码唉橙诌厢瞥糖篙滚七斩守第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录2 2、控制寄存器

15、、控制寄存器、控制寄存器、控制寄存器TCONTCONLSBLSBMSBMSB(88H88H)TCONTCONTF1TF1TR1TR1 TF0TF0TR0TR0 IE1IE1IT1IT1IE0IE0IT0IT0T T1 1、T T0 0 启启启启/ /停控制停控制停控制停控制位位位位T T1 1、T T0 0 溢出标志位溢出标志位溢出标志位溢出标志位与外部中断与外部中断与外部中断与外部中断INTINT1 1、INTINT0 0有关有关有关有关将在中断系统介绍将在中断系统介绍将在中断系统介绍将在中断系统介绍“0” “0” 停停停停止止止止“1” “1” 启启启启动动动动“1”“1” 有溢有溢有溢有

16、溢出出出出“0”“0” 无溢无溢无溢无溢出出出出可由软件控制定时器启、停可由软件控制定时器启、停可由软件控制定时器启、停可由软件控制定时器启、停可由指令清可由指令清可由指令清可由指令清“0”“0”工作工作工作工作指示有无溢出指示有无溢出指示有无溢出指示有无溢出谰月族臣糟俗语叙渴顾棕毅硒建毕露瓷赎内耍腔弧誊吻冲幌状顷麓铅立股第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录三、定时三、定时三、定时三、定时/ /计数器的计数器的计数器的计数器的4 4种工作方式种工作方式种工作方式种工作方式 方式方式方式方式0 M1M0=00 0 M1M0=00 1313位的定时计数器,由位的定时

17、计数器,由位的定时计数器,由位的定时计数器,由THTH的的的的8 8位和位和位和位和TLTL的低的低的低的低5 5位组成位组成位组成位组成T1T1(P P 3.53.5)GATEGATETR1TR1INT1INT1震荡器震荡器震荡器震荡器1212TL1TL15 5位位位位TH1TH18 8位位位位TF1TF1中中中中断断断断申申申申请请请请KKC/T=0C/T=0C/T=1C/T=1控制控制控制控制图图图图6-3 6-3 定时定时定时定时/ /计数器方式计数器方式计数器方式计数器方式0 0逻辑图逻辑图逻辑图逻辑图1 11 11 1“+1“+1” ”中中中中断断断断申申申申请请请请TLTL4 4

18、0 0以以以以T1T1为例:为例:为例:为例:1313位计数器位计数器位计数器位计数器溢出溢出溢出溢出TF1TF1“+1“+1” ”“+1“+1” ”禾绿筏介蔚毅今篆儿捉耕辊洋冀避侵别喂都弗垦丸爵临甘游摈讣刚山蹋同第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录 方式方式方式方式1 M1M0=01 1 M1M0=01 1616位的定时计数器,由位的定时计数器,由位的定时计数器,由位的定时计数器,由THTH的的的的8 8位和位和位和位和TLTL的的的的8 8位组成位组成位组成位组成T1T1(P P 3.53.5)GATEGATETR1TR1INT1INT1震荡器震荡器震荡器震

19、荡器1212TL1TL18 8位位位位TH1TH18 8位位位位TF1TF1中中中中断断断断申申申申请请请请KKC/T=0C/T=0C/T=1C/T=1控制控制控制控制图图图图6-4 6-4 定时定时定时定时/ /计数器方式计数器方式计数器方式计数器方式1 1逻辑图逻辑图逻辑图逻辑图1616位计数器位计数器位计数器位计数器“+1“+1” ”1 1以以以以T1T1为例:为例:为例:为例:中中中中断断断断申申申申请请请请溢出溢出溢出溢出TF1TF1“+1“+1” ”“+1“+1” ”然氏村煮贴这肝霹铃池瞳努伤壁树矫羡胆给梦隆惟紫冲编引寨垦陀逸寺胳第5章定时器串口中断第5章定时器串口中断上页上页下页

20、下页回目录回目录 方式方式方式方式2 M1M0=10 2 M1M0=10 可可可可自动自动自动自动重装载重装载重装载重装载的的的的8 8位计数器位计数器位计数器位计数器TH1TH1(TH0TH0)被定义为赋值寄存器)被定义为赋值寄存器)被定义为赋值寄存器)被定义为赋值寄存器 赋计数初值赋计数初值赋计数初值赋计数初值TL1TL1(TL0TL0)被定义为计数器)被定义为计数器)被定义为计数器)被定义为计数器图图图图6-5 6-5 定时定时定时定时/ /计数器方式计数器方式计数器方式计数器方式2 2逻辑图逻辑图逻辑图逻辑图 T1(P T1(P3.53.5) ) GATEGATETR1 TR1 INT

21、1INT1震荡器震荡器震荡器震荡器1212TL1TL18 8位位位位TF1TF1中中中中断断断断申申申申请请请请KKC/T=0C/T=0C/T=1C/T=1控制控制控制控制TH1TH18 8位位位位重装载重装载重装载重装载重装载重装载重装载重装载1 1“+1“+1” ”以以以以T1T1为例:为例:为例:为例:中中中中断断断断申申申申请请请请TL1TL1 8 8位位位位溢出溢出溢出溢出TF1TF1“+1“+1” ”“+1“+1” ”日载剿脱冠寸剿氮窘驱擦鳞观洁拆犀宵萌任孔掷慰臂都胯号隙透导惧触屡第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录 方式方式方式方式3 M1M0=1

22、1 3 M1M0=11 T0T0被分成被分成被分成被分成2 2个相互独立的个相互独立的个相互独立的个相互独立的8 8位计数器位计数器位计数器位计数器TL0 TL0 、TH0TH0TL0TL0使用自己本身的一些控制位使用自己本身的一些控制位使用自己本身的一些控制位使用自己本身的一些控制位C/TC/T、GATEGATE、TR0TR0TF0TF0、INT0INT0等。等。等。等。TH0TH0只能做定时器,并使用只能做定时器,并使用只能做定时器,并使用只能做定时器,并使用T1T1的控的控的控的控制位制位制位制位TR1TR1、TF1TF1,同时占用,同时占用,同时占用,同时占用T1T1的中断源的中断源的

23、中断源的中断源玄置咒敏浴变仟勤楼患破街狗豢缔脉用膜熟洁号麻罚胜随沪伟猩势典涟凸第5章定时器串口中断第5章定时器串口中断震荡器震荡器震荡器震荡器12121/12f1/12f0sc0scTL0TL08 8位位位位TF0TF0中中中中断断断断KKC/T=0C/T=0C/T=1C/T=1控制控制控制控制1/12f1/12f0sc0sc T0 T0(P P3.43.4)GATEGATETR0TR0INT0INT0KKTH0TH08 8位位位位TF1TF1中中中中断断断断控制控制控制控制1/12f1/12f0sc0scTR1TR1图图图图6-66-6定时定时定时定时/ /计数器方式计数器方式计数器方式计数

24、器方式3 3逻辑图逻辑图逻辑图逻辑图上页上页下页下页回目录回目录1 1TH0TH0借用了借用了借用了借用了T1T1的的的的TR1TR1和和和和TF1TF1, ,因此控制了因此控制了因此控制了因此控制了T1T1的中断的中断的中断的中断此时此时此时此时T1T1只能用在一些不要中断的情况下只能用在一些不要中断的情况下只能用在一些不要中断的情况下只能用在一些不要中断的情况下“+1“+1” ”“+1“+1” ”1 1“+1“+1” ”“+1“+1” ”TF0TF0TF1TF1 中中中中 断断断断 中中中中 断断断断“+1“+1” ”努讯钦辙藤安灾敬歉善壳典屁亢售躬纱恭肥镰羡桨弟末谤当帕迎撰恃粪砖第5章定

25、时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录四、定时四、定时四、定时四、定时/ /计数器的初始计数器的初始计数器的初始计数器的初始化化化化初始化一般有以下几个步骤:初始化一般有以下几个步骤:初始化一般有以下几个步骤:初始化一般有以下几个步骤: 确定工作方式,对方式寄存器确定工作方式,对方式寄存器确定工作方式,对方式寄存器确定工作方式,对方式寄存器TMODTMOD赋值赋值赋值赋值 预置定时或计数初值,将其写入预置定时或计数初值,将其写入预置定时或计数初值,将其写入预置定时或计数初值,将其写入TL0TL0、TH0TH0或或或或TL1TL1、TH1TH1中中中中 根据需要对中断允许寄

26、存器有关位赋值,以开放或禁止根据需要对中断允许寄存器有关位赋值,以开放或禁止根据需要对中断允许寄存器有关位赋值,以开放或禁止根据需要对中断允许寄存器有关位赋值,以开放或禁止定时定时定时定时/ /计数器中断计数器中断计数器中断计数器中断 启动定时启动定时启动定时启动定时/ /计数器,将计数器,将计数器,将计数器,将TR0TR0或或或或TR1TR1赋值为赋值为赋值为赋值为“1”“1”计数初值的设定:计数初值的设定:计数初值的设定:计数初值的设定:最大计数值最大计数值最大计数值最大计数值MM:不同的工作方式:不同的工作方式:不同的工作方式:不同的工作方式MM值不同值不同值不同值不同方式方式方式方式0

27、 0: M = 2 M = 213 13 = 8192= 8192方式方式方式方式1 1: M = 2 M = 216 16 = 65536= 65536方式方式方式方式2 2、3 3:M = 2M = 28 8 = 256= 256诀配骄爱邢如昌区萍广莽萍极肠西知筛械畴武轧兢铜病沛蒸良燃靖康果爵第5章定时器串口中断第5章定时器串口中断计数初值计数初值计数初值计数初值X X的计算方法:的计算方法:的计算方法:的计算方法:计数方式:计数方式:计数方式:计数方式:X = MX = M计数值(计数值(计数值(计数值(X X即为计数值的补码数即为计数值的补码数即为计数值的补码数即为计数值的补码数)上页

28、上页下页下页回目录回目录定时方式:定时方式:定时方式:定时方式:(M M X X)T = T = 定时值定时值定时值定时值 X = M X = M定时值定时值定时值定时值 / T / T其中其中其中其中T T为机器周期,时钟的为机器周期,时钟的为机器周期,时钟的为机器周期,时钟的1212分频,分频,分频,分频,若晶振为若晶振为若晶振为若晶振为6MHz6MHz,则,则,则,则T = 2T = 2 s s,若晶振为若晶振为若晶振为若晶振为12MHz12MHz,则,则,则,则T = 1T = 1 s s叛奠访殃庞衔搜瞥报膜爪世尚绎烙名韧玫昂斜影觉沫丘顺樊晾晕央哆蘑傀第5章定时器串口中断第5章定时器串

29、口中断上页上页下页下页回目录回目录五、定时五、定时五、定时五、定时/ /计数器应用举计数器应用举计数器应用举计数器应用举例例例例1 1、作定时器用、作定时器用、作定时器用、作定时器用例例例例6-26-2 设主频为设主频为设主频为设主频为12MHz12MHz,利用定时器,利用定时器,利用定时器,利用定时器T1T1定时。定时。定时。定时。 使使使使P1.0P1.0输出周期为输出周期为输出周期为输出周期为2ms2ms的方波。的方波。的方波。的方波。解:解:解:解:用用用用P1.0P1.0作方波输出信号,周期为作方波输出信号,周期为作方波输出信号,周期为作方波输出信号,周期为2ms2ms的的的的方波方

30、波方波方波 即可用每即可用每即可用每即可用每1ms1ms改变一次电平的方法完成,改变一次电平的方法完成,改变一次电平的方法完成,改变一次电平的方法完成, 故定时值可设置为故定时值可设置为故定时值可设置为故定时值可设置为1ms1ms。 可做可做可做可做“+1”“+1”运算运算运算运算10001000次,次,次,次,使使使使T1T1工作在方式工作在方式工作在方式工作在方式1 1, 即即即即1616位计数器位计数器位计数器位计数器定时初值:定时初值:定时初值:定时初值:X= MX= M计数次数计数次数计数次数计数次数= 2= 21616 1000 = 64536= FC18H1000 = 64536

31、= FC18H1ms1ms1ms1msT=2msT=2ms鳖叶奥烽豪淀涕严浴洞玖幕啤敬朝鼠下亦幻锌扒营斧惜粥涡野赦恢盛坐霜第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录GATEGATEC/TC/T M1M1 M0M0控制控制控制控制T1T1控制控制控制控制T0T00 0 0 10 0 0 1选择方式选择方式选择方式选择方式1 1选择定时器方式选择定时器方式选择定时器方式选择定时器方式INT1INT1不参与控制不参与控制不参与控制不参与控制TMODTMOD确定工作方式确定工作方式确定工作方式确定工作方式10H10H使奥辕冈凤跟氯乘菇喝堪佰摊裤天舰完六橙峨麓迹肘贵玫相坦绦蛊社

32、窝涯第5章定时器串口中断第5章定时器串口中断MOV TMODMOV TMOD,#10H#10HMOV TH1MOV TH1,#0FCH#0FCHMOV TL1MOV TL1,#18H#18HSETB EASETB EASETB ET1SETB ET1SETB TR1SETB TR1SJMP $SJMP $ORG 001BHORG 001BHAJMP BR1AJMP BR1BR1BR1: MOV TH1 MOV TH1,#0FCH#0FCHMOV TL1MOV TL1,#18H#18HCPL P1.0CPL P1.0RETIRETI;T1按方式按方式0工作工作;给计数器赋初值给计数器赋初值;CP

33、U开中断开中断;T1允许中断允许中断;启动启动T1;模拟主程模拟主程序序;T1中断入口中断入口;转转T1中断服务中断服务;重装重装T1的初值的初值;输出方波输出方波;返回返回程程程程序:序:序:序:上页上页下页下页回目录回目录为什么要重装为什么要重装为什么要重装为什么要重装T1 T1 初值?初值?初值?初值?貌膏篆眷短植选盛孕肝斑煌厨提掀谤均砰弥恿引墓谎识哇压幻绢渔铅拎扮第5章定时器串口中断第5章定时器串口中断例例例例6-36-3 根据例根据例根据例根据例6-26-2的要求产生周期为的要求产生周期为的要求产生周期为的要求产生周期为2ms2ms的方波,的方波,的方波,的方波, 但不用中断方式,而

34、用查询方式工作,但不用中断方式,而用查询方式工作,但不用中断方式,而用查询方式工作,但不用中断方式,而用查询方式工作, 查询标志为查询标志为查询标志为查询标志为TF1TF1上页上页下页下页回目录回目录MOV TMODMOV TMOD,#10H#10HSETB TR1SETB TR1LOOPLOOP: MOV TH1 MOV TH1,#0FCH#0FCHMOV TL1MOV TL1,#18H#18HJNB TF1JNB TF1,$ $CPL P1.0CPL P1.0CLR TF1CLR TF1SJMP LOOPSJMP LOOP;T1按方式按方式1工作工作;启动启动T1定时定时;给计数器赋初值给

35、计数器赋初值;TF1=0,则继续查询,则继续查询;TF10;输出方波输出方波;返回返回立婿麦怕润趣丹氛和瞻畦省沏渔诛圆珠谢髓悟澄扇涂笋皮消婉粪卷介阻筷第5章定时器串口中断第5章定时器串口中断2 2、作计数器用、作计数器用、作计数器用、作计数器用( (自学自学自学自学) )例例例例6-46-4 用用用用T0T0监视一生产流水线,每生产监视一生产流水线,每生产监视一生产流水线,每生产监视一生产流水线,每生产100100个工件,个工件,个工件,个工件,发出一包装命令,包装成一箱,并记录其箱数发出一包装命令,包装成一箱,并记录其箱数发出一包装命令,包装成一箱,并记录其箱数发出一包装命令,包装成一箱,并

36、记录其箱数上页上页下页下页回目录回目录 P P1.01.0 T T0 0VccVcc包装机包装机包装机包装机包装命令包装命令包装命令包装命令100100个个个个光源光源光源光源理解题意理解题意理解题意理解题意稚趁铬倚台敞捶焊阿辐冰陋钱泽俐液瞅辆咕蔬都馆潍骗譬忘商停贮惜座冲第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录GATEGATE C/TC/TM1M1M0M0控制控制控制控制T1T1控制控制控制控制T0T0TMODTMOD选方式选方式选方式选方式2 2选计数器选计数器选计数器选计数器INT0INT0不参与控制不参与控制不参与控制不参与控制 计数初值计数初值X = 256

37、100 = 9CH 用用P1.0启动外设发包装命令启动外设发包装命令 用用R5R4作箱数计数器作箱数计数器 06H置入方式字置入方式字TMOD0 01 11 01 0疙锥嚣走狙午隧酵齐祭刽绍等胶抛吮敢龙道节长全塔疆删贸舒每读疵清峨第5章定时器串口中断第5章定时器串口中断程序:程序:程序:程序:MOV TMODMOV TMOD,#6#6MAIN: MOV P1.0MAIN: MOV P1.0,#0#0MOV R5MOV R5,#0#0MOV R4MOV R4,#0#0MOV TH0MOV TH0,#9CH#9CHMOV TL0MOV TL0,#9CH#9CHSETB EASETB EASETB

38、ET0SETB ET0SETB TR0SETB TR0SJMP $SJMP $ORG 000BHORG 000BHLJMP COUNTLJMP COUNT下页下页;P1.0为低为低;箱数计数器清箱数计数器清“0”;置置T0工作方式工作方式;计数初值送计数器计数初值送计数器;T0开中断开中断;CPU开中断开中断;启动启动T0;主程序主程序;T0中断入口中断入口;转向中断服务转向中断服务上页上页回目录回目录ORG 0000HORG 0000HLJMP MAINLJMP MAINORG 0030HORG 0030H沿虐颗椒零钩挥窄吵傻澄耐豹详更奥翼邯掳喂止望没避例黄代搪肠醇戎巴第5章定时器串口中断第

39、5章定时器串口中断COUNT: MOV ACOUNT: MOV A,R4R4ADD AADD A,#1#1MOV R4MOV R4,A AMOV AMOV A,R5R5ADDC AADDC A,#0#0MOV R5MOV R5,A ASETB P1.0SETB P1.0MOV R3MOV R3,#100#100DLYDLY: NOP NOPDJNZ R3DJNZ R3,DLYDLYCLR P1.0CLR P1.0RETIRETI中断服务:中断服务:中断服务:中断服务:;箱计数器加箱计数器加“1”;启动外设包装启动外设包装;给外设足够时间给外设足够时间;延时延时;停止包装停止包装;中断返中断返回

40、回上页上页下页下页回目录回目录ENDEND没有保护现场没有保护现场没有保护现场没有保护现场唆教猴树撩侯驮骤帛痉僳瑚戴扒碧逝购黑肇局济宙唆扔陈故烽熄扇韭泄尹第5章定时器串口中断第5章定时器串口中断3 3、门控位、门控位、门控位、门控位GATEGATE的应用的应用的应用的应用GATEGATE C/TC/TM1M1M0M0控制控制控制控制T1T1控制控制控制控制T0T0TMODTMOD选方式选方式选方式选方式1 1选定时器方式选定时器方式选定时器方式选定时器方式INT0INT0为高时,为高时,为高时,为高时,T1T1开始计数开始计数开始计数开始计数1 0 0 11 0 0 1上页上页下页下页回目录回

41、目录例例例例6-56-5 用用用用GATE GATE 控制位,测量控制位,测量控制位,测量控制位,测量INT1(PINT1(P3.33.3) )引脚上引脚上引脚上引脚上 正脉冲的宽度(晶振为正脉冲的宽度(晶振为正脉冲的宽度(晶振为正脉冲的宽度(晶振为12MHz12MHz,正脉冲宽度,正脉冲宽度,正脉冲宽度,正脉冲宽度小于小于小于小于65ms65ms)腆铺宦刑响湛恃沟纪坚勾吠帽仔埂庭命表集轰砰势阉阔翻擦詹蜗霜肢考闺第5章定时器串口中断第5章定时器串口中断T1T1(P P3.53.5)GATEGATETR1TR1INT1INT1震荡器震荡器震荡器震荡器1212TL1TL18 8位位位位TH1TH1

42、8 8位位位位TF1TF1中中中中断断断断KKC/T=0C/T=0C/T=1C/T=1控制控制控制控制1616位计数器位计数器位计数器位计数器“+1“+1” ”1 1INT1INT1INT1INT1为高时为高时为高时为高时T1T1开始计数开始计数开始计数开始计数INT1INT1 为低时为低时为低时为低时T1T1停止计数停止计数停止计数停止计数0 00 01 11 11 1宽度宽度宽度宽度65ms65ms计数值计数值计数值计数值 即即即即ss数数数数1 1上页上页下页下页回目录回目录“+1“+1” ”“+1“+1” ”硫氯沤畴怠莲他蹦沫喇稚罢夕缀踏弓吕什忘堕夷角亦溯孝傀所痢姻赏检勃第5章定时器串

43、口中断第5章定时器串口中断INT1INT1INT1INT1为高时为高时为高时为高时T1T1开始计数开始计数开始计数开始计数INT1INT1 为低时为低时为低时为低时T1T1停止计数停止计数停止计数停止计数上页上页下页下页回目录回目录MOV TMOD, #90HMOV TMOD, #90HMOV TL1, #0MOV TL1, #0MOV TH1, #0MOV TH1, #0 JB P3.3, $JB P3.3, $ SETB TR1SETB TR1JNB P3.3, $JNB P3.3, $JB P3.3, $JB P3.3, $CLR TR1CLR TR1:编编编编程:程:程:程:;置置T1

44、方式控制字方式控制字;T1从从0开始计数开始计数;等等INT1低电平低电平;T1允许计数允许计数;等等INT1高电平上升沿到来高电平上升沿到来;等等INT1低电平到来低电平到来;停止计数停止计数“ “与与与与” ”CLR TR1CLR TR1掺厌萌援纲邓齐嗓悟姜智辰褂吹樊礁膨晋儒砷滚戳苯挣馒叫窄艳嫌满烩吱第5章定时器串口中断第5章定时器串口中断定时器定时器定时器定时器/ /计数器使用中应注意的问题:计数器使用中应注意的问题:计数器使用中应注意的问题:计数器使用中应注意的问题:1 1、不易实现长时间高精度定时;、不易实现长时间高精度定时;、不易实现长时间高精度定时;、不易实现长时间高精度定时;2

45、 2、长定时问题、长定时问题、长定时问题、长定时问题?野刊欣曰肠请疾埃腥块鼎闪叁捏侄魁柴蛙舵獭汽有笆杭波倾囤想钮彭校今第5章定时器串口中断第5章定时器串口中断3、运行中、运行中读定时器值读定时器值读定时器值读定时器值有时需要在定时器运行中读出计数器的值有时需要在定时器运行中读出计数器的值有时需要在定时器运行中读出计数器的值有时需要在定时器运行中读出计数器的值因为因为因为因为定时器不断运行定时器不断运行定时器不断运行定时器不断运行,不可能在同一时刻读,不可能在同一时刻读,不可能在同一时刻读,不可能在同一时刻读取取取取THTHX X和和和和TLTLX X值,如不注意便可能读错。值,如不注意便可能读

46、错。值,如不注意便可能读错。值,如不注意便可能读错。如先读(如先读(如先读(如先读(TLTLX X),然后读(),然后读(),然后读(),然后读(THTHX X),由于),由于),由于),由于定时器不断运行,读(定时器不断运行,读(定时器不断运行,读(定时器不断运行,读(THTHX X)前,若恰好)前,若恰好)前,若恰好)前,若恰好产生产生产生产生TLTLX X溢出向溢出向溢出向溢出向THTHX X进位情况,则读得的进位情况,则读得的进位情况,则读得的进位情况,则读得的(TLTLX X)值就完全不对了。)值就完全不对了。)值就完全不对了。)值就完全不对了。搀根畦戮谤返许抬袁卫险冰渗延逞葬蛋攒差

47、弥哈转米怔驳译搜闲押价征剐第5章定时器串口中断第5章定时器串口中断一种可能解决错读问题的方法是:一种可能解决错读问题的方法是:一种可能解决错读问题的方法是:一种可能解决错读问题的方法是:先读(先读(先读(先读(THTHX X),后读(),后读(),后读(),后读(TLTLX X),再读(),再读(),再读(),再读(THTHX X),),),),若两次读得的(若两次读得的(若两次读得的(若两次读得的(THTHX X)没有发生变化,则可确定)没有发生变化,则可确定)没有发生变化,则可确定)没有发生变化,则可确定读出的内容是正确的。读出的内容是正确的。读出的内容是正确的。读出的内容是正确的。RDT

48、IMERRDTIMER:MOVMOVA A,TH0TH0 MOV MOVR0R0,TL0TL0 CJNE A CJNE A,TH0TH0,RDTIMERRDTIMER MOV MOVR1R1,A A RET RET比较两次读的比较两次读的比较两次读的比较两次读的(TH0TH0),不等),不等),不等),不等重复再读重复再读重复再读重复再读;读(;读(;读(;读(TH0TH0);读(;读(;读(;读(TL0TL0)跋齿渊癌刹畴气沥罪买涩鬃科详捏煽蜗场媒饼戈缎窿挣鸦丧旅音猛盒坏晴第5章定时器串口中断第5章定时器串口中断4、定时器溢出同步问题、定时器溢出同步问题定时器溢出时,自动产生中断请求。但中断

49、是否得到定时器溢出时,自动产生中断请求。但中断是否得到定时器溢出时,自动产生中断请求。但中断是否得到定时器溢出时,自动产生中断请求。但中断是否得到响应,取决于其它中断服务程序是否在运行,或取决响应,取决于其它中断服务程序是否在运行,或取决响应,取决于其它中断服务程序是否在运行,或取决响应,取决于其它中断服务程序是否在运行,或取决于正在执行的是什么样的指令。所以于正在执行的是什么样的指令。所以于正在执行的是什么样的指令。所以于正在执行的是什么样的指令。所以定时中断请求得定时中断请求得定时中断请求得定时中断请求得到响应的时间是不固定的到响应的时间是不固定的到响应的时间是不固定的到响应的时间是不固定

50、的。在一些对定时精度要求十。在一些对定时精度要求十。在一些对定时精度要求十。在一些对定时精度要求十分苛刻的场所对此误差进行补偿。分苛刻的场所对此误差进行补偿。分苛刻的场所对此误差进行补偿。分苛刻的场所对此误差进行补偿。补偿方法补偿方法补偿方法补偿方法:在定时中断请求得到响应的时候,停止定:在定时中断请求得到响应的时候,停止定:在定时中断请求得到响应的时候,停止定:在定时中断请求得到响应的时候,停止定时器计数,读出计数值(反映了中断响应的延迟时间)时器计数,读出计数值(反映了中断响应的延迟时间)时器计数,读出计数值(反映了中断响应的延迟时间)时器计数,读出计数值(反映了中断响应的延迟时间),根据

51、该值,计算出到下一次中断时需要的时间,据,根据该值,计算出到下一次中断时需要的时间,据,根据该值,计算出到下一次中断时需要的时间,据,根据该值,计算出到下一次中断时需要的时间,据此来重装载计数器初值和启动定时器。此来重装载计数器初值和启动定时器。此来重装载计数器初值和启动定时器。此来重装载计数器初值和启动定时器。畦抱疑赔盐蜀窒放迈斩棺移刹蘑庇塔啡粥煮财网更獭铡或才好狞榆吝砸式第5章定时器串口中断第5章定时器串口中断例:定时周期为例:定时周期为例:定时周期为例:定时周期为1MS1MS的补偿程序。的补偿程序。的补偿程序。的补偿程序。 CLRCLR EA EACLRCLR TR1 TR1MOVMOV

52、 A,#LOW(-1000+7) A,#LOW(-1000+7)ADDADD A,TL1 A,TL1MOVMOV TL1,A TL1,AMOVMOV A,#HIGH(-1000+7) A,#HIGH(-1000+7)ADDC A,TH1ADDC A,TH1MOVMOV TH1,A TH1,ASETBSETB TR1 TR1 ; ;禁止所有中断禁止所有中断禁止所有中断禁止所有中断;停止定时器;停止定时器;停止定时器;停止定时器1 1运行运行运行运行;期望数的低位字节;期望数的低位字节;期望数的低位字节;期望数的低位字节;进行修正;进行修正;进行修正;进行修正;重装载;重装载;重装载;重装载;高位

53、字节做类似处理;高位字节做类似处理;高位字节做类似处理;高位字节做类似处理;再启动定时器运行;再启动定时器运行;再启动定时器运行;再启动定时器运行1US1US1US1US1US1US1US1US1US1US1US1US1US1US线视判磷言镁觉塑貉瘫媒田札侠僚么祸伐狡码镣配也叁侦狼形型疹烧酮堤第5章定时器串口中断第5章定时器串口中断5.2 MCS-515.2 MCS-51串行口串行口串行口串行口上页上页下页下页回目录回目录串行通信:串行通信:串行通信:串行通信:将数据的各个位一位一位地通过单条将数据的各个位一位一位地通过单条将数据的各个位一位一位地通过单条将数据的各个位一位一位地通过单条1 1

54、位宽的传输位宽的传输位宽的传输位宽的传输线按顺序分时传送的通信方式。即通信双方一次传线按顺序分时传送的通信方式。即通信双方一次传线按顺序分时传送的通信方式。即通信双方一次传线按顺序分时传送的通信方式。即通信双方一次传输一个二进制位。输一个二进制位。输一个二进制位。输一个二进制位。CPUCPU与外界进行信息交换方式:并行通信、串行通信。与外界进行信息交换方式:并行通信、串行通信。与外界进行信息交换方式:并行通信、串行通信。与外界进行信息交换方式:并行通信、串行通信。串行通信与并行通信比较:串行通信与并行通信比较:串行通信与并行通信比较:串行通信与并行通信比较:1 1、通信距离:、通信距离:、通信

55、距离:、通信距离:并行通信适合于近距离传输,一般小于并行通信适合于近距离传输,一般小于并行通信适合于近距离传输,一般小于并行通信适合于近距离传输,一般小于3030米;米;米;米;串行通信适合远距离传输,可以从几米到数千公里。串行通信适合远距离传输,可以从几米到数千公里。串行通信适合远距离传输,可以从几米到数千公里。串行通信适合远距离传输,可以从几米到数千公里。2 2、通信速率:、通信速率:、通信速率:、通信速率:近距离传输并行通信速率高,远距离传输串近距离传输并行通信速率高,远距离传输串近距离传输并行通信速率高,远距离传输串近距离传输并行通信速率高,远距离传输串行通信速率高。行通信速率高。行通

56、信速率高。行通信速率高。3 3、抗干扰性:、抗干扰性:、抗干扰性:、抗干扰性:串行通信只有一两根信号线,信号间互相干扰串行通信只有一两根信号线,信号间互相干扰串行通信只有一两根信号线,信号间互相干扰串行通信只有一两根信号线,信号间互相干扰可以忽略。可以忽略。可以忽略。可以忽略。4 4、设备和费用:、设备和费用:、设备和费用:、设备和费用:因通信线路费用趋高,对远距离通信,因通信线路费用趋高,对远距离通信,因通信线路费用趋高,对远距离通信,因通信线路费用趋高,对远距离通信,串行通信费用明显低得多。串行通信费用明显低得多。串行通信费用明显低得多。串行通信费用明显低得多。乎遭锣沥怪谣荤瑚嵌凸橡记贬锭

57、亨糜栅钞糠岭镁耗宏兢挥晶这磺窍赎拿沃第5章定时器串口中断第5章定时器串口中断串行通信实现得方法:串行通信实现得方法:串行通信实现得方法:串行通信实现得方法:使用硬件接口电路,再辅之以必要的软件驱动程序使用硬件接口电路,再辅之以必要的软件驱动程序使用硬件接口电路,再辅之以必要的软件驱动程序使用硬件接口电路,再辅之以必要的软件驱动程序。如如如如USBUSB通信、通信、通信、通信、IRDAIRDA高速红外通信高速红外通信高速红外通信高速红外通信星涎俐险熊绝译配含骤亡搭瞬乒板驯趴朽麦亏韵矢尤凸遇蒂壹剪畸讯裂农第5章定时器串口中断第5章定时器串口中断串行通信方式:串行通信方式:串行通信方式:串行通信方式

58、:MCS-51MCS-51内部有一个全双工的异步串行通信接口内部有一个全双工的异步串行通信接口内部有一个全双工的异步串行通信接口内部有一个全双工的异步串行通信接口UARTUART波特率波特率波特率波特率:每秒钟能够发送或接收的二进制位数。:每秒钟能够发送或接收的二进制位数。:每秒钟能够发送或接收的二进制位数。:每秒钟能够发送或接收的二进制位数。全双工全双工全双工全双工T TR RR RT T半双工半双工半双工半双工T TR RT TR R单工单工单工单工T TR R喜烙最号停逊候展两精榷级镑肯悲们种裸按虎涉翌篓扇敝檄度弥冶魔瞄截第5章定时器串口中断第5章定时器串口中断一、串行通信的基本方式一、

59、串行通信的基本方式一、串行通信的基本方式一、串行通信的基本方式1 1、异步传送方式、异步传送方式、异步传送方式、异步传送方式一帧数据由一帧数据由一帧数据由一帧数据由4 4部分组成:起始位、数据位、奇偶位、停止位部分组成:起始位、数据位、奇偶位、停止位部分组成:起始位、数据位、奇偶位、停止位部分组成:起始位、数据位、奇偶位、停止位1/01/0 1/01/0 1/01/0 1/01/0 1/01/0 1/01/0 1/01/0 1/01/0 1/01/00 01 1一帧数据一帧数据一帧数据一帧数据起起起起始始始始位位位位数数数数据据据据位位位位奇奇奇奇偶偶偶偶位位位位停停停停止止止止位位位位0 0

60、1/01/0 1/01/0 1/01/0起起起起始始始始位位位位数数数数据据据据位位位位1 11/01/0停停停停止止止止位位位位第第第第n n个字符个字符个字符个字符第第第第n+1n+1个字符个字符个字符个字符上页上页下页下页回目录回目录LSBLSBMSBMSB字符的发送是随机进行的,收发双方必须对传送的字符字符的发送是随机进行的,收发双方必须对传送的字符字符的发送是随机进行的,收发双方必须对传送的字符字符的发送是随机进行的,收发双方必须对传送的字符规定一定的格式。这种格式称为规定一定的格式。这种格式称为规定一定的格式。这种格式称为规定一定的格式。这种格式称为“ “帧帧帧帧” ”。一个字符在

61、异。一个字符在异。一个字符在异。一个字符在异步传送中称为一帧数据。步传送中称为一帧数据。步传送中称为一帧数据。步传送中称为一帧数据。以字符为单位进行的串行数据通信以字符为单位进行的串行数据通信以字符为单位进行的串行数据通信以字符为单位进行的串行数据通信忱锤诗怕销挝区蹈棘襄角歉吾契七画赔击爽堪剥箕针堰厩缕扦灌务名栖犀第5章定时器串口中断第5章定时器串口中断为逻辑为逻辑为逻辑为逻辑“0”“0”信号,占用一位,用来通信号,占用一位,用来通信号,占用一位,用来通信号,占用一位,用来通知知知知接收设备,一个新的字符开始了接收设备,一个新的字符开始了接收设备,一个新的字符开始了接收设备,一个新的字符开始了

62、数据位:数据位:数据位:数据位:起始位:起始位:起始位:起始位:奇偶位:奇偶位:奇偶位:奇偶位:5 58 8位。数据的最低位在前,最高位在后。位。数据的最低位在前,最高位在后。位。数据的最低位在前,最高位在后。位。数据的最低位在前,最高位在后。紧跟在最高位之后,占用一位,奇偶校紧跟在最高位之后,占用一位,奇偶校紧跟在最高位之后,占用一位,奇偶校紧跟在最高位之后,占用一位,奇偶校验时,根据协议置验时,根据协议置验时,根据协议置验时,根据协议置“1”“1”或或或或“0”.“0”.数据正数据正数据正数据正确性校验确性校验确性校验确性校验. .停止位:停止位:停止位:停止位:为逻辑为逻辑为逻辑为逻辑“

63、1”“1”信号,占用信号,占用信号,占用信号,占用1 1位或位或位或位或2 2位,当接位,当接位,当接位,当接收端收到停止位时,表示一帧数据收端收到停止位时,表示一帧数据收端收到停止位时,表示一帧数据收端收到停止位时,表示一帧数据结束结束结束结束。2 2、同步传送方式、同步传送方式、同步传送方式、同步传送方式数据块开始有数据块开始有数据块开始有数据块开始有1 12 2同步字符同步字符同步字符同步字符SYNCSYNC,后面是按顺序传送的数据块。后面是按顺序传送的数据块。后面是按顺序传送的数据块。后面是按顺序传送的数据块。数据结构:数据结构:数据结构:数据结构:上页上页下页下页回目录回目录受蒸啥撇

64、哇汤底见音暖敷蒲沦俄扇饶腐浇淫艾押竖减疟蒲脆驰针橙隶茶凭第5章定时器串口中断第5章定时器串口中断异步串行通信的特点异步串行通信的特点异步串行通信的特点异步串行通信的特点:1 1、可靠性较高,且易于实现。、可靠性较高,且易于实现。、可靠性较高,且易于实现。、可靠性较高,且易于实现。异步通信是异步通信是异步通信是异步通信是1 1次传送次传送次传送次传送1 1帧数据,接收设备在收到起始信号后只要帧数据,接收设备在收到起始信号后只要帧数据,接收设备在收到起始信号后只要帧数据,接收设备在收到起始信号后只要在一个字符的传输时间内和发送设备保持同步就能正确接收。在一个字符的传输时间内和发送设备保持同步就能正

65、确接收。在一个字符的传输时间内和发送设备保持同步就能正确接收。在一个字符的传输时间内和发送设备保持同步就能正确接收。就允许收发设备之间的时钟频率可略有偏差,而下一字符起始就允许收发设备之间的时钟频率可略有偏差,而下一字符起始就允许收发设备之间的时钟频率可略有偏差,而下一字符起始就允许收发设备之间的时钟频率可略有偏差,而下一字符起始位的到来又使同步重新校准,不会因累计效应而产生错位。位的到来又使同步重新校准,不会因累计效应而产生错位。位的到来又使同步重新校准,不会因累计效应而产生错位。位的到来又使同步重新校准,不会因累计效应而产生错位。2 2、数据传输的效率和速率慢。、数据传输的效率和速率慢。、

66、数据传输的效率和速率慢。、数据传输的效率和速率慢。由于异步通信要在每个字符的前后加上起始位和停止位这样的由于异步通信要在每个字符的前后加上起始位和停止位这样的由于异步通信要在每个字符的前后加上起始位和停止位这样的由于异步通信要在每个字符的前后加上起始位和停止位这样的附加位,使得传输有效的数据位减少,效率降低。如:传输附加位,使得传输有效的数据位减少,效率降低。如:传输附加位,使得传输有效的数据位减少,效率降低。如:传输附加位,使得传输有效的数据位减少,效率降低。如:传输ASCIIASCII码:码:码:码:1 1个起始位、个起始位、个起始位、个起始位、7 7个数据位、个数据位、个数据位、个数据位

67、、1 1个奇偶校验位、个奇偶校验位、个奇偶校验位、个奇偶校验位、1 1个停止个停止个停止个停止位,数据传输速率为位,数据传输速率为位,数据传输速率为位,数据传输速率为240240字符字符字符字符/ /秒,则波特率为秒,则波特率为秒,则波特率为秒,则波特率为24002400位位位位/ /秒,有效秒,有效秒,有效秒,有效数据位为数据位为数据位为数据位为240*7=1680240*7=1680位位位位/ /秒,传输效率只有秒,传输效率只有秒,传输效率只有秒,传输效率只有70%70%。3 3、传输速率慢。、传输速率慢。、传输速率慢。、传输速率慢。因为异步串行数据通信数据格式允许上一帧数据和下一帧数据因

68、为异步串行数据通信数据格式允许上一帧数据和下一帧数据因为异步串行数据通信数据格式允许上一帧数据和下一帧数据因为异步串行数据通信数据格式允许上一帧数据和下一帧数据之间有空闲位。之间有空闲位。之间有空闲位。之间有空闲位。淹沧曹搜巡荔懦任根妨亩儡洲则玛傀长羡梯嫡自沮撤筷糟餐庸沮彩善挽菠第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录二、二、二、二、MCS-51MCS-51串行口结构串行口结构串行口结构串行口结构1 1、数据缓冲器、数据缓冲器、数据缓冲器、数据缓冲器SBUFSBUF包括物理上独立的发送缓冲器、接收缓冲器包括物理上独立的发送缓冲器、接收缓冲器包括物理上独立的发送缓冲器

69、、接收缓冲器包括物理上独立的发送缓冲器、接收缓冲器发送缓冲器:只能写入不能读出发送缓冲器:只能写入不能读出发送缓冲器:只能写入不能读出发送缓冲器:只能写入不能读出. MOV SBUF,A. MOV SBUF,A接收缓冲器:只能读出不能写入接收缓冲器:只能读出不能写入接收缓冲器:只能读出不能写入接收缓冲器:只能读出不能写入. MOV A,SBUF. MOV A,SBUF二者共用一个地址二者共用一个地址二者共用一个地址二者共用一个地址99H99H2 2、串行口控制寄存器、串行口控制寄存器、串行口控制寄存器、串行口控制寄存器SCONSCON字节地址为字节地址为字节地址为字节地址为98H98H,可位寻

70、址,位地址为,可位寻址,位地址为,可位寻址,位地址为,可位寻址,位地址为98H98H9FH9FHSM0 SM1 SM2 REN TB8 RB8 TI RISM0 SM1 SM2 REN TB8 RB8 TI RISCON (98H)SCON (98H)D7D7D0D0傲谍骸戴尤槛纲冈猖含槛蛔赣甘狞波吐整现栽辣羞肌俏阁拽蒙砖苍武限丽第5章定时器串口中断第5章定时器串口中断SM0 SM1 SM2 REN TB8 RB8 TI RISM0 SM1 SM2 REN TB8 RB8 TI RISCON SCON D7D7D0D0SM0SM0、SM1SM1:串行口:串行口:串行口:串行口工作方式工作方式工

71、作方式工作方式选择位,如表选择位,如表选择位,如表选择位,如表6-36-3所示所示所示所示 0 0 0 0 0 0 移位寄存器方式(用于移位寄存器方式(用于移位寄存器方式(用于移位寄存器方式(用于I/OI/O扩展)扩展)扩展)扩展) 0 1 1 8 0 1 1 8位位位位UARTUART,波特率可变,波特率可变,波特率可变,波特率可变 1 0 2 9 1 0 2 9位位位位UARTUART,波特率为,波特率为,波特率为,波特率为fosc/32fosc/32或或或或fosc/64fosc/64 1 1 3 9 1 1 3 9位位位位UARTUART,波特率可变,波特率可变,波特率可变,波特率可变

72、SM0 SM1SM0 SM1 方式方式方式方式功功功功 能能能能表表表表6-3 6-3 串行口工作方式串行口工作方式串行口工作方式串行口工作方式上页上页下页下页回目录回目录径夫史舷充谁篡旱昼观座羌撅佣谐舞熙姬袖悬聪族婉质河韦岭悦甚念皆唆第5章定时器串口中断第5章定时器串口中断SM0 SM1 SM2 REN TB8 RB8 TI RISM0 SM1 SM2 REN TB8 RB8 TI RISCON SCON D7D7D0D0SM2SM2:多机通信控制位。多机通信控制位。多机通信控制位。多机通信控制位。在方式在方式在方式在方式2 2或方式或方式或方式或方式3 3中中中中,如果置,如果置,如果置,

73、如果置SM2=1SM2=1,则接收到的第,则接收到的第,则接收到的第,则接收到的第9 9位数据位数据位数据位数据RB8RB8为为为为“1”“1”时,才置位接收中断标志时,才置位接收中断标志时,才置位接收中断标志时,才置位接收中断标志RI=1RI=1;如果置;如果置;如果置;如果置SM2=0SM2=0,无论,无论,无论,无论RB8RB8为何值,均置位接收中为何值,均置位接收中为何值,均置位接收中为何值,均置位接收中断标志断标志断标志断标志RI=1RI=1。允许允许允许允许接收控制位。接收控制位。接收控制位。接收控制位。由软件置由软件置由软件置由软件置“1”“1”时,允许接收,时,允许接收,时,允

74、许接收,时,允许接收,置置置置“0”“0”时,禁止接收时,禁止接收时,禁止接收时,禁止接收RENREN:在方式在方式在方式在方式1 1时时时时,如果置,如果置,如果置,如果置SM2=1SM2=1,则只有接收到有效的,则只有接收到有效的,则只有接收到有效的,则只有接收到有效的停止位时才置位停止位时才置位停止位时才置位停止位时才置位RIRI。在方式在方式在方式在方式0 0时时时时,应置,应置,应置,应置SM2=0SM2=0。授吞聊咬堂反冬桨投畜舍惺产倡铬吩嗓亚屉砚敢诅雷惹湍匙杆庚霞肯荤翌第5章定时器串口中断第5章定时器串口中断TB8TB8:在方式在方式在方式在方式2 2和方式和方式和方式和方式3

75、3中要发送的第中要发送的第中要发送的第中要发送的第9 9位数据,需要时由位数据,需要时由位数据,需要时由位数据,需要时由软件软件软件软件置位或复位置位或复位置位或复位置位或复位RB8RB8:在方式在方式在方式在方式2 2和方式和方式和方式和方式3 3中要接收的第中要接收的第中要接收的第中要接收的第9 9位数据,在方式位数据,在方式位数据,在方式位数据,在方式1 1时,时,时,时,如如如如SM2=0SM2=0,RB8RB8是接收到的停止位。在方式是接收到的停止位。在方式是接收到的停止位。在方式是接收到的停止位。在方式0 0中,中,中,中,不使用不使用不使用不使用RB8RB8TITI:发送中断标志

76、发送中断标志发送中断标志发送中断标志。在方式。在方式。在方式。在方式0 0串行发送第串行发送第串行发送第串行发送第8 8位结束时由硬件置位结束时由硬件置位结束时由硬件置位结束时由硬件置“1”“1”,或在其他方式中串行发送停止位的开始时置,或在其他方式中串行发送停止位的开始时置,或在其他方式中串行发送停止位的开始时置,或在其他方式中串行发送停止位的开始时置“1”“1”,必须由软件清必须由软件清必须由软件清必须由软件清“0”“0”RIRI:接收中断标志。接收中断标志。接收中断标志。接收中断标志。在方式在方式在方式在方式0 0串行接收到第串行接收到第串行接收到第串行接收到第8 8位结束时由硬位结束时

77、由硬位结束时由硬位结束时由硬件置件置件置件置“1”“1”,或在其他方式中接收到停止位的中间时置,或在其他方式中接收到停止位的中间时置,或在其他方式中接收到停止位的中间时置,或在其他方式中接收到停止位的中间时置“1”“1”,必须由软件清必须由软件清必须由软件清必须由软件清“0”“0”上页上页下页下页回目录回目录SM0 SM1 SM2 REN TB8 RB8 TI RISM0 SM1 SM2 REN TB8 RB8 TI RISCON SCON D7D7D0D0著慷汲栏崭奈邦菩宜趾铃禁柱瘤羹烧歇徐苗掸笛幢簧卷浸拄侨露乔耗挝冰第5章定时器串口中断第5章定时器串口中断3 3、特殊功能寄存器、特殊功能寄

78、存器、特殊功能寄存器、特殊功能寄存器PCONPCON其字节地址其字节地址其字节地址其字节地址87H87H,没有位寻址功能。,没有位寻址功能。,没有位寻址功能。,没有位寻址功能。PCONPCON(8 87H7H)SMODSMODSMODSMOD:波特率选择位。:波特率选择位。:波特率选择位。:波特率选择位。SMOD=1SMOD=1时,波特率加倍时,波特率加倍时,波特率加倍时,波特率加倍三、串行口工作方式三、串行口工作方式三、串行口工作方式三、串行口工作方式1 1、方式、方式、方式、方式0 0移位寄存器输入输出方式,移位寄存器输入输出方式,移位寄存器输入输出方式,移位寄存器输入输出方式,可外接移位

79、寄存器,以扩展可外接移位寄存器,以扩展可外接移位寄存器,以扩展可外接移位寄存器,以扩展I/OI/O口,数据由口,数据由口,数据由口,数据由RXDRXD提供,移位同步脉冲由提供,移位同步脉冲由提供,移位同步脉冲由提供,移位同步脉冲由TXDTXD提供。提供。提供。提供。方式方式方式方式0 0的波特率是固定的,为的波特率是固定的,为的波特率是固定的,为的波特率是固定的,为fosc/12fosc/12。 上页上页下页下页回目录回目录生缩扮爆剪钓劝擞芹拼辨制勺抚苗嫁冒趴翁县诛沏辉壬豌袭灶贼缀菏披芍第5章定时器串口中断第5章定时器串口中断2 2、方式、方式、方式、方式1 1波特率可变波特率可变波特率可变波

80、特率可变的的的的8 8位位位位异步通信接口方式。异步通信接口方式。异步通信接口方式。异步通信接口方式。波特率波特率波特率波特率=2=2SMODSMOD/32T1/32T1溢出率溢出率溢出率溢出率上页上页下页下页回目录回目录帧格式:帧格式:帧格式:帧格式:1 1个起始位个起始位个起始位个起始位8 8个数据位个数据位个数据位个数据位1 1个停止位个停止位个停止位个停止位峭了攘汐腰共豆穿株疥职娃恨酵嘎雹羹淀窗信蔗践卿啼动描绅惹烷符熬酝第5章定时器串口中断第5章定时器串口中断3 3、方式、方式、方式、方式2 29 9位异步通信接口方式。传送一帧数据信息为位异步通信接口方式。传送一帧数据信息为位异步通信

81、接口方式。传送一帧数据信息为位异步通信接口方式。传送一帧数据信息为1111位位位位波特率波特率波特率波特率=2=2SMODSMOD/64fosc/64fosc上页上页下页下页回目录回目录4 4、方式、方式、方式、方式3 39 9位位位位异步通信接口方式。异步通信接口方式。异步通信接口方式。异步通信接口方式。波特率波特率波特率波特率=2=2SMODSMOD/64T1/64T1的溢出率的溢出率的溢出率的溢出率其他与方式其他与方式其他与方式其他与方式2 2类似类似类似类似1 1个起始位个起始位个起始位个起始位9 9个数据位个数据位个数据位个数据位(SBUF+TB8/RB8)(SBUF+TB8/RB8

82、)1 1个停止位个停止位个停止位个停止位方式方式方式方式2 2、3 3的帧格式:的帧格式:的帧格式:的帧格式:斩装导蛛助液谊苍哲互壹棵夸猜嘴口橡奥驮求封相桌汽溯蹦榜溶掩锨冠协第5章定时器串口中断第5章定时器串口中断四、波特率的设计四、波特率的设计四、波特率的设计四、波特率的设计方式方式方式方式0 0的波特率是固定的:的波特率是固定的:的波特率是固定的:的波特率是固定的:波特率波特率波特率波特率=fosc/12=fosc/12方式方式方式方式2 2波特率取决于波特率取决于波特率取决于波特率取决于SMODSMOD波特率波特率波特率波特率=2=2SMODSMOD/32T1/32T1的溢出率的溢出率的

83、溢出率的溢出率方式方式方式方式2 2波特率波特率波特率波特率=2=2SMODSMOD/64 fosc/64 foscSMOD=0SMOD=0时,波特率时,波特率时,波特率时,波特率=fosc/64=fosc/64,SMOD=1SMOD=1时,波特率时,波特率时,波特率时,波特率=fosc/32=fosc/32方式方式方式方式1 1、3 3波特率取决于波特率取决于波特率取决于波特率取决于T1T1的溢出率的溢出率的溢出率的溢出率SMOD=0SMOD=0时,波特率时,波特率时,波特率时,波特率= T1= T1的溢出率的溢出率的溢出率的溢出率/32/32,SMOD=1SMOD=1时,波特率时,波特率时

84、,波特率时,波特率= T1= T1的溢出率的溢出率的溢出率的溢出率/16/16上页上页下页下页回目录回目录品芒毋心比冶你荆丢柿小洒鼓默伟首愚寸以俘演截灼淡归含痔贾芍闻丰润第5章定时器串口中断第5章定时器串口中断定时器定时器定时器定时器1 1作波特率发生器作波特率发生器作波特率发生器作波特率发生器T1T1采用采用采用采用方式方式方式方式2 2定时器工作方式定时器工作方式定时器工作方式定时器工作方式T1T1的溢出率的溢出率的溢出率的溢出率=fosc/ 12=fosc/ 12(2 28 8- -初值)初值)初值)初值) 串口工作于方式串口工作于方式串口工作于方式串口工作于方式1 1、3 3时波特率:

85、时波特率:时波特率:时波特率:波特率波特率波特率波特率=2=2SMODSMOD/32T1/32T1的溢出率的溢出率的溢出率的溢出率= 2= 2SMOD SMOD fosc/ 32 12fosc/ 32 12(2 28 8- -初值)初值)初值)初值) 上页上页下页下页回目录回目录通信时通信时通信时通信时, ,人工约定一人工约定一人工约定一人工约定一BPSBPS值值值值, ,计算定时器初值计算定时器初值计算定时器初值计算定时器初值位火勤钝葬谋省皂号誉砸壬皆醇享席疤袖祷跑溶负之榆生淀熊址蜀磨抿血第5章定时器串口中断第5章定时器串口中断表6-4给出常用波特率和定时器T1各参数关系。表6-4 定时器1

86、产生的常用波特率波特率串行口方式1.3情况Fosc/MHzSMOD定 时 器 1C/T模 式重 装 载 值62.5K12102FFH19.2K11.0592102FDH9.6K11.0592002FDH4.8K11.0592002FAH2.4K11.0592002F4H1.2K11.0592002E8H137.5K11.9860021DH110600272H11012001FEEBH派烩赖苟傲买鞠嚣机峦久河丑佯舜膨抗唬哮办秸挫众访孔斡简赴舵扔酒彭第5章定时器串口中断第5章定时器串口中断5.2.5 5.2.5 串行口的应用串行口的应用串行口的应用串行口的应用1. 1. 方式方式方式方式0 0应用

87、应用应用应用 例例例例5 5-6 -6 应用串行口方式输出,在串行口外应用串行口方式输出,在串行口外应用串行口方式输出,在串行口外应用串行口方式输出,在串行口外接移位寄存器,构成显示器接口。接移位寄存器,构成显示器接口。接移位寄存器,构成显示器接口。接移位寄存器,构成显示器接口。 作作作作用用用用? ?份黔击蛮揩湿耍蔽结款匈急叙热懒劳时汝拔奠援帆汐婚忽顿兢白计际激扭第5章定时器串口中断第5章定时器串口中断设显示缓冲区设在设显示缓冲区设在设显示缓冲区设在设显示缓冲区设在DISBUFDISBUF开始的区域中,下面是显示子程序清单。开始的区域中,下面是显示子程序清单。开始的区域中,下面是显示子程序清

88、单。开始的区域中,下面是显示子程序清单。DISPLYDISPLY:MOV SCONMOV SCON,#0 #0 ;选择串行口为方式;选择串行口为方式;选择串行口为方式;选择串行口为方式0 0发送发送发送发送 MOV R7 MOV R7,#3 #3 ;字节计数;字节计数;字节计数;字节计数 MOV R0 MOV R0,# #DISBUFDISBUF;R0R0指向显示缓冲区指向显示缓冲区指向显示缓冲区指向显示缓冲区 SETB P1.0 SETB P1.0 ;选通;选通;选通;选通TXDTXD同步移位时钟同步移位时钟同步移位时钟同步移位时钟L1L1: MOV AMOV A,R0 R0 ;取要显示的数

89、;取要显示的数;取要显示的数;取要显示的数 MOV DPTR,#TABLE MOV DPTR,#TABLE ;地址调整;地址调整;地址调整;地址调整 MOVC A MOVC A,A+DPTR A+DPTR ;查字形表;查字形表;查字形表;查字形表 MOV SBUF MOV SBUF,A A ;开始发送;开始发送;开始发送;开始发送 JNB TIJNB TI,$ $ ;等待一帧发送完;等待一帧发送完;等待一帧发送完;等待一帧发送完 CLR TI CLR TI ;清发送中断标志;清发送中断标志;清发送中断标志;清发送中断标志 INC R0 INC R0 ;修改显示缓冲区指针;修改显示缓冲区指针;修

90、改显示缓冲区指针;修改显示缓冲区指针 DJNZ R7DJNZ R7,L1 L1 ;三个;三个;三个;三个LEDLED显示完了吗显示完了吗显示完了吗显示完了吗? ? CLR P1.0 CLR P1.0 ;关;关;关;关TXDTXD RETRET ;返回;返回;返回;返回TABLETABLE: DB 11HDB 11H,D7HD7H,32H32H,92H92H,D4HD4H; DB 98HDB 98H,18H18H,D8HD8H,10H10H,90H 90H ;字形码表;字形码表;字形码表;字形码表 瞬烈栏灭谱脏来裤起段讽窜叮沦夺捏券磊书劲量遍悼东摆犹鹰音稠九萧蓑第5章定时器串口中断第5章定时器串

91、口中断3. 3. 方式方式方式方式2 2或方式或方式或方式或方式3 3的应用的应用的应用的应用 串串串串行行行行口口口口方方方方式式式式2 2、方方方方式式式式3 3常常常常用用用用于于于于多多多多机机机机通通通通信信信信,如如如如果果果果采采采采用用用用主主主主从从从从式式式式构构构构成成成成多多多多机机机机系系系系统统统统,多多多多台台台台从从从从机机机机可可可可以以以以减减减减轻轻轻轻主主主主机机机机的的的的工工工工作作作作负负负负担担担担,构构构构成成成成廉廉廉廉价价价价的的的的分分分分布式多机系统。电路结构如图布式多机系统。电路结构如图布式多机系统。电路结构如图布式多机系统。电路结构

92、如图6-166-16所示。所示。所示。所示。串行口方式串行口方式串行口方式串行口方式2 2或方式或方式或方式或方式3 3数据帧的第数据帧的第数据帧的第数据帧的第9 9位是可编程位,可利用程控位是可编程位,可利用程控位是可编程位,可利用程控位是可编程位,可利用程控灵活改变灵活改变灵活改变灵活改变TB8TB8的状态,接收时,当接收机的的状态,接收时,当接收机的的状态,接收时,当接收机的的状态,接收时,当接收机的SM2=1SM2=1时,只有接时,只有接时,只有接时,只有接收到的收到的收到的收到的RB8=1RB8=1,才能置位,才能置位,才能置位,才能置位RIRI,接收数据才有效,而当接收机,接收数据

93、才有效,而当接收机,接收数据才有效,而当接收机,接收数据才有效,而当接收机SM2=0SM2=0时,无论收到的时,无论收到的时,无论收到的时,无论收到的RB8RB8是是是是“0 0”还是还是还是还是“1 1”都能置位都能置位都能置位都能置位RIRI,接,接,接,接收到的数据有效。利用这种特点可实现多机通信。收到的数据有效。利用这种特点可实现多机通信。收到的数据有效。利用这种特点可实现多机通信。收到的数据有效。利用这种特点可实现多机通信。 常补祥彪卯柴卫娘伊圃肖罢灰篷利赣杀霜瑚几签皱座存佳攀棘菠毖趾贡恳第5章定时器串口中断第5章定时器串口中断图图图图5 5 5 5-17 -17 多机通多机通多机通

94、多机通信原理流程信原理流程信原理流程信原理流程 Y Y Y YN N N N匝纲善蛆笨皱埠平离契陵寡崔叉芝扒淌型弦出肇俐独卒辙宜任喘烩谬金坐第5章定时器串口中断第5章定时器串口中断5151串行接口可扩展应用:串行接口可扩展应用:串行接口可扩展应用:串行接口可扩展应用:1 1、扩展、扩展、扩展、扩展RS-232RS-232接口(接口(接口(接口(MAX232CPEMAX232CPE等)。等)。等)。等)。2 2、扩展、扩展、扩展、扩展RS-485RS-485接口接口接口接口(75LBC184(75LBC184等等等等) )。3 3、扩展、扩展、扩展、扩展GPRSGPRS无线通信接口。无线通信接口

95、。无线通信接口。无线通信接口。4 4、扩展无线红外通信接口、扩展无线红外通信接口、扩展无线红外通信接口、扩展无线红外通信接口5 5、。、。、。、。汹毛哥得辙俄核翘宋陋窿埔杯姚纪柳凹卓旦遁疗禽倘凿懂阳丈绢柄钵萤餐第5章定时器串口中断第5章定时器串口中断串行通信使用中应注意问题串行通信使用中应注意问题串行通信使用中应注意问题串行通信使用中应注意问题1 1、波特率误差对数据接收的影响、波特率误差对数据接收的影响、波特率误差对数据接收的影响、波特率误差对数据接收的影响2 2、RS-485RS-485接口举例接口举例接口举例接口举例3 3、通信协议制定、通信协议制定、通信协议制定、通信协议制定4 4、通

96、信的可靠性措施、通信的可靠性措施、通信的可靠性措施、通信的可靠性措施颊佰陋鹏溯诸痉娟示辖氛隙洁法鲍签热速悸火迭吸暮违姐饥编乡侮魂允沿第5章定时器串口中断第5章定时器串口中断2 2、远距离串行通信设计举例、远距离串行通信设计举例、远距离串行通信设计举例、远距离串行通信设计举例MCS-51MCS-51单片机的单片机的单片机的单片机的UARTUART收发的是收发的是收发的是收发的是TTLTTL电平,通信距离是电平,通信距离是电平,通信距离是电平,通信距离是有限的。通过适当接口电路,设计成有限的。通过适当接口电路,设计成有限的。通过适当接口电路,设计成有限的。通过适当接口电路,设计成RS-232RS-

97、232、RS-485RS-485接接接接口。口。口。口。80318031TXDTXDP1.0P1.0RXDRXD485485接口芯片接口芯片接口芯片接口芯片DIDIRE/DERE/DERIRIA AB BVCCVCCGNDGNDSN75LBC184SN75LBC184、MAX485MAX485、SN75176SN75176 . .RS-485RS-485是平衡传输方式的串行接口标准,是平衡传输方式的串行接口标准,是平衡传输方式的串行接口标准,是平衡传输方式的串行接口标准,100KBPS100KBPS下可传输下可传输下可传输下可传输12001200米米米米。卷菏擞邻鹿瞬瘦农扼资鞘唁荷的百来揣酋垒

98、膘测盂抽贡愤吵衔带籽饭困锐第5章定时器串口中断第5章定时器串口中断3 3、通信协议、通信协议、通信协议、通信协议目的地址源地址命令码数据长度数据校验码目的地址目的地址目的地址目的地址:欲接收数据的仪表地址(编号):欲接收数据的仪表地址(编号):欲接收数据的仪表地址(编号):欲接收数据的仪表地址(编号)数据长度数据长度数据长度数据长度:要发送数据个数:要发送数据个数:要发送数据个数:要发送数据个数源源源源 地地地地 址址址址:发送该帧数据的仪表的地址(编号):发送该帧数据的仪表的地址(编号):发送该帧数据的仪表的地址(编号):发送该帧数据的仪表的地址(编号)数数数数 据据据据:发送的内容。:发送

99、的内容。:发送的内容。:发送的内容。校校校校 验验验验 码码码码:自数据长度始到数据最后一个字节所形:自数据长度始到数据最后一个字节所形:自数据长度始到数据最后一个字节所形:自数据长度始到数据最后一个字节所形 成的校验码值。成的校验码值。成的校验码值。成的校验码值。通信双方对数据传送控制的一种约定,包括数据通信双方对数据传送控制的一种约定,包括数据通信双方对数据传送控制的一种约定,包括数据通信双方对数据传送控制的一种约定,包括数据格式、波特率、检纠错方式、控制字符含义等。格式、波特率、检纠错方式、控制字符含义等。格式、波特率、检纠错方式、控制字符含义等。格式、波特率、检纠错方式、控制字符含义等

100、。例如:例如:例如:例如:BPS=9600BPS=9600,方式,方式,方式,方式3 3,和校验。数据包格式为:,和校验。数据包格式为:,和校验。数据包格式为:,和校验。数据包格式为:命命命命 令令令令 码:码:码:码:解释后续数据含义或指令对方要完成的操作解释后续数据含义或指令对方要完成的操作解释后续数据含义或指令对方要完成的操作解释后续数据含义或指令对方要完成的操作。遗蔬灸贫抹等萄补装黍太绅绒锁虾襄鲁懊顶俏晋鳞睛幻藩奥刀凌皖测塑露第5章定时器串口中断第5章定时器串口中断目的地址源地址命令码数据长度数据校验码例:例:例:例:1#1#机要发送(机要发送(机要发送(机要发送(1 1、2 2、3

101、3、4 4)数据给)数据给)数据给)数据给2#2#机,机,机,机,命令码为命令码为命令码为命令码为01,01,采用和校验方式。采用和校验方式。采用和校验方式。采用和校验方式。02H 01H 01H 04H01H、2H、03H、04H00H、10H和校验:和校验:和校验:和校验:01H+01H+04H+01H+02H+03H+04H=0010H01H+01H+04H+01H+02H+03H+04H=0010H记盅尼殆前蔫省迷靠梧喝欠胃瓤尊香牡践磋蚁拽嘻锑虫窖悸雨拄袖喂碴肘第5章定时器串口中断第5章定时器串口中断4 4、提高通信可靠性措施、提高通信可靠性措施、提高通信可靠性措施、提高通信可靠性措施

102、1 1)、通信协议中要有差错校验功能)、通信协议中要有差错校验功能)、通信协议中要有差错校验功能)、通信协议中要有差错校验功能如:奇偶校验、和校验、如:奇偶校验、和校验、如:奇偶校验、和校验、如:奇偶校验、和校验、CRCCRC校验、信息校验、信息校验、信息校验、信息冗余比较等冗余比较等冗余比较等冗余比较等2 2)、错误重发及次数限制)、错误重发及次数限制)、错误重发及次数限制)、错误重发及次数限制发现校验错误,则进行信息重发,重发发现校验错误,则进行信息重发,重发发现校验错误,则进行信息重发,重发发现校验错误,则进行信息重发,重发N N次次次次后仍然有错误,则进行错误报警及处理。后仍然有错误,

103、则进行错误报警及处理。后仍然有错误,则进行错误报警及处理。后仍然有错误,则进行错误报警及处理。3 3)、超时重发及次数限制)、超时重发及次数限制)、超时重发及次数限制)、超时重发及次数限制发出信息后在一定时间内收不到对方信息,发出信息后在一定时间内收不到对方信息,发出信息后在一定时间内收不到对方信息,发出信息后在一定时间内收不到对方信息,称为超时。出现超时应进行信息重发,重发称为超时。出现超时应进行信息重发,重发称为超时。出现超时应进行信息重发,重发称为超时。出现超时应进行信息重发,重发N N次次次次后仍然有错误,则进行错误报警及处理后仍然有错误,则进行错误报警及处理后仍然有错误,则进行错误报

104、警及处理后仍然有错误,则进行错误报警及处理布彼誊获缠汀巍咒筷枯拽快炽囱熙擦僵首懂唤脑倔晤贴姻氟滔摸佣尽抨朝第5章定时器串口中断第5章定时器串口中断5.3 MCS-515.3 MCS-51单片机单片机单片机单片机中断系统中断系统中断系统中断系统上页上页下页下页回目录回目录中断中断中断中断概念概念概念概念:当计算机执行正常程序时,由于系统中出现某些需当计算机执行正常程序时,由于系统中出现某些需当计算机执行正常程序时,由于系统中出现某些需当计算机执行正常程序时,由于系统中出现某些需要紧急处理的情况或特殊请求时,需打断当前正在要紧急处理的情况或特殊请求时,需打断当前正在要紧急处理的情况或特殊请求时,需

105、打断当前正在要紧急处理的情况或特殊请求时,需打断当前正在运行的程序,转而对这些紧急情况进行处理,处理运行的程序,转而对这些紧急情况进行处理,处理运行的程序,转而对这些紧急情况进行处理,处理运行的程序,转而对这些紧急情况进行处理,处理完后,再返回被打断的程序继续执行的能力。完后,再返回被打断的程序继续执行的能力。完后,再返回被打断的程序继续执行的能力。完后,再返回被打断的程序继续执行的能力。中断源中断源中断源中断源:引起中断的事件或设备称为中断源引起中断的事件或设备称为中断源引起中断的事件或设备称为中断源引起中断的事件或设备称为中断源采用中断的优点采用中断的优点采用中断的优点采用中断的优点:良好

106、的中断系统使良好的中断系统使良好的中断系统使良好的中断系统使CPUCPU具有处理随机应变的能力,具有处理随机应变的能力,具有处理随机应变的能力,具有处理随机应变的能力,从而扩大应用范围,提高从而扩大应用范围,提高从而扩大应用范围,提高从而扩大应用范围,提高CPUCPU工作效率。工作效率。工作效率。工作效率。勇档反它迅炕悸麓饰深她脚淖埠蜗垫犀抠纵潦函终灌战拷俊涪丽拌藤肚噶第5章定时器串口中断第5章定时器串口中断一、中断的一般功能一、中断的一般功能一、中断的一般功能一、中断的一般功能1 1、中断的、中断的、中断的、中断的屏蔽屏蔽屏蔽屏蔽与与与与开放开放开放开放中断屏蔽:中断屏蔽:中断屏蔽:中断屏蔽

107、:称为关中断,称为关中断,称为关中断,称为关中断,CPUCPU不响应中断请求不响应中断请求不响应中断请求不响应中断请求称为开中断,称为开中断,称为开中断,称为开中断,CPUCPU可响应中断请求可响应中断请求可响应中断请求可响应中断请求中断开放:中断开放:中断开放:中断开放:2 2、中断响应与中断返回、中断响应与中断返回、中断响应与中断返回、中断响应与中断返回中断请求中断请求RETI主主程程序序响应中断响应中断响应中断响应中断中中断断服服务务子子程程序序返主程序返主程序继继继继续续续续执执执执行行行行主主主主程程程程序序序序上页上页下页下页回目录回目录图图图图6-186-18(a a)中断响应)

108、中断响应)中断响应)中断响应中断请求中断请求PCPC断点断点断点断点PCPC断点断点断点断点摧貌罪更背埔半碉社油超拈烫欠逐获遮临风窖橙郑卖拥润智腻湖典醚稽俺第5章定时器串口中断第5章定时器串口中断3 3、中断优先级、中断优先级、中断优先级、中断优先级 中断开放的情况下,如果有几个中断请求中断开放的情况下,如果有几个中断请求中断开放的情况下,如果有几个中断请求中断开放的情况下,如果有几个中断请求同时发生,应首先响应中断优先级较高的中断同时发生,应首先响应中断优先级较高的中断同时发生,应首先响应中断优先级较高的中断同时发生,应首先响应中断优先级较高的中断4 4、中断嵌套、中断嵌套、中断嵌套、中断嵌

109、套低级中断请求低级中断请求RETI主主程程序序响应低级中断响应低级中断响应低级中断响应低级中断高高级级中中断断服服务务子子程程序序返主程序返主程序继继继继续续续续执执执执行行行行主主主主程程程程序序序序高级中断请求高级中断请求响应高级中断响应高级中断响应高级中断响应高级中断返低级中断返低级中断上页上页下页下页回目录回目录图图图图6-186-18(b b)中断嵌套)中断嵌套)中断嵌套)中断嵌套RETI低低级级中中断断服服务务子子程程序序低低级级中中断断服服务务子子程程序序遭瞧皆属滥酷断碱泼嫂芋降舅绿豁斧篱磋夹缨抚桩街衍哭狰诀迹久濒巢荣第5章定时器串口中断第5章定时器串口中断二、中断源二、中断源二

110、、中断源二、中断源 5 5个中断源个中断源个中断源个中断源2 2个优先级个优先级个优先级个优先级2 2个外部中断个外部中断个外部中断个外部中断3 3个内部中断个内部中断个内部中断个内部中断INT0INT0( ( P P3.2 3.2 ) )INT1INT1( ( P P3.3 3.3 ) )T0T0T1T1UARTUART上页上页下页下页回目录回目录 与中断有关的特殊功能寄存器与中断有关的特殊功能寄存器与中断有关的特殊功能寄存器与中断有关的特殊功能寄存器: :IP: IP: 中断优先控制寄存器中断优先控制寄存器中断优先控制寄存器中断优先控制寄存器IE: IE: 中断允许控制寄存器中断允许控制寄

111、存器中断允许控制寄存器中断允许控制寄存器TCON: TCON: 定时定时定时定时/ /计数控制寄存器计数控制寄存器计数控制寄存器计数控制寄存器SCON: UARTSCON: UART控制寄存器控制寄存器控制寄存器控制寄存器MCS MCS 5151中断要点中断要点中断要点中断要点MCS MCS 5151中断要点中断要点中断要点中断要点逗荒吭摩谜翼硬译蕊槽壹挝篓砾慢驻屡拽惶吼掉岭蚕当梅桓谍万碾越底窍第5章定时器串口中断第5章定时器串口中断三、中断控制寄存器三、中断控制寄存器三、中断控制寄存器三、中断控制寄存器1 1、中断允许寄存器、中断允许寄存器、中断允许寄存器、中断允许寄存器 IE IE EA

112、/ EA / / / ESES ETET1 1 EXEX1 1 ETET0 0 EXEX0 0INTINT0 0INTINT1 1T T1 1T T0 0UARTUARTCPUCPU0 0 禁止中断禁止中断禁止中断禁止中断1 1 允许中断允许中断允许中断允许中断0 0 禁止禁止禁止禁止1 1 允许允许允许允许 总中断控制位总中断控制位总中断控制位总中断控制位 总中断控制位总中断控制位总中断控制位总中断控制位IEIE(A8)(A8)每个中断的开放和禁止是单独可控的每个中断的开放和禁止是单独可控的,可编程的,由具体任可编程的,由具体任务决定。务决定。ETET2 2T2T2CPUCPUIE 的相应位

113、可由软件置为的相应位可由软件置为 “0” 或或 “1” ,禁止禁止或或开放某个开放某个中断中断上页上页下页下页回目录回目录返候摘长淄茧谷癣桐入窍铁委汪渔仑孺宜去辑璃逐策呵皇胰飞酸镁措敬陡第5章定时器串口中断第5章定时器串口中断2 2、定时、定时、定时、定时/ /计数器控制寄存器计数器控制寄存器计数器控制寄存器计数器控制寄存器TCONTCON TCON TCON (88H)(88H)TF1 TF1 TF0 TF0 IE1IE1 IT1IT1 IE0 IE0 IT0IT0 INTINT1 1 INTINT0 0触发方式控制位触发方式控制位触发方式控制位触发方式控制位0 0 低电平触低电平触低电平触

114、低电平触发发发发1 1 边沿边沿边沿边沿 触发触发触发触发 INTINT1 1 INTINT0 0外部中断请求标志外部中断请求标志外部中断请求标志外部中断请求标志1 1 硬件置位申请中断硬件置位申请中断硬件置位申请中断硬件置位申请中断0 0 CPU CPU响应中断后自动清除响应中断后自动清除响应中断后自动清除响应中断后自动清除T T1 1 T T0 0溢出标志溢出标志溢出标志溢出标志1 1 由硬件置位申请中断由硬件置位申请中断由硬件置位申请中断由硬件置位申请中断0 0 CPU CPU响应中断后由硬件自动清除,也响应中断后由硬件自动清除,也响应中断后由硬件自动清除,也响应中断后由硬件自动清除,也

115、可由指令清除可由指令清除可由指令清除可由指令清除上页上页下页下页回目录回目录中断请求标志中断请求标志中断请求标志中断请求标志TRTR1 1 TR TR0 0渭柿火烧州鹤迟双玖裸晒卵舆斤结娄级首袄军筐挨黍愿挂贷矫滦循论碾够第5章定时器串口中断第5章定时器串口中断3 3、中断优先级寄存器、中断优先级寄存器、中断优先级寄存器、中断优先级寄存器 IP IP / / / / / / PSPS PTPT1 1 PXPX1 1 PTPT0 0 PXPX0 0IPIP(B8(B8) )PTPT2 2INTINT0 0INTINT1 1T T1 1T T0 0UARTUART0 0 低低低低优先级优先级优先级优

116、先级中断源中断源中断源中断源1 1 高高高高优先级优先级优先级优先级中断源中断源中断源中断源T2T2上页上页下页下页回目录回目录3 3、优先级结构、优先级结构、优先级结构、优先级结构中断优先级控制遵循的两个基本原则:中断优先级控制遵循的两个基本原则:中断优先级控制遵循的两个基本原则:中断优先级控制遵循的两个基本原则: 一个正在执行的低级中断服务程序,能被一个正在执行的低级中断服务程序,能被一个正在执行的低级中断服务程序,能被一个正在执行的低级中断服务程序,能被 高优先级中断请求所中断,但不能被同优高优先级中断请求所中断,但不能被同优高优先级中断请求所中断,但不能被同优高优先级中断请求所中断,但

117、不能被同优 先级中断请求所中断。先级中断请求所中断。先级中断请求所中断。先级中断请求所中断。 一个正在执行的高级中断服务程序,不能被一个正在执行的高级中断服务程序,不能被一个正在执行的高级中断服务程序,不能被一个正在执行的高级中断服务程序,不能被 任何中断请求所中断,直到返回。任何中断请求所中断,直到返回。任何中断请求所中断,直到返回。任何中断请求所中断,直到返回。2 2个中断个中断个中断个中断优先级优先级优先级优先级可位寻趾可位寻趾变沸破楞贤狙朋营永壬窑坎北只招畏藻欣描音北射巢钝馈裕儒俊件屡镰魏第5章定时器串口中断第5章定时器串口中断实现这两个原则的方法:实现这两个原则的方法:上页上页下页下

118、页回目录回目录 中断系统内部设置了两个不可寻址的优先级状态触发中断系统内部设置了两个不可寻址的优先级状态触发中断系统内部设置了两个不可寻址的优先级状态触发中断系统内部设置了两个不可寻址的优先级状态触发器。一个指出正在处理高优先级中断,并阻止所有其他中器。一个指出正在处理高优先级中断,并阻止所有其他中器。一个指出正在处理高优先级中断,并阻止所有其他中器。一个指出正在处理高优先级中断,并阻止所有其他中断;另一个指出正在处理低优先级中断,并阻止了除高优断;另一个指出正在处理低优先级中断,并阻止了除高优断;另一个指出正在处理低优先级中断,并阻止了除高优断;另一个指出正在处理低优先级中断,并阻止了除高优

119、先级中断外的其他任何中断。先级中断外的其他任何中断。先级中断外的其他任何中断。先级中断外的其他任何中断。高优先级高优先级状态触发器状态触发器低优先级低优先级状态触发器状态触发器是不可寻址的是不可寻址的当当CPU响应响应高级中断,高级中断,并进入中断并进入中断服务时服务时“1”“1”RETI“0”当当CPU响应响应低级中断,低级中断,并进入中断并进入中断服务时服务时“1”RETI“0”骑拘冯茂堑谬邀咙斩炼替酝尸菩批淘机付弟帚同述苗霸均决得项贼咬哈溶第5章定时器串口中断第5章定时器串口中断 在同级的中断源在同级的中断源在同级的中断源在同级的中断源同时同时同时同时发生中断请求时,发生中断请求时,发生

120、中断请求时,发生中断请求时,CPUCPU内部采用硬件查询逻辑,决定同级中断源优先级内部采用硬件查询逻辑,决定同级中断源优先级内部采用硬件查询逻辑,决定同级中断源优先级内部采用硬件查询逻辑,决定同级中断源优先级别高低。查询顺序:别高低。查询顺序:别高低。查询顺序:别高低。查询顺序:外部中断请求外部中断请求外部中断请求外部中断请求 INTINT0 0定时定时定时定时/ /计数器计数器计数器计数器 T T0 0定时定时定时定时/ /计数器计数器计数器计数器 T T1 1串行口串行口串行口串行口 UARTUART定时定时定时定时/ /计数器计数器计数器计数器 T T2 2外部中断请求外部中断请求外部中

121、断请求外部中断请求 INTINT1 1最高最高最高最高最低最低最低最低上页上页下页下页回目录回目录涅缩统呀烘秘楚遵储第请厉杜几霄苗膜涝爆邪肠势哟硒赠值瑶变砰吐迂怕第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录源允许源允许源允许源允许图图图图6-19 MCS-516-19 MCS-51中断系统总体逻辑结构中断系统总体逻辑结构中断系统总体逻辑结构中断系统总体逻辑结构总允许总允许总允许总允许 优先级优先级优先级优先级自自自自然然然然优优优优先先先先级级级级中断源中断源中断源中断源自自自自然然然然优优优优先先先先级级级级中断源中断源中断源中断源查询硬件查询硬件查询硬件查询硬件查询

122、硬件查询硬件查询硬件查询硬件 低级低级低级低级中断请求中断请求中断请求中断请求 矢量矢量矢量矢量地址送地址送地址送地址送PC PC IPIPIEIETCONTCON SCON SCONEX0EX0ET0ET0EX1EX1ET1ET1ESESEAEAINT0INT0INT1INT1T0T0T1T1RXRXTXTXRIRITITIIEIE0 0IEIE1 1TFTF0 0TFTF1 1 IT1 IT1 0 01 11 10 01 10 01 10 01 10 01 10 0矢量矢量矢量矢量地址送地址送地址送地址送PC PC 高级高级高级高级中断请求中断请求中断请求中断请求IT0IT0 0 01 1

123、中断标志中断标志中断标志中断标志中断中断中断中断标志标志标志标志INT0INT01 1IEIE0 0自自自自然然然然优优优优先先先先级级级级矢量矢量矢量矢量地址送地址送地址送地址送PCPC“+1“+1” ”TFTF1 10 0自自自自然然然然优优优优先先先先级级级级 矢量矢量矢量矢量地址送地址送地址送地址送PCPCEAEA“+1“+1” ”“+1“+1” ”爽入舱痊娩棱苦瘩袄淫如杀届跋惶迈烂苞坡岂筷鹏坚容于惊喉竖蒙凉偏癣第5章定时器串口中断第5章定时器串口中断四、中断响应过程四、中断响应过程四、中断响应过程四、中断响应过程中断响应的三个条件中断响应的三个条件中断响应的三个条件中断响应的三个条件

124、: CPU CPU不是正在处理同级或高级中断请求不是正在处理同级或高级中断请求不是正在处理同级或高级中断请求不是正在处理同级或高级中断请求 现行机器周期是所执行指令的最后一个机器周期现行机器周期是所执行指令的最后一个机器周期现行机器周期是所执行指令的最后一个机器周期现行机器周期是所执行指令的最后一个机器周期 正在执行的指令不是正在执行的指令不是正在执行的指令不是正在执行的指令不是RETI, RETI, 或不在访问或不在访问或不在访问或不在访问IEIE或或或或IPIP外部中断请求外部中断请求外部中断请求外部中断请求INT0INT0定时定时定时定时/ /计数器计数器计数器计数器T0T0溢出溢出溢出

125、溢出定时定时定时定时/ /计数器计数器计数器计数器T1T1溢出溢出溢出溢出串行口串行口串行口串行口UARTUART定时定时定时定时/ /计数器计数器计数器计数器T2T2溢出溢出溢出溢出外部中断请求外部中断请求外部中断请求外部中断请求INT1INT1中断入口地址:中断入口地址:中断入口地址:中断入口地址:0003H0003H000BH000BH0013H0013H001BH001BH0023H0023H002BH002BH上页上页下页下页回目录回目录中断源中断源中断源中断源矢矢矢矢量量量量地地地地址址址址烘菠鞘引庚囊怠柄赡斤展匝纵昂渴盒沤诞点教滁膀靡且碗萄衡例颜谗磷乳第5章定时器串口中断第5章定

126、时器串口中断五、外部中断响应时序与触发方式五、外部中断响应时序与触发方式五、外部中断响应时序与触发方式五、外部中断响应时序与触发方式1 1、外部中断响应时间外部中断响应时间外部中断响应时间外部中断响应时间M1M1M3M3M4M4M5M5M2M2S5P1S5P1S5P2S5P2INTINT被采样并被采样并被采样并被采样并锁存到锁存到锁存到锁存到IE0 IE1IE0 IE1中中中中CPUCPU进行进行进行进行中断查询中断查询中断查询中断查询保护断点保护断点保护断点保护断点, ,长调用至入口长调用至入口长调用至入口长调用至入口中断服务中断服务中断服务中断服务(1 1)中断响应顺利,不受阻,需要中断响

127、应顺利,不受阻,需要3个机器周期个机器周期(2 2)如果中断受阻:如果中断受阻:上页上页下页下页回目录回目录 正在处理同级或高级中断,这要视中断服务的长短正在处理同级或高级中断,这要视中断服务的长短 执行的指令不是最后一个机器周期,等待不超过执行的指令不是最后一个机器周期,等待不超过3个周期个周期 正在执行指令是正在执行指令是RETI,或正访问,或正访问IE、IP,则需返回主程,则需返回主程 序后,再执行一条主程序的指令才能响应该中断,等待不序后,再执行一条主程序的指令才能响应该中断,等待不 超过超过5个周期个周期则需要则需要则需要则需要3 38 8个机器周期:个机器周期:个机器周期:个机器周

128、期:中断被响应时间是中断被响应时间是不确定的。不确定的。挞钻姻绪斌忘氦碧诚咆替癸盈甲嗜毙径低盆暑蛛媚丈天呢样保秉委浙确痕第5章定时器串口中断第5章定时器串口中断2 2、外部中断触发方式、外部中断触发方式、外部中断触发方式、外部中断触发方式 电平触发方式电平触发方式电平触发方式电平触发方式 边沿触发方式边沿触发方式边沿触发方式边沿触发方式上页上页下页下页回目录回目录 若外部中断若外部中断(当(当ITx= 0时)时)被定义为电平触发方式被定义为电平触发方式其有效触发为低电平,该低电平宽度能引起其有效触发为低电平,该低电平宽度能引起CPU响应该响应该中断。中断返回之前,必须变为高电平。否则中断。中断

129、返回之前,必须变为高电平。否则CPU将再将再次响应该中断。次响应该中断。 若外部中断若外部中断(当(当ITx = 1时)时)被定义为边沿触发方式被定义为边沿触发方式其有效触发为其有效触发为下降沿下降沿。在该触发方式中,。在该触发方式中,CPU在一个机在一个机器周期采样为高电平,在下一机器周期采样为低电平器周期采样为高电平,在下一机器周期采样为低电平,就立即置位外部中断请求标志。就立即置位外部中断请求标志。 无论是那种触发发方式,只要有有效触发,都会记录无论是那种触发发方式,只要有有效触发,都会记录在相应的中断标志位中,在相应的中断标志位中, 若若CPU即使暂不响应,中断标即使暂不响应,中断标志

130、也不会丢失,直到志也不会丢失,直到CPU响应该中断,该标志才会清除。响应该中断,该标志才会清除。有效触发有效触发有效触发有效触发标志位标志位标志位标志位记录记录记录记录盒唬石晦巍蓬告疫访柔沉少帅庐约蓟昭伸雷揍戒焦猴顽脐膊卯征俞阶水屯第5章定时器串口中断第5章定时器串口中断六、六、六、六、多多多多外部中断源的设计外部中断源的设计外部中断源的设计外部中断源的设计1 1、利用定时、利用定时、利用定时、利用定时/ /计数器计数器计数器计数器方式方式方式方式2 2作外部中断输入使用的作外部中断输入使用的作外部中断输入使用的作外部中断输入使用的方法方法方法方法T0T0作为外部中断源的初始化程序:作为外部中

131、断源的初始化程序:作为外部中断源的初始化程序:作为外部中断源的初始化程序:MOV TMODMOV TMOD,#06H#06HMOV TL0MOV TL0,#0FFH#0FFHMOV TH0MOV TH0,#0FFH#0FFHSETB EASETB EASETB ET0SETB ET0SETB TR0SETB TR0;T0计数方式,自动装载计数方式,自动装载;置计数初值;置计数初值;T0开中断开中断;CPU开中断开中断;启动;启动T0工作工作上页上页下页下页回目录回目录计数器计数器计数器计数器“+1“+1” ”计数器计数器计数器计数器向向向向CPUCPU发中断请求发中断请求发中断请求发中断请求向

132、向向向CPUCPU发中断请求发中断请求发中断请求发中断请求TFTF0 0FFHFFHT0T0FFHFFHFFHFFHFFHFFHTFTF0 000H00HFFHFFHFFHFFHP P3.43.4逊趣诱湛唁萨候犹列拨仟吕钒棠漾告篷陪嗅喳市淳垃迢和邯反卞位忆以皿第5章定时器串口中断第5章定时器串口中断上页上页下页下页回目录回目录2 2、中断与查询相结合的方法扩展多个外部中断、中断与查询相结合的方法扩展多个外部中断、中断与查询相结合的方法扩展多个外部中断、中断与查询相结合的方法扩展多个外部中断80518051INT0INT1P1.3P1.2P1.1P1.0DVT0DVT0DVT1DVT1DVT2D

133、VT2DVT3DVT3DVT4DVT410K10K+5V+5V图图图图6-21 6-21 扩展多个外部中断扩展多个外部中断扩展多个外部中断扩展多个外部中断最高级最高级最高级最高级最低级最低级最低级最低级“ “线或线或线或线或” ”5 5个外部中断源个外部中断源个外部中断源个外部中断源需需需需CPUCPU响应响应响应响应?芯芯芯芯片片片片皿壳急涉签卡桩驭蚂绰爽啪许赵殉船岸杏探签岩莫宣挖倦害镰纺建窍供耘第5章定时器串口中断第5章定时器串口中断PINT1PINT1:PUSH PSWPUSH PSWPUSH ACCPUSH ACCJB P1.0JB P1.0,PDVT1PDVT1JB P1.1JB P

134、1.1,PDVT2PDVT2JB P1.2JB P1.2,PDVT3PDVT3JB P1.3JB P1.3,PDVT4PDVT4PINTRPINTR: POP ACCPOP ACCPOP PSWPOP PSWRETIRETI;进入中断后;进入中断后;注意保护现场;注意保护现场;依次;依次查询查询判断判断;若是干扰信号引起;若是干扰信号引起;返主程序前;返主程序前;注意恢复现场;注意恢复现场;的中断请求;的中断请求,可被滤掉可被滤掉上页上页下页下页回目录回目录外部中断外部中断外部中断外部中断INT1INT1的中断服务程序:的中断服务程序:的中断服务程序:的中断服务程序:查询顺序决定查询顺序决定查

135、询顺序决定查询顺序决定优先级别优先级别优先级别优先级别赘茶侥蒋福暖人鸟忱筏榨梭笔篙泰益痊丛狱糊芦哑趣悟擎栗则馒撇王夺连第5章定时器串口中断第5章定时器串口中断PDVT1PDVT1: AJMP PINTRAJMP PINTRPDVT2PDVT2: AJMP PINTRAJMP PINTRPDVT3PDVT3: AJMP PINTRAJMP PINTRPDVT4PDVT4: AJMP PINTRAJMP PINTR;DVT1DVT1中断服务中断服务中断服务中断服务;DVT2DVT2中断服务中断服务中断服务中断服务;DVT3DVT3中断服务中断服务中断服务中断服务;DVT4DVT4中断服务中断服务中

136、断服务中断服务中断处理中断处理中断处理中断处理上页上页下页下页回目录回目录逢畔晋肢泊穷方骸肆颤塌宴时奏姑虚叔割煤跑谓砚卉秃藻疙赏恋针寻指意第5章定时器串口中断第5章定时器串口中断七、用软件模拟第三个中断优先级七、用软件模拟第三个中断优先级七、用软件模拟第三个中断优先级七、用软件模拟第三个中断优先级 在中断优先级寄存器在中断优先级寄存器在中断优先级寄存器在中断优先级寄存器IPIP中定义两个中断优先级:中定义两个中断优先级:中定义两个中断优先级:中定义两个中断优先级:高优先级、低优先级。有时设计要求需三个优先级,高优先级、低优先级。有时设计要求需三个优先级,高优先级、低优先级。有时设计要求需三个优

137、先级,高优先级、低优先级。有时设计要求需三个优先级,这时,需设法为这时,需设法为这时,需设法为这时,需设法为CPUCPU增加一个新的优先级。增加一个新的优先级。增加一个新的优先级。增加一个新的优先级。低优先级的中断服务程序如下:低优先级的中断服务程序如下:低优先级的中断服务程序如下:低优先级的中断服务程序如下:上页上页下页下页回目录回目录快短乘钠猩纺串陇龄醒叠挡弧鱼撩室镰枷潞诽疙俺户畴诫谈铝排数阀齐质第5章定时器串口中断第5章定时器串口中断40H41H42H43H44H *PCL *PCHPCLPCL主主主主PCHPCH主主主主IEIEPUSH IEPUSH IEMOV IEMOV IE,#M

138、ASK#MASKLCALL LABELLCALL LABELDVT1DVT1:中断服务中断服务中断服务中断服务POP IEPOP IERETRETLABELLABEL:RETIRETI; ;保护保护保护保护IEIE; ;置屏蔽字置屏蔽字置屏蔽字置屏蔽字; ;调用子程序调用子程序调用子程序调用子程序; ;执行中断服务执行中断服务执行中断服务执行中断服务; ;恢复恢复恢复恢复IEIE; ;子程序返回,真正的中断返回子程序返回,真正的中断返回子程序返回,真正的中断返回子程序返回,真正的中断返回; ;中断返回,中断返回,中断返回,中断返回,CPUCPU被欺骗被欺骗被欺骗被欺骗 误认为返回主程序误认为返回主程序误认为返回主程序误认为返回主程序SP上页上页回目录回目录SPSPSP*PCPCSPSP*PCPC低优先级低优先级低优先级低优先级状态触发器状态触发器状态触发器状态触发器“1“1” ”LABELLABELLABEL:LABEL:SPSP*PCPCCPUCPU认为已经返主认为已经返主认为已经返主认为已经返主“0“0” ”SPPCPC返主返主返主返主SPSP又又又又可可可可被被被被低低低低级级级级中中中中断断断断请请请请求求求求中中中中断断断断梧正邀票睦焕柞缘冤哭是博趋盐超由抑蕾但置赣瞳驳库产锻澜厦瑞亏旦称第5章定时器串口中断第5章定时器串口中断

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号