《bootloader实验》ppt课件

《bootloader实验》ppt课件

ID:26889164

大小:299.32 KB

页数:17页

时间:2018-11-29

《bootloader实验》ppt课件_第1页
《bootloader实验》ppt课件_第2页
《bootloader实验》ppt课件_第3页
《bootloader实验》ppt课件_第4页
《bootloader实验》ppt课件_第5页
资源描述:

《《bootloader实验》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、BootLoader實驗1實驗一.實驗目的掌握在BootLoder增加一個功能的流程瞭解BootLoader在嵌入式系統中的作用二.實驗內容向BootLoder增加一個功能模組2BootLoader的撰寫使用ADS(ARMDeveloperSuite)編譯提供親善的IDE界面及穩定的編譯器以C語言及少量的組合語言寫作完整簡單的原始碼方便進一步修改及發展3BootLoader的介紹是在作業系統內核或用戶應用程式執行之前執行的一段小程式ARM系統中重置時都從位址0x00000000開始執行依賴於硬體而實現的,特別是在嵌入式系統中不同的硬體需求不同的bo

2、otloader大多數bootloader都包含兩種模式“啟動載入”模式“下載”模式4一般BootLoader的功用初始化部份的電路CPU,SDRAM,Flash,UART,USB等等整備快閃記憶體內的影像檔清除快閃記憶體存入影像檔載入作業系統從快閃記憶體轉存作業系統核心至SDRAM傳送啟動參數及CPU代碼等資訊給核心轉換系統控制權給作業系統核心5一般BootLoader的功用6Bootloader系統架構圖7BootLoader的模式啟動載入模式這種模式也稱為“自主”模式即bootloader從目的機上的某個Flash上將作業系統載入到RAM中執

3、行整個過程沒有用戶的介入下載模式在這種模式下,目的設備上的bootloader將通過串列埠或者網路連接或者其他通信手段從主機下載檔先被bootloader保存到目的設備的RAM中然後被bootloader寫到目的設備上的FLASH中8BootLoader的啟動階段Booloader分為兩個階段階段1用組合語言初始化CPU及存儲設備直接在FLASH中執行階段2一般用C語言來實現一般的流程以及對硬體的一些驅動支援這部分會被複製到RAM中執行9BootLoader的啟動步驟階段1的步驟(以執行的先後順序)一些基本硬體的初始化工作為載入鏡像2準備RAM空間

4、(RAM足夠的情況下可以省略)把鏡像2複製到RAM空間跳轉到鏡像2的入口點(一般是C入口點)階段2的步驟(以執行的先後順序)繼續初始化相關硬體和相關功能性函數進入命令行模式,等待功能性命令的輸入來執行相應的功能比如網路下載,啟動作業系統內核10BootLoader的功能介紹BootLoader的功能Pleaseselectfunction:0:tftpdownload1:WriteNandflashwithdownloadfile2:UpdataBootloaderwithdownloadfile3:bootuClinux說明功能1:利用TFTP網

5、路傳輸程式,包括Linux內核和隻檔案系統功能2:將下載的程式燒寫到NANDFLASH相應的分區中功能3:bootloader的自我更新,bootloader主要保存在NorFlash中功能4:啟動Linux11bootloader的命令結構介紹struct{void(*fun)(void);char*tip;}CmdTip[]={{tftp_down,"tftpdownload"},{NandWrite,"WriteNandflashwithdownloadfile"},{UpdateBootLoader,"UpdataBootloaderwit

6、hdownloadfile"},{NandLoadRun,"bootlinux"},{0,0}};12系統啟動程式SysInit.sSysInit.s主要是實驗Bootloader的stage1階段的功能InitSystemldrr0,=WTCON;watchdogdisableldrr1,=0x0strr1,[r0]ldrr0,=INTMSKldrr1,=0xffffffff;allinterruptdisablestrr1,[r0]ldrr0,=INTSUBMSKldrr1,=0x3ff;allsubinterruptdisablestrr1,

7、[r0];ToreducePLLlocktime,adjusttheLOCKTIMEregister.ldrr0,=LOCKTIMEldrr1,=0xffffffstrr1,[r0]….13tftp下載功能voidtftp_down(void){printf("Nowdownloadfilefromnetto0x%x...",DOWNLOAD_ADDR);eth_init();//乙太網路硬體初始化arp_init();download_len=-1;download_addr=DOWNLOAD_ADDR;NetLoadFile(downloa

8、d_addr,LOCAL_IP_ADDR,0,0);//調用TFTP網路下載程式if(download_len==-1)p

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。