第5章单片机的中断系统PPT推荐.ppt

上传人:b****2 文档编号:15557084 上传时间:2022-11-04 格式:PPT 页数:33 大小:1.15MB
下载 相关 举报
第5章单片机的中断系统PPT推荐.ppt_第1页
第1页 / 共33页
第5章单片机的中断系统PPT推荐.ppt_第2页
第2页 / 共33页
第5章单片机的中断系统PPT推荐.ppt_第3页
第3页 / 共33页
第5章单片机的中断系统PPT推荐.ppt_第4页
第4页 / 共33页
第5章单片机的中断系统PPT推荐.ppt_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

第5章单片机的中断系统PPT推荐.ppt

《第5章单片机的中断系统PPT推荐.ppt》由会员分享,可在线阅读,更多相关《第5章单片机的中断系统PPT推荐.ppt(33页珍藏版)》请在冰豆网上搜索。

第5章单片机的中断系统PPT推荐.ppt

三、中断控制的寄存器与中断控制有关的控制寄存器有四个:

TCON-定时控制寄存器,IE-中断允许控制寄存器,IP-中断优先级控制寄存器,SCON-及串行口控制寄存器。

1定时控制寄存器TCOND7D6D5D4D3D2D1D0TF1TF0IE1IT1IE0IT0中断请求标志触发方式选择0低电平1下降沿2串行口控制寄存器SCOND7D6D5D4D3D2D1D0TIRI串行中断请求标志3中断允许控制寄存器IED7D6D5D4D3D2D1D0EAESET1EX1ET0EX04中断优先级控制寄存器(IP)D7D6D5D4D3D2D1D0PSPT1PX1PT0PX00禁止,1允许0低级别,1高级别INT0INT0、INT1INT1、T0T0、T1T1中断请求标志放在中断请求标志放在TCONTCON中中串行中断请求标志放在串行中断请求标志放在SCONSCON中。

中。

中断请求控制寄存器中断请求控制寄存器TCONTCOND7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0位名称位名称TF1TF1TF0TF0IE1IE1IT1IT1IE0IE0IT0IT0位地址位地址8FH8FH8EH8EH8DH8DH8CH8CH8BH8BH8AH8AH89H89H88H88H功能功能T1T1中断中断标志标志T0T0中断中断标志标志中断中断标志标志触发触发方式方式中断中断标志标志触发触发方式方式TCONTCON的结构、位名称、位地址和功能如下:

的结构、位名称、位地址和功能如下:

5.2.3外中断触发方式外中断触发方式IT0:

外中断:

外中断0触发方式设置位触发方式设置位IT0=0,外中断,外中断1为低电平触发为低电平触发CPU在每一个机器周期的在每一个机器周期的S5P2期间对期间对P3.2引引脚采样,脚采样,若若P3.2为低电平,则使为低电平,则使IE0置置1,否则,否则IE0清清0。

D7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0TCON格式如下:

5.2.3外中断触发方式外中断触发方式IT0=1,外中断,外中断0为下降沿触发为下降沿触发CPU在每一个机器周期的在每一个机器周期的S5P2期间对期间对P3.2引引脚采样,若脚采样,若上一个机器周期检测为高电平,紧挨着上一个机器周期检测为高电平,紧挨着的下一个机器周期为低电平的下一个机器周期为低电平,则使,则使IE0置置1。

IT1:

外中断1触发方式控制位。

功能同触发方式控制位。

功能同IT0D7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0TCON格式如下:

串行控制寄存器串行控制寄存器SCONSCONTCONTCOND7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0位名称位名称TITIRIRI位地址位地址99H99H98H98H功能功能串行发送串行发送中断标志中断标志串行接收串行接收中断标志中断标志TITI串行口发送中断请求标志串行口发送中断请求标志RIRI串行口接收中断请求标志串行口接收中断请求标志串行口中断请求标志串行口中断请求标志RI:

为接收中断请求标志位。

当串行口接收到一帧数据后,RI被置1,请求中断,CPU响应中断后,不会被硬件清0,需要软件清0。

TI:

为发送中断请求标志位。

当串行口发送完一帧数据后,TI被置1,请求中断,CPU响应中断后,不会被硬件清0,需要软件清0。

5.2.4中断请求标志中断请求标志SCON(98H)D7D6D5D4D3D2D1D0TIRI80C5180C51对中断源的开放或关闭由中断允许控对中断源的开放或关闭由中断允许控制寄存器制寄存器IEIE控制。

控制。

中断允许控制寄存器中断允许控制寄存器IEIEIEIE的结构、位名称和位地址如下:

的结构、位名称和位地址如下:

IEIED7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0位名称位名称EAEAESESET1ET1EX1EX1ET0ET0EX0EX0位地址位地址AFHAFHACHACHABHABHAAHAAHA9HA9HA8HA8H中断源中断源CPUCPU串行口串行口T1T1T0T0nPSPS:

串行口中断串行口中断优先级控制位。

优先级控制位。

nPT1PT1:

定时计数器定时计数器T1T1中断优先级控制位。

中断优先级控制位。

nPX1PX1:

外部中断外部中断11中断中断优先级控制位。

nPT0PT0:

定时计数器定时计数器T0T0中断中断优先级控制位。

nPX0PX0:

外部中断:

外部中断00中断中断优先级控制位。

注意:

