|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
求救:函數(shù)調(diào)用問題。 |
| 作者:qd_sk 欄目:單片機(jī) |
請大家看看,該怎么做,才能在主程序和中斷程序中同時(shí)調(diào)用EEPROM_read()函數(shù) main() { sciint(); /*SCI部件初始化*/ CREN=1; /*接收允許*/ RCIE=1; /*接收中斷允許*/ TXIE=0; /*發(fā)送中斷禁止*/ PEIE=1; GIE = 1; /*開中斷// GLOBAL interrupt enable */ /*其他初始化*/ EEPROM_write(0x11,'R'); while (WR==1) /*等上次寫操作完成,*/ { } my_code=EEPROM_read(0x11); /*讀出EEPROM*/ while(1) { ..... my_data=EEPROM_read(0x11); } /*主循環(huán)結(jié)束*/ } /*end of main()*/ static void interrupt /*中斷服務(wù)程序*/ isr(void) { if(TXIF==1) /*發(fā)送中斷*/ { unsigned CHAR tmp_ee_CHAR; tmp_ee_CHAR=EEPROM_read(ee_pointer++); TXREG=tmp_ee_CHAR; /*發(fā)送*/ send_counter++; /*指向下一個*/ }/*發(fā)送中斷*/ } /* END OF serial_program() interrupt */ 編譯結(jié)果: Command LINE: "C:\HT-PIC\BIN\PICC.EXE -FAKELOCAL -G -O -Zg -ICD -SIGNED_CHAR -E -ASMLIST -N -X -16F876 -IC:\HT-PIC -MPLAB C:\HT-PIC\TX_PIC.C" Error[000] : function _EEPROM_read appears in multiple call graphs: rooted at _isr and _main Enter PICC -HELP for help 好像提示在兩個函數(shù)中都調(diào)用了 EEPROM_read ,但我確實(shí)必須在主程序和中斷程序中必須調(diào)用。 請教版主及高手:該如何處理。 |
| 2樓: | >>參與討論 |
| 作者: fxmxh 于 2003/6/13 10:41:00 發(fā)布:
加#pragma interrupt_level 1偽指令 加#pragma interrupt_level 1偽指令,在主程序調(diào)用eeprom_read()前加di( )函數(shù) |
|
| 3樓: | >>參與討論 |
| 作者: qd_sk 于 2003/6/13 11:13:00 發(fā)布:
謝謝 |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |