ATMEGA16中断GCC模式.docxVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ATMEGA16中断GCC模式

AVR单片机中断实现 ATmega16 INT ISR(INT0_vect)内容来源:本站  发布时间:[2010-11-28] 查看次数:42332.21?实例功能?前面例子中分别介绍了按键控制发光二极管的亮灭,但是我们注意到,在程序中需要一直检测按键的状态,这样明显的浪费了单片机的资源,降低了单片机的工作效率,。那么有没有一种方法可以让单片机不用一直检测按键的状态,而只在有按键动作时才去响应呢?当然有!单片机中除了具有基本输入输出功能的作用外,还有专门检测外界信号并作出响应的中断系统。在本例中,通过利用外部中断实现单片机对按键事件的响应和处理。本例中三个功能模块描述如下:● 单片机系统:对按键事件产生的中断时间作出响应,并在数码管上显示按键按下的次数。● 外围电路:通过将按键连接到单片机的外部中断检测端口,实现中断产生电路,数码管显示电路用于指示按键的按下状态。● 软件程序:编写AVR单片机的外部中断服务程序,从而实现对中断事件的响应。?2.2.2?器件和原理?1单片机的中断系统关于中断的概念可以在一般的教材中找到,本例中只做简要叙述,不再详细说明。中断属于一种对事件的实时处理过程。中断源可能随时停止单片机当前正在处理的工作,转而去处理中断事件,待中断时间处理完毕之后,再返回原来工作的断点处,继续原来的工作。对于单片机的中断系统,需要了解这几个概念:中断源、中断信号、中断向量、中断优先级、中断嵌套、中断控制(屏蔽)、中断响应条件、中断响应过程(中断服务程序)。●中断源中断源是指能够向单片机发出中断请求信号的部件和设备。对于单片机来讲,往往存在多个中断源。中断源一般可分为内部中断源和外部中断源。单片机内部集成的许多功能模块,如定时器、串行通讯口、模/数转换器等,它们在正常工作时往往无需CPU参与,而当处于某种状态或达到某个规定值需要程序控制时,会通过发出中断请求信号通知CPU。这一类的中断源位于单片机内部,称作内部中断源。内部中断源在中断条件成立时,一般通过片内硬件会自动产生中断请求信号,无须用户介入,使用方便。内部中断是CPU管理片内资源的一种高效的途径。?系统中的外部设备也可以用作中断源,这时要求它们能够产生一个中断信号(通常是高(低)电平或者电平跳变的上升(下降)沿),送到单片机的外部中断请求引脚供CPU检测。这些中断源位于单片机外部,称为外部中断源。通常用作外部中断源的有输入输出设备、控制对象、以及故障源等。?● 中断信号中断信号是指内部或外部中断源产生的中断申请信号,这个中断信号往往是电信号的某种变化形式,通常有以下几种类型:脉冲的上跳沿或下降沿(上升沿触发型或下降沿触发型)高电平或低电平(电平触发型)电平的变化(状态变化触发型)对于单片机来讲,不同的中断源,产生什么类型的中断信号能够触发申请中断,取决于芯片内部的硬件结构,而且通常也可以通过用户的软件来设定。?单片机的硬件系统会自动对这些中断信号进行检测。一旦检测到规定的信号出现,将会把相应的中断标志位置“1”(在I/O空间的控制或状态寄存器中),通知CPU进行处理。?● 中断向量中断源发出的请求信号被CPU检测到之后,如果单片机的中断控制系统允许响应中断,CPU会自动转移,执行一个固定的程序空间地址中的指令。这个固定的地址称作中断入口地址,也叫做中断向量。中断入口地址往往是由单片机内部硬件决定的。?一个单片机有若干个中断源,每个中断源都有着自己的中断向量。这些中断向量一般在程序存储空间中占用一个连续的地址空间段,称为中断向量区。由于一个中断向量通常仅占几个字节或一条指令的长度,所以在中断向量区一般不放置中断服务程序的。中断服务程序一般放置在程序存储器的其它地方,而在中断向量处放置一条跳转到中断服务程序的指令。这样,CPU响应中断后,首先自动转向执行中断向量中的转移指令,再跳转执行中断服务程序。● 中断优先级单片机系统一般有多个中断源,当某一时刻同时有多个中断产生时,单片机该如何处理呢?这就有了中断优先级的概念。?通常,单片机可以接收若干个中断源发出的中断请求。但在同一时刻,MCU只能响应这些中断请求中的其中一个。为了避免MCU同时响应多个中断请求带来的混乱,在单片机中为每一个中断源赋予一个特定的中断优先级。一旦有多个中断请求信号,MCU先响应中断优先级高的中断请求,然后再逐次响应优先级次一级的中断。中断优先级也反映了各个中断源的重要程度,同时也是分析中断嵌套的基础。?对于中断优先级的确定,通常是由单片机的硬件结构规定的。一般的确定规则方式为两种:某中断对应的中断向量地址越小,其中断优先级越高(硬件确定方式)。通过软件对中断控制寄存器的设定,改变中断的优先级(用户软件可设置方式,注意:AVR不支持)。实际上,MCU在两种情况下需要对中断的优先级进行判断:?第一种情

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档