[ZLG-ARM] 关于外部中断的请教

[复制链接]
2514|3
 楼主| cd666 发表于 2009-2-18 10:57 | 显示全部楼层 |阅读模式
将LPC2131的&quot;外部中断唤醒掉电的CPU,但不产生中断&quot;的例程如下修改.<br />程序运行后不产生中断,请问是什么原因.<br /><br /><br />int&nbsp;main&nbsp;(void)<br />{&nbsp;&nbsp;&nbsp;&nbsp;PINSEL0&nbsp;=&nbsp;0x00000000;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;管脚连接GPIO<br />&nbsp;&nbsp;&nbsp;&nbsp;PINSEL1&nbsp;=&nbsp;0x00000001;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;P0.16连接EINT0<br />&nbsp;&nbsp;&nbsp;&nbsp;IO0DIR&nbsp;&nbsp;=&nbsp;BEEP;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;设置BEEP控制口为输出,其余输入<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />//&nbsp;&nbsp;&nbsp;&nbsp;EXTWAKE&nbsp;=&nbsp;0x01;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;外部中断0唤醒芯片<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;EXTMODE&nbsp;=&nbsp;0x01;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//下降沿<br />&nbsp;&nbsp;&nbsp;&nbsp;EXTPOLAR&nbsp;=&nbsp;0x00;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;EXTINT&nbsp;&nbsp;=&nbsp;0x01;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;清除EINT0中断标志<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;IO0SET&nbsp;=&nbsp;BEEP;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(1)&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;((EXTINT&nbsp;&&nbsp;0x01)&nbsp;!=&nbsp;0);&nbsp;&nbsp;&nbsp;&nbsp;//等按键按下<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;((IO0SET&nbsp;&&nbsp;BEEP)&nbsp;==&nbsp;0)&nbsp;IO0SET&nbsp;=&nbsp;BEEP;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;IO0CLR&nbsp;=&nbsp;BEEP;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EXTINT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x01;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;清除EINT0中断标志<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;(0);&nbsp;<br />}
wszqq 发表于 2009-2-19 23:04 | 显示全部楼层

回复

没有开总中断允许。
我是土匪 发表于 2009-8-4 13:10 | 显示全部楼层
不需要总中断允许,并不产生中断
armecos 发表于 2009-8-4 15:01 | 显示全部楼层
看万能中断模板,极度抽象,涉及到所有外部中断处理细节,照着做,绝对不会出任何问题。

http://www.armecos.com/article/index.asp?typeyy=全部**
您需要登录后才可以回帖 登录 | 注册

本版积分规则

47

主题

153

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部