共1条
1/1 1 跳转至页
求教关于S3C44B0的中断问题
各位ARM高手,我刚刚接触ARM,我用的ARM7的S3C44B0的芯片,现在中断程序不好用,不知道为什么希望各位高手能帮忙看一看:
void Main(void)
{
int TEMP_rEXTINT;
unsigned int k;
//设置G口为外部中断口
*((unsigned char*)0x2000000) = 0xff;
for(k=0;k<60000;k++);
*((unsigned char*)0x2000000) = 0x0f;
for(k=0;k<60000;k++);
rINTMOD=0;
rINTMSK=~(BIT_GLOBAL | BIT_EINT0 | BIT_EINT1);
rPCONG=0x57ff; //PortG[0~4] EINT MODE,PortG[5~7] OUT设置中断接口状态
rINTCON=0x5; // non Vectored interrupt mode , IRQ mode enable
TEMP_rEXTINT=rEXTINT;//保存外部中断控制寄存器的值
rEXTINT=(TEMP_rEXTINT & 0xffffff22) | 0xffffff22; //EINT[0,1] will be falling edge triggered.
pISR_EINT0=(int)Eint0Isr;//设置外部0的中断向量
pISR_EINT1=(int)Eint1Isr;//设置外部1的中断向量
rEXTINPND=0xf; //clear EXTINPND reg.
rI_ISPC= BIT_EINT0 | BIT_EINT1; //clear pending_bit
rINTMSK=~(BIT_GLOBAL | BIT_EINT0 | BIT_EINT1); //External interrupt0,1 check..
// Delay(20);
}
/********************************************************************
// Function name : Eint0Isr
// Description : eint0 isr
// Return type : void
// Argument : void
*********************************************************************/
void Eint0Isr(void)
{
char i;
unsigned int j;
for(i=0;i<5;i++)
{
switch(i)
{
case 0: *((unsigned char*)0x2000000) = 0xff; break;
case 1: *((unsigned char*)0x2000000) = 0x7f; break;
case 2: *((unsigned char*)0x2000000) = 0x3f; break;
case 3: *((unsigned char*)0x2000000) = 0x1f; break;
case 4: *((unsigned char*)0x2000000) = 0x0f; break;
default: break;
}
for(j=0;j<60000;j++);
}
rI_ISPC= BIT_EINT0; //clear pending_bit
}
/********************************************************************
// Function name : Eint1Isr
// Description : eint1 isr
// Return type : void
// Argument : void
*********************************************************************/
void Eint1Isr(void)
{
char i;
unsigned int j;
for(i=0;i<5;i++)
{
switch(i)
{
case 0: *((unsigned char*)0x2000000) = 0xff; break;
case 1: *((unsigned char*)0x2000000) = 0x7f; break;
case 2: *((unsigned char*)0x2000000) = 0x3f; break;
case 3: *((unsigned char*)0x2000000) = 0x1f; break;
case 4: *((unsigned char*)0x2000000) = 0x0f; break;
default: break;
}
for(j=0;j<60000;j++);
}
rI_ISPC= BIT_EINT1; //clear pending_bit
}
我的联系方式:qq25195314,也希望和各位交流交流!!谢谢!
关键词: 求教 关于 S3C44B0 中断 问题 unsig
共1条
1/1 1 跳转至页
回复
| 有奖活动 | |
|---|---|
| 硬核工程师专属补给计划——填盲盒 | |
| “我踩过的那些坑”主题活动——第002期 | |
| 【EEPW电子工程师创研计划】技术变现通道已开启~ | |
| 发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
| 【EEPW在线】E起听工程师的声音! | |
| 高校联络员开始招募啦!有惊喜!! | |
| 【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
| 送您一块开发板,2025年“我要开发板活动”又开始了! | |
我要赚赏金打赏帖 |
|
|---|---|
| 在FireBeetle2ESP32-C5上实现温湿度检测和显示被打赏¥20元 | |
| 在FireBeetle2ESP32-C5上实现光照强度检测及显示被打赏¥21元 | |
| 以FireBeetle2ESP32-C5实现数据识读播报被打赏¥19元 | |
| 【STM32F103ZET6】14:实测STM32F1的串口输出任务的挂起与恢复功能被打赏¥27元 | |
| Chaos-nano在压力容器监控系统中的项目应用被打赏¥23元 | |
| 基于FireBeetle2ESP32-C5的WS2812B彩色灯带控制被打赏¥21元 | |
| SWM221CBT7显示开发板驱动TFT显示屏被打赏¥19元 | |
| SWM221CBT7显示开发板驱动OLED屏显示被打赏¥19元 | |
| SWM221CBT7显示开发板及其使用被打赏¥20元 | |
| 揭秘Chaos-nano:ArduinoProMini轻量级操作系统开发框架深度解析与实战应用被打赏¥19元 | |
我要赚赏金
