今天已經是進入ARM學習的第四講,我們也結束了中斷寄存器的學習,進入看門狗部分學習
1.中斷產生:①按鍵②外部電平③定時器,ADC,LCD④系統軟中斷
2.中斷處理流程:
①中斷控制器匯集各類外設發出的中斷信號
②CPU保存當前程序運行的環境,調用中斷服務程序ISR來處理中斷
③在ISR中識別哪類中斷
④清除中斷
3.中斷服務子程序原則
①程序盡量短
②中斷無入參也無返回值
③實現信號的全局變量
4.流水線的誤差需要修正返回地址
5.分散加載
當嵌入式系統在仿真環境下調試完畢,脫機運行時,要將源程序編譯連接成可執行代碼燒寫到ROM中,CPU取指令,數據都要調用ROM,其間得加入等待周期來降低總線速率用以滿足訪問慢速ROM
6.分散加載注意點
①每個分散加載文件必須包含一個根區,每個根區加載地址等于運行地址
②每個引導區至少包含一個執行區,每個執行區必須包含多個代碼段或數據段,一個引導區可以包含多個執行區,但每個執行區只屬于一個引導區
7.看門狗定時器工作原理
在看門狗定時器內部存在一個遞減計數器,當計數器為0時,便會自動重啟控制器,但在其計數器遞減至0前,將其遞減計數器重新設置一下,那么就不會執行重啟操作
8.時間計算
t_watchdog=1/[PCLK(50M)/(Prescaler+1)/Division_factor] |