1樓:
把你的程式目錄中的乙個。m51檔開啟貼出來,看一下code memory一攔例如:
c o d e m e m o r y *
code 0000h 0003h absolute
code 0003h 0004h unit ?pr?voltage_reference_init?init
code 0007h 0004h unit ?pr?oscillator_init?init
code 000bh 0003h absolute
code 000eh 0146h unit ?c?lib_code
code 0154h 00e7h unit ?pr?do_adc0?dctmak001
code 023bh 008ch unit ?c_c51startup
code 02c7h 0087h unit ?pr?main?dctmak001
code 034eh 0064h unit ?pr?timer0_isr?dctmak001
code 03b2h 0056h unit ?pr?led_init?dctmak001
code 0408h 0024h unit ?pr?_t1_waitms?dctmak001
code 042ch 0018h unit ?c_initseg
code 0444h 0015h unit ?pr?init_device?init
code 0459h 0010h unit ?pr?timer_init?init
code 0469h 0010h unit ?pr?port_io_init?init
code 0479h 000dh unit ?pr?adc_init?init
code 0486h 000ah unit ?pr?pca_init?init
code 0490h 0004h unit ?pr?interrupts_init?init
這樣我們才有辦法幫你看,你的程式哪邊overlap, 一般比較常見的錯誤是:
void timer0_isr (void) interrupt 1
此外如果是彙編的程式要注意。
主程式從0開始執行是否有立刻long jpmp到其他位置,有沒有佔用到中斷程式。
中斷程式是否有立刻long jpmp到其他位置,有沒有佔用到下乙個中斷向量程式空間。
2樓:網友
理論上兩個子程式公用一箇中斷是沒有問題的,是否在程式其他地方處理有問題 如果是51系列刪除專案中這個檔案試試。
52微控制器的keil程式?題目 中斷按鍵控制秒錶的走停。要求 按鍵必須使用中斷秒錶必須使用定
c語言編寫和製作還是很困難的。求微控制器大神 寫10s的秒錶程式,用三個按鍵分別控制秒錶啟動 停止 清零 要求 使用定時器0定時,50 52微控制器不用定時中斷如何實現60s秒錶功能 怎麼用微控制器組合語言設計按鍵控制秒錶的啟動和停止 很急 你要是用的硬體中斷作為計時訊號的話,加一個更高優先順序的中...
程式查詢方式和程式中斷方式的區別
墨汁諾 一 方式不同 程式查詢方式是主機與外設間進行資訊交換的最簡單方式。輸入輸出完全通過cpu執行程式來完成。而程式中斷方式無需等待查詢,外設在做好輸入輸出準備時,向主機發中斷請求,主機接到請求後就暫時中止原來執行的程式,轉去執行中斷服務程式對外部請求進行處理。二 含義不同 中斷程式在程式開始定義...
51微控制器中斷處理程式中關中斷的問題
中斷保護現場,是為了你中斷子程式執行完以後能夠返回到你程式中中斷點,即產生中斷的地方,使程式能夠繼續向下執行!如過你說的不用保護現場的話,那麼程式執行完以後就不能夠回到現場,那麼你的程式將不知道要跳轉到那裡去了,也就是飛鳥,呵呵 你說的中斷巢狀,也是一樣的,兩者都要保護現場,不然你也不能夠回到現場,...