|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
緊急求助,關于s3c44b0x定時中斷 ,懇請高手指點 |
| 作者:happysunny 欄目:ARM技術(shù) |
用到的是定時器5作為內(nèi)部定時器 發(fā)生timer5中斷的時候,進不到中斷服務程序中,很是納悶,以下是程序,請各位指教 先是啟動程序 以下是主程序: #include"C:\ARM250\ks32c41100-ucosii-1_0\ks32c41100\44b.h" void __irq Timer5Done(void); int Main(void) { rPCONE = 0xaaaa; //設置pe口做定時器功能 rPUPE = 0xff; rTCON &= 0xf0000000; rTCFG0|= 0xffffffff; rTCFG1&= 0x0000000; rTCFG1|= 0x0111111; rINTCON=0x1; // 向量中斷,為irq模式 rINTMOD=0x0; // All=IRQ mode rINTMSK=~(BIT_GLOBAL|BIT_TIMER5);//開定時器5中斷 pISR_TIMER5=(unsigned)TIMER5_int; //定義中斷入口地址 rTCNTB1 = 0x0046; rTCMPB1 = 0x0023; rTCNTB2 = 0x0046; rTCMPB2 = 0x0023; rTCNTB3 = 0x0046; rTCMPB3 = 0x0023; rTCNTB4= 0x0046; rTCMPB4= 0x0023; rTCNTB5 =0x0008; //設置寄存器值 rTCON |=0x02222222; // manual update rTCON&= 0x000000f0; // clear manal update bit rTCON|= 0x05dddd0d; // autoload置位,start 定時器0.1.2.3.4.5 } void __irq Timer5Done(void) { int i; rI_ISPC=BIT_TIMER0; for(i=0;i<1000;i++); } #define pISR_TIMER0 (*(unsigned *)(_ISR_STARTADDRESS+0x40))//此為在44b.h中pISR_TIMER5的定義 當加了rINTMSK=~(BIT_GLOBAL|BIT_TIMER5);這句話后,程序不執(zhí)行,不能輸出波形,當把此句話改為rINTMSK|=(BIT_GLOBAL|BIT_TIMER5);時就可以實現(xiàn)pwm輸出功能,也就是說不能進行正常的中斷,請各位幫幫我吧。《嘀x多謝。!看看中斷的設置還有哪些問題? |
| 2樓: | >>參與討論 |
| 作者: phz0008 于 2005/4/26 8:25:00 發(fā)布:
rINTCON=0x1; // 向量中斷,為irq模式 這里要注意 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |