系統上電,檢測bms,選擇系統的啟動方式,如果bms為高電平,則系統從片內rom啟動。at91rm9200的rom上電後被對映到了0x0和0x100000處,在這兩個位址處都可以訪問到rom。由於9200的rom中固化了乙個bootloaer程式。所以pc從0x0處開始執行這個bootloaer(準確的說應該是一級bootloader)。這個bootloer依次完成以下步驟:
1. pll setup
設定pllb產生48m時鐘頻率提供給usb device。同時debug usart也被初始化為48m的時鐘頻率。
2. 相應模式下的堆疊設定
3. 檢測主時鐘源(main oscillator)
4. 中斷控制器(aic)的設定
5. c 變數的初始化
6. 跳到主函式
以上所言,純屬拋磚引玉,希望同行們多多指教,共同進步!
AT91RM9200 啟動過程詳解
最近,一直在做ramdisk,把arm linux的啟動過程完整的看了一遍,收穫不少,心想可以寫點原創了。考慮到網上的文件雖然有介紹arm linux的啟動過程的,但是一般沒有給出流程圖,也講的十分零星,沒有乙個全貌,我就主要以流程圖的方式給出,再一點一點的詳解每個過程,剛剛接觸嵌入式arm lin...
AT91RM9200啟動機制簡析
at91rm9200啟動機制簡析 本文以h9200m開發板為例,簡單分析一下at91rm9200處理器的啟動機制 一 h9200m開發板簡介 at91rm9200晶元的pa31 bms引腳的電平高低來決定選擇哪種啟動模式 at91rm9200 atmel 公司生產的基於arm9核的soc處理器.以下...
AT91RM9200新增串列埠驅動
uart串列埠驅動程式移植 uart串列埠驅動程式移植 仇潔婷,陳儒軍 在嵌入式控制系統採集站的設計方案中,需要用到 at91rm9200的5 個uart 串列埠,就會涉及到多個中斷的優先順序分配問題,而且也可能造成序列通訊的中斷不能及時響應,從而造成資料丟失。在 linux2.6.21 核心中,u...