精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

最簡單的bootloader的編寫步驟

0BFC_eet_china ? 來源:未知 ? 作者:李倩 ? 2018-08-08 08:46 ? 次閱讀

內核從板載啟動的 bootargs--內核啟動參數, bootargs 是 bootloader 傳遞給內核的啟動字符串。

BootLoader的目標是啟動內核, 大多數 boot loader 都包含兩種不同的操作模式:"啟動加載"模式和"下載"模式 。

嵌入式操作系統中,BootLoader是在操作系統內核運行之前運行。可以初始化硬件設備、建立內存空間映射圖,從而將系統的軟硬件環境帶到一個合適狀態,以便為最終調用操作系統內核準備好正確的環境。在嵌入式系統中,通常并沒有像BIOS那樣的固件程序(注,有的嵌入式CPU也會內嵌一段短小的啟動程序),因此整個系統的加載啟動任務就完全由BootLoader來完成。在一個基于ARM7TDMI core的嵌入式系統中,系統在上電或復位時通常都從地址0x00000000處開始執行,而在這個地址處安排的通常就是系統的BootLoader程序。常見的BootLoader程序如下:

最簡單的bootloader的編寫步驟:

1). 初始化硬件:關看門狗、設置時鐘、設置SDRAM、初始化NAND FLASH

1.關看門狗:2440的開發板一上電看門狗是打開的,不關閉的話每三秒就會復位一次開發板。看門狗的地址為:0x53000000

2.設置時鐘:CLKDVIN寄存器的地址為0x4c000014,必須設置為異步模式,這是datasheet所規定的。

注:

判斷從nand啟動還是nor啟動就往內存中寫數據即可,之后看是否能從內存相應地址讀出對應的值。

Nand_Flash的時序(s3c2440中)nand-flash存在先天缺陷:會位反轉為此引入OOBoutofbank。

Nand_Flash芯片手冊中

相關時間參數的獲取:

2). 如果bootloader比較大,要把它重定位到SDRAM

3). 把內核從NAND FLASH讀到SDRAM

4). 設置"要傳給內核的參數"

在u-boot中查看分區,使用命令mtd

5). 跳轉執行內核

在簡單的BootLoader編寫的過程中出現過以下錯誤,錯誤之處是.lds鏈接腳本文件出錯,要注意相關格式。

修改完最后的這個錯誤,最終一個最簡BootLoader及完成了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 看門狗
    +關注

    關注

    10

    文章

    559

    瀏覽量

    70754
  • bootloader
    +關注

    關注

    2

    文章

    234

    瀏覽量

    45555

原文標題:最最簡單的Bootloader怎么寫?

