音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

請(qǐng)教LPC2200中斷問(wèn)題

作者:zhouarm 欄目:ARM技術(shù)
請(qǐng)教LPC2200中斷問(wèn)題
小弟我初學(xué)ARM,現(xiàn)在碰到這么個(gè)問(wèn)題請(qǐng)各位大蝦多多指教
一:外部中斷用不來(lái)(EINTi),好象中斷請(qǐng)求信號(hào)不能被采樣到。
   發(fā)現(xiàn)這樣一個(gè)現(xiàn)象,我把相關(guān)的引腳(如P0.20)設(shè)置為GPIO,則能正常的進(jìn)行IO操作。但是一旦設(shè)置為EXTINT方式(EINT3),則發(fā)現(xiàn)該引腳的狀態(tài)馬上變成了低電平(通過(guò)IO0PIN觀察到)。這樣的話(huà),中斷輸入引腳始終為低電平了,那怎么能輸入外部中斷請(qǐng)求信號(hào)呢。相關(guān)初始化程序見(jiàn)后
二:中斷該如何結(jié)束
    當(dāng)我使用一個(gè)中斷時(shí)(比如iic中斷,timer中斷等),都能從中斷例程中通過(guò)(VICVectAddr = 0)正常返回。但是,一旦有多個(gè)中斷,發(fā)現(xiàn)不行了。當(dāng)一個(gè)中斷例程中返回后,回到了 IRQ中斷入口 ……18,那里有一條指令
LDR PC,……,執(zhí)行的后果是復(fù)位了。
我想請(qǐng)教的是
1)中斷請(qǐng)求如何撤消
2)FIQ中斷請(qǐng)求如何撤消

以下為中斷設(shè)置相關(guān)代碼

#define KEY_INTSEL       (PINSEL1  | (0x3 << 8)    ) //P0.20設(shè)置為 EINT3
#define    BEEP_SEL       (PINSEL0  & 0XFFFF3FFF )    //P0.7設(shè)置為輸出,控制BEEP
#define BEEPDIR   (IODIR |  ( 0X1 << 7 ) & 0xffefffff)  //P0.7輸出
#define    BEEP    ( 0X1 << 7 )

//中斷相關(guān)定義-------------------------
#define    cEXTMODE        0x1    //EINT3沿觸發(fā)
#define    cEXTPOLAR        0X0    //...............
#define cVICIntSelect    0x0    //全部為IRQ
#define cVICIntEnable    (1 << 17)    //允許EINT3中斷
#define cVICVectCntl0      (0x20 | 17)//EINT3使用SLOT0,最高優(yōu)先級(jí)別,為向量IRQ
#define cVICVectAddr0    (int)  IRQ_Eint3

//函數(shù)定義-----------------------------
void SysInit(void);
void __irq IRQ_Eint3(void);

//程序代碼區(qū)*****************************************************************************

int main (void)
{    
   SysInit();
   IRQEnable();
   while(1);
   return(0);
}


//系統(tǒng)初始化程序,初始化中斷控制器、外部中斷模式
void SysInit(void)
{
    PINSEL0 = BEEP_SEL;
    PINSEL1 = KEY_INTSEL;
    IO0DIR     = BEEPDIR;
    EXTINT     =    0XF;
    EXTMODE    =    cEXTMODE;
    EXTPOLAR    =    cEXTPOLAR;
    
    VICIntSelect    =     cVICIntSelect;
    VICVectCntl0    =    cVICVectCntl0;
    VICVectAddr0    =    cVICVectAddr0;
    VICIntEnable    =     cVICIntEnable;

}



參與討論
昵稱(chēng):
討論內(nèi)容:
 
 
相關(guān)帖子
請(qǐng)問(wèn)2132RTC的功耗是多少以及正常電池供電的電流多大?
請(qǐng)問(wèn),2131開(kāi)發(fā)板的jtag是否可以熱插拔?
關(guān)于采樣頻率的問(wèn)題
求助!
有關(guān)lpc2100的一個(gè)關(guān)于pwm的實(shí)驗(yàn)問(wèn)題
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)