中斷在SDARM中除錯

2021-05-23 13:08:01 字數 543 閱讀 8428

總算找到中斷在sdarm中不能進行的原因了(中斷時超級終端提示dummy_isr error, interrupt number: 5, intmsk = 0xffffffdf )

主要問題還是出在mmu上,具體mmu資料還是希望初學者去看看,這裡我想說說裸機在sdarm中實現中斷的步驟,希望對像我這樣剛拿到板子的自學兄弟們有幫助。

方法1: 在2440test檔案中找到mmu.c的函式新增進來,找到(mmu_setmtt(0x00000000,0x03f00000,(int)__entry,rw_cb);  //bank0),將(int)__entry改為0x30000000,然後在主程式中呼叫mmu_init();即可。

方法2:在2440test檔案中找到mmu.c的函式新增進來,然後到2440init.s入口處(即entry下面)新增

export  __entry  

__entry                       (要頂格寫)

在道主函式中呼叫mmu_init();即可。

具體為什麼要這樣做,希望初學者多看看位址對映方面的內容就明白了。

在IAR除錯stm32中斷偏移的奇怪現象

即偏移了64kb,前64kb用於放置bootloader程式.編譯連線最後生成map,檢視也沒出錯 竟然可以找到復位函式的入口,全速執行,程式正常執行.按照st官網的手冊一般情況下,在復位後程式,程式從位址0x00000000讀取堆疊位址,0x00000004取pc指標,0x00000000位址一般...

在Clion中除錯ROS程式

在ros wiki 中有幾種ide的配置方法,但沒有clion的相關介紹。下面介紹一下clion的相關配置。ros clion配置 在終端中開啟jetbrains clion desktop vimjetbrains clion desktop 將檔案中exec home clion 2016.2 ...

邏輯在除錯中的作用

1。今天運用在邏輯上的使用 調式double serice 和 double provider 死活不出來,執行這兩個,就是不出來,我在圖上分析了原因 反證方法 如果順序真是這樣的,證明我的假設是錯的,引入 事實結果1 但是現實我是對的。只有一種可能性了,我呼叫都沒呼叫。最後更改配置搞定。今後要多學...