|
|||||||||||
| 技術交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術 | 電源技術 | 測控之家 | EMC技術 | ARM技術 | EDA技術 | PCB技術 | 嵌入式系統(tǒng) 驅動編程 | 集成電路 | 器件替換 | 模擬技術 | 新手園地 | 單 片 機 | DSP技術 | MCU技術 | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
奇怪,為什麼我的程序不進入中斷!!! |
| 作者:voipno1 欄目:單片機 |
奇怪,為什麼我的程序不進入中斷。! 我最近寫了一個程序,可在仿真時程序不能進入中斷函數(shù)。實際運行時,板子也沒有任何反應! 我用的軟件版本7.50A,我檢查了程序均沒有發(fā)現(xiàn)問題。懷疑為軟件問題,換為8.05未註冊版本,編譯時顯示OBJ文件錯誤,進入仿真還是無法進入中斷。將原來的工程(PROJECT)刪除重建,編譯後仿真,一切正常,燒錄IC,裝機實測,OK!本來以為一切這樣就解決問題了,可我用算號器注冊後,再次編譯,仿真時又不能進入中斷了! 真是奇怪!我搞了好幾天了,請問大家這是哪裏出了問題? |
| 2樓: | >>參與討論 |
| 作者: voipno1 于 2006/10/17 10:59:00 發(fā)布:
我的程序如下 //MAIN.C #include <REGX52.H> #include <DEFINE.H> extern void clock(void); extern void DISPLAY(void); extern void adc_conversion(void); extern void led_playground(void); extern void clock_execute(void); extern uchar led_playground_count; extern uchar Key_variable_a; extern uchar Key_variable_d; extern uchar serial_debug; extern uchar idata disp_buffer2[6]; extern uchar tlc549_adc_old; uchar TimeCount; void init(void) { disp_buffer2[4] = 0xff; disp_buffer2[5] = 0xff; CLK = 0; PSOUT = 1; tlc549_adc_old = 0; } void int_0(void) interrupt 1 using 1 { TL0=(65535-3980)%256; TH0=(65535-3980)/256; //2ms TimeCount++; led_playground_count++; clock(); DISPLAY(); } void int_1(void) interrupt 4 using 2 { if (TI) { TI=0; } } void main(void) { init(); TL0=(65535-3982)%256; TH0=(65535-3982)/256; TMOD = 0x01; EA = 1; ET0 = 1; TR0 = 1; //用於串口調(diào)試,波特率9600 TMOD = TMOD | 0x20; TH1=TL1=0xf3; PCON = 0x80; ET1 = 1; TR1 = 1; SCON = 0x50; ES = 1; while(1) { if (led_playground_count == 100) //led_playground_count=100,延時200mS { clock_execute(); // led_playground(); // led_playground_count = 0; } adc_conversion(); //ADC轉換 } } 請大家?guī)兔Ψ治鲆幌? |
|
| 3樓: | >>參與討論 |
| 作者: zgl7903 于 2006/10/17 11:56:00 發(fā)布:
開啟了定時器1中斷,但是沒有中斷服務程序 |
|
| 4樓: | >>參與討論 |
| 作者: kookbrx 于 2006/10/17 12:36:00 發(fā)布:
! 進入中斷后清中斷flag標志 |
|
| 5樓: | >>參與討論 |
| 作者: voipno1 于 2006/10/17 18:15:00 發(fā)布:
中斷沒問題 中斷沒問題,我講過,用8.05沒注冊的版本就可以用啊,中斷正常 |
|
| 6樓: | >>參與討論 |
| 作者: guet 于 2006/10/17 22:55:00 發(fā)布:
ET1=1; 定時器1作為波特率發(fā)生器,又開了中斷,卻沒有中斷服務程序,程序跑飛鳥 * - 本貼最后修改時間:2006-10-17 22:57:10 修改者:guet |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |