第七章 AT89s52单片机中断系统
- 格式:ppt
- 大小:616.50 KB
- 文档页数:43
at89s52中断资源原理
AT89S52是一种微控制器,具有多个中断源。
这些中断源包括两个外部中
断(INT0和INT1),三个定时器中断(定时器0、1、2),以及一个串行口中断。
每个中断源都可以通过设置或清除特殊寄存器IE中的相关中断允
许控制位来启用或禁用。
此外,还有一个中断允许总控制位EA,可以一次
禁止所有中断。
具体来说,外部中断0(INT0)和外部中断1(INT1)的中断请求信号由相应的脚输入,其标志分别为IE0和IE1。
定时器/计数器T0和T1计数溢出
发出的中断请求标志分别为TF0和TF1。
串行口的中断请求标志为发送中断TI或接收中断RI。
而定时器2的中断请求源有两个:计数溢出(TF2)和“捕捉”(EXF2),这两种中断请求标志共用一个中断矢量。
这些中断请求标志分别由TCON、SCON和T2CON的相应位锁存。
其中,TCON寄存器是定时器/计数器的控制寄存器,字节地址为88H,可位寻址。
在程序进入中断服务后,这些标志位可以被硬件清零。
对于某些标志位,如TF0和TF1,它们的值在计数溢出的那个周期的S5P2被置位,并一直保持
到下一个周期被电路捕捉下来。
而对于定时器2的标志位TF2,它在计数溢出的那个周期的S2P2被置位,并在同一个周期被电路捕捉下来。
请注意,为了保持代码的简洁性和易于维护,用户软件不应给位和位写入1。
它们是为AT99系列新产品预留的。
以上内容仅供参考,如需更多信息,建议查阅AT89S52的官方数据手册或
咨询专业技术人员。
AT89S52 是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。
使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器.在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有以下标准功能:40个引脚,8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
8 位微控制器8K 字节在系统可编程Flash AT89S52。
本次设计是用89S52单片机为核心实现报警控制,所以我们要先对89S52的各个引脚及其功能有一个全面的认识。
3.1.1 89S51单片机的引脚功能介绍如图2所示为89S52单片机 40引脚双列直插形式,各引脚功能如下:图2 89S52引脚图1 电源和晶振:Vcc——AT89S52电源正端输入,接+5V。
Vss—-电源地端.XTAL1——输入到振荡器的反相放大器。
XTAL2—-反相放大器的输出,输入到内部时钟发生器.当用外部振荡器时,XTAL2不用,XTAL1接收振荡器信号.2 控制线,共4根.(1)输入:RST-—复位输入。
晶振工作时,RST脚持续2 个机器周期高电平将使单片机复位。
EA/Vpp-—访问外部程序存储器控制信号。
为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。
单片机原理及应用之AT89S52AT89S52是一款由Atmel公司生产的8位单片机,采用CMOS工艺制造,并且内部集成了丰富的功能模块和外设接口。
它具有较高的性能和良好的稳定性,广泛应用于各种电子设备中。
AT89S52单片机的基本原理是通过控制器对内部资源进行配置和控制,从而实现各种功能。
它的主要构成部分包括中央处理器(CPU),存储器(RAM和ROM),输入/输出接口(IO),定时/计数器(Timer/Counter)和串行通信接口等。
首先,AT89S52单片机的CPU是其心脏部件,它采用基于8051内核的结构,具有8位数据总线和16位地址总线。
CPU负责执行程序指令,以及对数据进行运算和处理。
其次,AT89S52内部集成了包括RAM、ROM和EEPROM等多种存储器。
其中,RAM用于临时存储数据和程序,ROM用于存储程序代码,EEPROM可用于存储非易失性数据。
AT89S52还具有强大的输入/输出接口,用于与外部设备进行通信。
它具有多个I/O引脚,可以用于连接传感器、显示器、键盘等外部设备,并通过程序控制实现数据的输入和输出。
除此之外,AT89S52还内置了多个定时/计数器模块,用于生成精确的时间延迟和计算时间。
这些定时/计数器可以用于测量时间、产生脉冲信号、控制外设设备等。
此外,AT89S52还支持多种串行通信接口,如UART、SPI和I2C等。
这些接口可以与其他设备进行数据传输和通信,实现单片机与外部设备的数据交互。
AT89S52单片机应用广泛。
它既可以作为独立的控制芯片,也可以作为其他数字电路和模拟电路的核心控制部分。
在家电、电子仪器、工业自动化和电子玩具等领域,AT89S52都有着重要的应用。
具体来说,AT89S52可以用于控制家电设备,如洗衣机、空调、微波炉等。
它通过连接传感器和执行器,实现对温度、光照强度等参数的检测和控制。
此外,AT89S52还可以用于仪器设备的控制。
例如,可以将其用作控制面板上的核心处理器,实现对仪器设备的各种参数监测和控制。
AT89S52单片机简介本系统采用AT89S52作为核心部件,AT89S52为 ATMEL 所生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flsah 存储器。
(一)、AT89S52主要功能列举如下:1、拥有灵巧的8位CPU和在系统可编程Flash2、晶片内部具时钟振荡器(传统最高工作频率可至 12MHz)3、内部程序存储器(ROM)为 8KB4、内部数据存储器(RAM)为 256字节5、32 个可编程I/O 口线6、8 个中断向量源7、三个 16 位定时器/计数器8、三级加密程序存储器9、全双工UART串行通道(二)、AT89S52各引脚功能介绍:AT89S52各引脚图VCC:AT89S52电源正端输入,接+5V。
VSS:电源地端。
XTAL1:单芯片系统时钟的反相放大器输入端。
XTAL2:系统时钟的反相放大器输出端,一般在设计上只要在XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一 20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。
RESET:AT89S52的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。
EA/Vpp:"EA"为英文"External Access"的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。
因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。
如果是使用 8751 内部程序空间时,此引脚要接成高电平。
此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V 的烧录高压(Vpp)。
AT89S52单片机中断过程AT89S52单片机中断分为四个阶段:中断采样、中断查询、中断响应、中断返回。
执行中断时,必须满足以下三个条件:(1) 中断源有中断申请;(2) 此中断源的中断允许位为1;(3) CPU开中断,即总开关EA=1;1.中断采样中断采样针对外部中断请求信号而言,在S5P2对相应引脚采样,根据其电平状态高/低,判断相应的中断请求。
2.中断查询在每个机器周期的S5P2后,由硬件自动地去查询相应的中断标志位,先查询高级中断,再查询低级中断,同级中断按内部中断优先级顺序查询。
如果查询到有中断标志位为1,则说明有中断请求发生,接着从相邻的下一个机器周期的S1状态开始开展中断响应。
3.中断响应CPU响应中断时,先置位相应的优先级激活触发器,封锁同级和低级的中断。
然后程序根据中断源的类别,在硬件的控制下转向相应的中断入口单元,执行中断服务程序。
中断响应的过程如下图。
图中断响应过程4.中断返回中断服务程序的最后一条指令必须是中断返回指令RETI。
CPU执行完这条指令后,把响应中断时所置位的优先级激活触发器清0,然后从堆栈中弹出两个字节内容(断点地址)装入程序计数器PC中,CPU就从原来被中断处重新执行被中断的程序。
5. 中断的响应时间中断响应时间是指从查询中断请求标志位开始到转向中断矢量地址所需的机器周期数。
响应中断的时间依中断请求发生的情况不同有长有短,因此,AT89S52单片机发生中断的时间根据中断类型和中断执行的方式不同而不同。
外部中断和的电平在每个机器周期的S5P2时被采样并锁存到IE0和IE1中,这个置入到IE0和IE1的状态在下一个机器周期才被查询电路查询。
如果产生了一个中断请求,而且满足响应的条件,CPU响应中断,查询中断请求标志位,同时这个周期恰好是指令的最后一个周期,则在这个机器周期结束后,中断请求被CPU 响应,产生一条硬件自动生成的长调用指令LCALL,以使CPU转到相应的服务程序入口。