AT89S52中断服务程序.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

(一)MSC-51单片机中断系统的结构

一.外部中断源

1.INT0:外部中断0,由P3.2端口线引入,低电平或下降沿引起。

IT0:INT0触发方式控制位,可由软件进和置位和复位。

IT0=0,INT0为低电平触发方式。

IT0=1,INT0为负跳变触发方式。

IE0:INT0中断请求标志位。

当有外部的中断请求时,这位就会置1(这由硬件来完成)。

当CPU响应中断后,由硬件将IE0清0。

2.INT1:外部中断1,由P3.3端口线引入,低电平或下降沿引起。

IT1:INT0触发方式控制位,可由软件进和置位和复位

IT1=0,INT1为低电平触发方式

IT1=1,INT1为负跳变触发方式

IE1:INT1中断请求标志位

当有外部的中断请求时,这位就会置1(这由硬件来完成)

当CPU响应中断后,由硬件将IE0清0

二.内部中断源

1.T0:定时器/计数器0中断,由T0计满回零引起。

TF0:定时器T0的溢出中断标记。

当T0计数产生溢出时,由硬件置位TF0。

当CPU响应中断后,再由硬件将TF0清0。

2.T1:定时器/计数器1中断,由T1计满回零引起。

TF1:定时器T0的溢出中断标记。

当T1计数产生溢出时,由硬件置位TF1。

当CPU响应中断后,再由硬件将TF1清0。

与定时/计数相关的特殊功能寄存器TMOD和TCON

Ⅰ、TMOD:用于设置T/C的工作方式

GATE:门控制位,用于控制定时器的启动是否受外部中断源信号的影响。GATE=0时,与

外部中断无关。

C/T:功能选择位,当C/T=1时为计数方式,C/T=0时为定时方式。

Ⅱ、TCON:

TF0(TF1):为T0(T1)定时器溢出中断标志位。

TR0(TR1):为T0(T1)运行控制位,当TR0(TR1)=1是启动T0(T1)

3.TI/RI:串行I/O中断,串行口完成一帧字符发送/接收后引起。

(二)中断允许寄存器IE

作用:中断的允许或禁止是由片内可进行位寻址的8位中断允许寄存器IE来控制的。

EA--ESET1EX1ET0EX0

EA:总开关,如果它等于0,则所有中断都不允许。

ES:串行口中断允许。

ET1:定时器1中断允许。

EX1:外中断1中断允许。

ET0:定时器0中断允许。

EX0:外中断0中断允许。

(三)中断优先寄存器IP

作用:用来设定各个中断源属于两级中断中的哪一级

(三)串行口的控制寄存器SCON和PCON

作用:用于设置串行端口的工作方式、接收/发送的运行状态和数据的特征、波特率的大

小,以及作为运行的中断标志。

1.串行口控制寄存器SCON

2.电源控制寄存器PCON

作用:SMOD=1时,波特率加倍位。在计算串行方式1,2,3的波特率时。

SMOD=0时,系统复位。

3.串行中断的应用特点

串行端口无论在何种工作方式下,发送/接收前都必须对TI/RI清零。当一帧数据发送/

接收完后,TI/RI自动置1,如要再发送/接收,必须先用软件将其清除。

4.波特率的确定

(四)、程序初始化步骤

一.定时/计数器初始化

1.确定工作方式,即对TMOD寄存器进行赋值。

2.计算计数初值,并写入寄存器TH0、TL0或TH1、TL1中。

3.设置中断允许寄存器IE,主要是设置EA、ETx或者EXx位等。

4.设置TRx启动计数。

二.串口初始化

①确定定时器1的工作方式——编程TMOD寄存器;

②确定串口的控制一编程SCON;

③串口的中断方式,必须开CPU和源中断一编程IE寄存器;

④计算定时器1的初值一装载TH1,TL1;

⑤启动定时器1—编程TCON中的TR1位。

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档