3027|0

9

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

s3c2410的外部中断5为什么一直被触发?程序问题? [复制链接]

我调试s3c2410外部中断5,使用的是博创UP-NETARM2410-S实验箱,不知怎么回事中断一直被触发?读回 SRSPEND 和 INTPND 的值始终为0,而EINTPEND 为0x20,盼帮助解答啊!谢谢。能否给个外部中断5的例子程序。
我的程序:
static void TS_OPEN_INT5(void)
{//设置中断       
unsigned long temp;
temp=__raw_readl(vGPFCON); //EINT5       
temp&=0xf3ff;       
temp|=0x800;       
__raw_writel(temp,vGPFCON);

temp=__raw_readl(vGPFUP);  //上拉       
temp&=0xdf;       
__raw_writel(temp,vGPFUP);

temp=__raw_readl(vSRCPND);       
temp&=0x00000000;       
temp |=0x10;       
__raw_writel(temp,vSRCPND);

temp=__raw_readl(vINTMSK);       
temp &=0xffffffef;       
__raw_writel(temp,vINTMSK);

temp=__raw_readl(vINTPND);
__raw_writel(temp,vINTPND);       

temp=__raw_readl(vEINTPEND);       
temp&=0x000000;       
temp |=0x20;       
__raw_writel(temp,vEINTPEND);

temp=__raw_readl(vEINTMASK);       
temp &=0xffffdf;       
__raw_writel(temp,vEINTMASK);

temp=__raw_readl(vEXTINT0);       
temp &=0x7f8fffff;         //低电平//       
temp |=0x1fffff;           //高电平       
__raw_writel(temp,vEXTINT0);
}

static void TS_CLOSE_INT5(void)
{//清除中断标志       
unsigned long temp;
temp=__raw_readl(vSRCPND);       
temp&=0x00000000;       
temp |=0x10;       
__raw_writel(temp,vSRCPND);

temp=__raw_readl(vINTPND);       
__raw_writel(temp,vINTPND);       
}

static irqreturn_t s3c2410_isr_tc(int irq, void *dev_id)
{//中断服务程序       
unsigned int temp;
temp=__raw_readl(vSRCPND);
printk("SRCPND =%x\n",temp);

temp=__raw_readl(vINTPND);
printk("INTPND =%x\n",temp);  

temp=__raw_readl(vEINTPEND);
printk("EINTPEND =%x\n",temp);

printk("Occured Touch Screen Interrupt\n");  

TS_CLOSE_INT5();
return IRQ_RETVAL(1);
}
此帖出自ARM技术论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表