LPC2103外部中断0服务程序与P0.16应用示例

需积分: 49 5 下载量 75 浏览量 更新于2024-08-10 收藏 7.06MB PDF 举报
"外部中断标志示意图-couchdb" 在嵌入式系统中,外部中断是处理器响应外部事件的重要机制。LPC2103是一款基于ARM7TDMI核的微控制器,它支持多种中断源,包括外部中断。外部中断允许系统在不持续轮询的情况下对外部事件作出实时响应,提高了系统的效率和响应速度。 标题提到的“外部中断标志示意图”可能是指在LPC2100系列微控制器中,用于表示外部中断状态的寄存器位。在LPC2103中,这些标志通常位于中断控制器的寄存器中,例如中断请求寄存器(IRQR)或中断清除寄存器(ICR)。当外部中断发生时,相应的标志位置1,处理器可以通过读取这些寄存器来识别中断源。 描述中的“4.4.5 应用示例”展示了如何使用P0.16端口作为外部中断0的输入,该中断由低电平触发。当按键KEY1按下,使P0.16输入为低电平时,外部中断0被激活,进而执行中断服务程序`Eint0IRQ`。在这个程序中,`__irq`关键字标识了这是一个中断服务函数,`Eint0IRQ`会在外部中断0发生时自动调用。 程序清单4.10展示了中断服务函数的具体实现。在`Eint0IRQ`函数内,通过检查`IO0PIN`寄存器的第17位(对应P0.16)来确定LED的状态,并进行翻转。如果`IO0PIN & (1 << 17)`的结果为0,说明P0.16为低电平,此时熄灭LED;反之,点亮LED。需要注意的是,由于P0.16作为输入时没有内部上拉电阻,为了防止引脚悬空,需要在外部连接一个上拉电阻。 这个例子属于Easy ARM 2103教材的一部分,这是一本面向初学者的教程,旨在帮助读者掌握LPC2103微控制器的使用。书中涵盖了LPC2103的特性、硬件接口、开发环境(如ADS1.2)、工程创建和调试方法,以及各个功能部件的详细讲解,如GPIO(通用输入输出)和向量中断控制器。 在GPIO部分,LPC2103的P0端口可以配置为输入或输出,其中P0.16被配置为低电平触发的外部中断输入。GPIO的使用涉及配置寄存器(如I/O方向寄存器和数据寄存器),以及处理中断相关的注意事项,比如在中断服务程序中正确地清除中断标志。 向量中断控制器则负责管理中断请求,包括分配中断优先级、管理和触发中断服务例程。在LPC2103中,外部中断的处理涉及中断向量表,中断服务程序会根据中断号从这个表中找到对应的地址并跳转执行。 这个资源涉及到的知识点包括:LPC2103微控制器的外部中断机制、GPIO配置、中断服务程序设计、开发环境的使用,以及相关硬件注意事项,这些都是嵌入式系统开发中的基本技能。