单片机复位后,单片机复位后,IPIP寄存器被清寄存器被清00,所有中断源为,所有中断源为低级中断。

低级中断。

中断优先级控制寄存器(IP)D7D6D5D4D3D2D1D0PSPT1PX1PT0PX0中断优先级控制中断源同级内优先权排列外部中断0中断定时器/计数器0中断外部中断1中断定时器/计数器1中断串行接口中断最高最低自然优先权顺序:

自然优先权顺序:

例5-1假设允许INT0、INT1、T0、T1中断,试设置IE的值。

按字节操作:

IE=0x8f;

按位操作:

EX0=1;

/允许外部中断0中断ET0=1;

/允许定时器/计数器0中断EX1=1;

/允许外部中断1中断ET1=1;

/开定时器/计数器1中断EA=1;

/开总中断控制位5.2.5中断允许控制例5-2编写程序段,设置单片机的两个外部中断和串行口中断为高优先级,二个定时器的中断为低优先级。

C语言程序按字节操作:

IP=0x15;

PX0=1;

/设置外中断0为高级中断PX1=1;

/设置外中断1为高级中断PS=1;

/设置串行口中断为高优先级5.2.6中断优先级控制C语言的中断程序结构如下:

语言的中断程序结构如下:

(1)main()函数。

与汇编的主程序类似,函数。

与汇编的主程序类似,要完成要完成中断系统的初始化中断系统的初始化。

要有一个循环,要有一个循环,等待中断发生等待中断发生。

(2)中断处理函数。

中断处理函数在定)中断处理函数。

中断处理函数在定义时,要有义时,要有interruptn说明中断号说明中断号。

C51中断程序设计nC51编译器支持在C源程序中直接嵌入中断服务程序,C51提供的中断函数定义语法如下:

返回值类型函数名interruptnusingmn:

中断编号,取值范围为04m:

工作寄存器组号(如不声明,默认为0)中断通道和中断源中断通道和中断源中断系统的初始化步骤:

中断系统的初始化步骤:

根据需要确定各中断源的根据需要确定各中断源的优先级别优先级别,设置,设置中断优先级寄存器中断优先级寄存器IP中相应的位。

中相应的位。

根据需要确定外部中断的根据需要确定外部中断的触发方式触发方式,设置,设置定时器控制寄存器定时器控制寄存器TCON中相应的中相应的IT0位和位和IT1位。

位。

设置总中断控制位设置总中断控制位EA,设置中断源对应,设置中断源对应的的中断允许中断允许控制位。

控制位。

5.4.1中断应用程序结构外部中断程序模板main()IT0=1;

/中断边沿触发EX0=1;

/允许外部中断0EA=1;

/总允许while

(1);

/等待中断int0()interrupt0P2_0=!

P2_0;

/中断内容前面不需要函数说明不能有返回值不能有形参主程序中没有调用中断函数的语句中断函数与一般函数的区别中断函数一般函数前面不需要函数说明前面需要函数说明不能有返回值可以有返回值不能有形参可以有形参主程序中不需要调用语句主程序中需要调用语句函数执行时间是随机的函数执行时间是确定的函数的入口地址是固定的函数的入口地址是随机的外部中断应用举例外部中断应用举例例例5-3如图如图5-10所示,将所示,将P0口的口的P0.0P0.3作为输入位输入作为输入位输入4个开关的状个开关的状态,态,P2.0P2.3作为输出显示开关状态。

作为输出显示开关状态。

要求利用要求利用89C52外部中断外部中断0将开关所设的将开关所设的数据读入单片机内,并依次通过数据读入单片机内,并依次通过P2.0P2.3输出,驱动发光二极管,以检查输出,驱动发光二极管,以检查P0.0P0.3输入的电平情况(若输入为低电平输入的电平情况(若输入为低电平则相应的则相应的LED亮)。

要求采用中断边沿触亮)。

要求采用中断边沿触发方式,每中断一次,完成一次读发方式,每中断一次,完成一次读/写操作。

写操作。

外部中断应用举例外部中断应用举例#includevoidmain()IT0=1;

/选择边沿触发方式选择边沿触发方式EX0=1;

/允许外部中断允许外部中断0EA=1;

/总中断允许总中断允许while

(1);

/等待中断等待中断voidint0_serv(void)interrupt0/外部中断服务函外部中断服务函数数P0=0x0f;

/设设P0.0P0.3为输入为输入P2=P0;

/P0的值输出到的值输出到P2使使LED发发光光例例5-4用单片机中断方式设计一用单片机中断方式设计一4路故障声路故障声光报警系统。

光报警系统。

C语言程序清单:

语言程序清单:

#includesbitsound=P37;

voidmain()IT1=0;

/选择低电平触发方式选择低电平触发方式EX1=1;

/允许外部中断允许外部中断1EA=1;

P2=0x0f;

while

(1);

/等待中断等待中断voidint1_serv()interrupt2/外部中断外部中断1中断服务函数中断服务函数unsignedchari;

sound=sound;

/输出方波到蜂鸣器输出方波到蜂鸣器发声发声for(i=0;

i100;

i+);

/发声延时,控制声音频率发声延时,控制声音频率5.3.2硬件设计(例5)图图5.3.1外部中断原理电路图外部中断原理电路图5.5.2硬件设计(例6)图图5.5.1外部中断原理电路图外部中断原理电路图本章完本章完

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1