基于WINCE5.0的三星2450 sd卡检测脚中断EINT18 设成系统中断号时超出范围的问题????
问题描述:三星2450原厂BSP包中 SD卡检测脚设为EINT0,工作正常。现在欲改成EINT18,但在S3C2450_intr.h文件中,限定sysINT Number 最大为64,如下图所示
#define IRQ_EINT13 60
#define IRQ_EINT14 61
#define IRQ_EINT15 62
#define IRQ_EINT16 63
//SysINT Number limit : 64
//#define IRQ_EINT17 63
//#define IRQ_EINT18 64
//#define IRQ_EINT19 63
//#define IRQ_EINT20 64
//#define IRQ_EINT21 65
//#define IRQ_EINT22 66
//#define IRQ_EINT23 67
#define IRQ_LAST IRQ_EINT16
疑惑:
1、本人曾尝试把 #define IRQ_EINT18 65
#define IRQ_LAST IRQ_EINT18
另外在初始化里也修改了对应的GPIO,并配成EINT18/GPG10引脚。依然无法检测到SD的插拔。是否漏了哪些地方没有改到位?此方法可行否?
2、另有一个方法,是否应该把EINT18 定义到63以内,初始化配成EINT18/GPG10引脚。然后去修改下面的函数(此方法还没有去试验,今天去试一下)
* OEMInterruptEnable
* OEMInterruptDisable
* OEMInterruptDone
* OEMInterruptHandle
请各位同行指教!