文章出處:【微信號:eet-china,微信公眾號:電子工程專輯】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    什么是Bootloader 淺談STM32中bootloader的內存分配

    準備好環境。 2. Bootloader的特點 Bootloader不屬于操作系統,一般采用匯編語言和C語言開發。需要針對特定的硬件平臺編寫。在移植過程時,首先為開發板移植Bootloader
    的頭像 發表于 02-15 06:10 ?1.7w次閱讀
    什么是<b class='flag-5'>Bootloader</b> 淺談STM32中<b class='flag-5'>bootloader</b>的內存分配

    如何編寫bootloader

    每一個MCU都是PIC18F46K22@ 20MHz VDD=5V DIP40引腳封裝。我想學習如何為我的MCU編寫S基本Bootloader,這樣我就可以從UART端口閃出它。有人可以指點一下我
    發表于 09-21 10:13

    BootLoader是什么? 怎樣去編寫BootLoader源程序?

    BootLoader是什么?怎樣去編寫BootLoader源程序?BootLoader的編譯、鏈接和下載
    發表于 04-27 07:08

    關于編寫Bootloader的資料大合集

    在使用MCU的時候如果要使用程序下載、程序升級或程序備份,那么都需要自己編寫Bootloader。那么編寫Bootloader使首先應該完成的是什么呢?沒錯,就是中斷向量表。那如果操作
    發表于 11-03 08:05

    簡單的c編寫的旋進數組

    簡單的c編寫的旋進數組。
    發表于 03-11 13:39 ?0次下載

    AVR的bootloader的設置步驟教程及注意事項

    熔絲位的燒寫:BOOTRST要進行編程,這樣單片機在復位后自動跳轉到bootloader區執行bootloader的代碼,然后要根據自己bootloader的大小設置boot區的的熔絲位。
    的頭像 發表于 05-20 09:46 ?6789次閱讀
    AVR的<b class='flag-5'>bootloader</b>的設置<b class='flag-5'>步驟</b>教程及注意事項

    Linux bootloader 編寫方法

    對于移植 linux 到其它開發板的人來說,編寫 boot loader 是一個不可避免的過程。對于學習linux的人來講,編寫 bootloader 也是一個很有挑戰性的工作。本文
    發表于 04-02 14:39 ?351次閱讀

    如何編寫ARM處理器的Bootloader

    作者 | strongerHuang 微信公眾號 | strongerHuang 之前從應用的角度給大家分享過Bootloader相關的文章,今天從底層原理來給大家描述ARM處理器如何編寫
    的頭像 發表于 10-27 11:02 ?4140次閱讀
    如何<b class='flag-5'>編寫</b>ARM處理器的<b class='flag-5'>Bootloader</b>

    【MCU】BootLoader簡單介紹

    一、pandas是什么?在嵌入式操作系統中,BootLoader是在操作系統內核運行之前運行,用來初始化硬件設備,建立內存空間映射圖,以便為操作系統的啟動做準備。在嵌入式系統中,通常沒有想BIOS
    發表于 10-27 19:21 ?48次下載
    【MCU】<b class='flag-5'>BootLoader</b>的<b class='flag-5'>簡單</b>介紹

    關于M0內核MCU的Bootloader編寫

    在使用MCU的時候如果要使用程序下載、程序升級或程序備份,那么都需要自己編寫Bootloader。那么編寫Bootloader使首先應該完成的是什么呢?沒錯,就是中斷向量表。那如果操作
    發表于 10-28 11:36 ?16次下載
    關于M0內核MCU的<b class='flag-5'>Bootloader</b><b class='flag-5'>編寫</b>

    在STM32F103C8上實現一個簡單bootloader

    在STM32F103C8上實現一個簡單bootloader最近在琢磨單片機在線更新程序的事情,查資料查到在STM32上實現一個bootloader比較簡單,廢話不多說,動手嘗試一下。
    發表于 11-23 17:51 ?20次下載
    在STM32F103C8上實現一個<b class='flag-5'>簡單</b>的<b class='flag-5'>bootloader</b>

    如何實現簡單bootloader功能

    考慮到瑞薩的MCUBoot的ROM占用和某些客戶的需求,本篇主要講述在不使用瑞薩MCUboot驅動下,如何實現簡單bootloader功能。
    的頭像 發表于 09-06 13:13 ?2469次閱讀

    倍福PLC學習:編寫函數塊及簡單調試

    今天這篇文章我們來編寫一個簡單的電機控制函數塊,并將其下載到倍福CX5020控制器進行測試,以熟悉TwinCAT3環境下基本的編程步驟
    的頭像 發表于 11-09 09:34 ?5076次閱讀

    如何編寫一個簡單的電機控制函數塊?

    今天這篇文章我們來編寫一個簡單的電機控制函數塊,并將其下載到倍福CX5020控制器進行測試,以熟悉TwinCAT3環境下基本的編程步驟
    的頭像 發表于 02-07 14:00 ?1767次閱讀
    如何<b class='flag-5'>編寫</b>一個<b class='flag-5'>簡單</b>的電機控制函數塊?

    ARM處理器如何編寫Bootloader

    前面給大家分享過Bootloader從應用角度執行的相關文章,今天從底層原理來給大家描述ARM處理器如何編寫Bootloader,以及底層流程。
    的頭像 發表于 07-26 09:10 ?805次閱讀
    ARM處理器如何<b class='flag-5'>編寫</b><b class='flag-5'>Bootloader</b>