i.MX 8MM如何在uboot運行M4程序
OKMX8MM-C 平臺內部有一個Cortex-M4內核,可以使用MCUXpresso SDK進行開發,MCUXpresso SDK是微控制器軟件支持的集合,它包含外圍驅動程序,RPMSG多核通信,以及FreeRTOS支持。可以查看SDK API文檔了解它實現的函數和結構體。
MCUXpresso SDK支持IAR或者armgcc兩種方式編譯鏡像,編譯可以生成三種鏡像,分別運行在QSPI flash、ram、DDR中。編譯方法參考飛凌Linux手冊或SDK_2.5.0_EVK-MIMX8MM使用手冊Getting Started with MCUXpresso SDK for i.MX 8M Mini。
下面介紹編譯出的三種鏡像如何在uboot啟動,以最簡單的hello world為例,程序啟動后會在uart4輸出“hello world.”。
一、如何在uboot啟動QSPI flash版本的M4程序
首先需要將M4程序燒寫到QSPI flash中,可以通過TF卡或者UUU工具(可以參考飛凌linux手冊)。
然后在uboot啟動QSPI flash中的M4核程序。
初始化QSPIflash
sf probe
M啟動M4核程序
bootaux 0x8000000
輸入命令后
二、如何在uboot啟動ram版本的M4程序
首先需要在uboot將M4程序讀取到ram中。
如在M4程序在emmc固定位置中,假定存放位置為MMC的10M偏移處。選擇存放了M4程序的emmc作為當前mmc設備
mmc dev 1
將10M偏移處(0x2800 * 512 = 102400)讀取50K到ram中
mmc read 0x7e0000 2800 100
如果在M4程序在U盤的fat分區中,
usb start
fatload usb 0:1 0x7e0000 hello_world.bin
然后在uboot啟動ram版本的程序
bootaux 0x7e0000
0x7e0000為M4程序的地址
輸入命令后
查看結果
三、如何在uboot啟動DDR版本的程序
首先需要在uboot將M4程序讀取到DDR中。
如在M4程序在emmc固定位置中,假定存放位置為MMC的10M偏移處。選擇存放了M4程序的emmc作為當前mmc設備
mmc dev 1
將10M偏移處(0x2800 * 512 = 102400)讀取50K到DDR中
mmc read 0x80000000 2800 100
dcache flush
如果在M4程序在U盤的fat分區中,
usb start
fatload usb 0:1 0x80000000 hello_world.bin
然后在uboot啟動ram版本的程序
bootaux 0x80000000
0x80000000為M4程序的地址
輸入命令
查看結果
特別注意:
編譯生成的不同版本的M4程序,要嚴格按照編譯版本進行加載,并跳轉到其加載地址運行。
如果編譯的鏡像沒有放到其需要運行的存儲空間內(ram版放到ram、DDR版放到DDR內,QSPIflash版放到QSPIflash內),M4程序程序是不能運行的。例如M4程序是編譯的QSPIflash版本的,把其放入到DDR或者ram內運行,程序無法運行。
希望大家看到有所收獲,指出問題共同進步,在飛凌的技術支持和分享中獲得更多的知識。
相關產品 >
-
FETMX8MM-C核心板
NXP i.MX8系列分為iMX8I、i.MX8M、i.MX8Mini、iMX8M Nano、iMX 8X等,提供基于Cortex-A72 + Cortex-A53、Cortex-A35核心,搭配實時任務處理的Cortex-M4和Cortex M7的解決方案,適用于從消費家庭音頻到工業樓宇自動化及移動計算機等。飛凌嵌入式近期推出的iMX8系列i.MX8Mmini核心板基于四核Cortex-A53、單核Cortex-M4架構的i.MX 8Mmini 處理器設計,現已全面上市,更多i.MX8M核心板產品、解決方案詳情,歡迎致電飛凌嵌入式了解。
-
OKMX8MM-C開發板
多數字音頻接口,多核異構A53+M4,10年+生命周期|NXP公司 i.MX8系列應用處理器根據不同配置有i.MX8I、iMX8M、i.MX8Mini、iMX8M Mini、iMX8M Nano、iMX 8X ,提供基于Cortex-A72 + Cortex-A53、Cortex-A35核心,此外還提供實時任務處理的Cortex-M核心(Cortex-M4和Cortex M7)的解決方案,因此,NXP i.MX8系列應用處理器在高級圖形、高級成像、高級機器視覺、高端音頻、高端語音、高端視頻和高安全的嵌入式應用等跨領域的多種應用場景非常適用。飛凌嵌入式i.MX8M Mini開發板基于NXP 公司的i.MX8M Mini 四核64位處理器設計,主頻最高1.8GHz,ARM Cortex-A53架構。IMX8開發板是一款高性能,低功耗產品,歡迎選購。更多IMX8芯片介紹,IMX8系列軟硬件資料,i.MX8M mini方案定制,請聯系飛凌嵌入式
了解詳情