君正x1000軟體開發指南手冊
君正處理器是高整合度、高效能和低功耗的32位RISC處理器,帶有MMU和資料及指令Cache,以及豐富的外圍裝置,可以執行 Linux作業系統。本文將向讀者介紹基於君正處理器平臺進行Linux核心的配置方法和開發過程,,引導開發人員快速進行Linux開發。本文件為君正核心3.10 版本開發文件,基於晶片X1000,不針對具體開發板,文中如有涉及具體開發板型號,是為了說明方便。
在閱讀該文件前,需要具備以下基本技能:
1.會使用 Linux 系統進行開發,最好是 ubuntu。
2.知道嵌入式開發基本流程。如 uboot,linux,檔案系統製作等。
閱讀該文件,會提供以下幫助:
1.幫助理解君正 BSP 基本組成。(uboot,linux,檔案系統)
2.提供基於君正開發平臺建立自己的應用程式方法。
3.提供應用程式訪問驅動的基本測試用例。
2. 搭建開發環境
在釋出SDK時,可以使用君正提供的開發平臺,該平臺包含了uboot原始碼,kernel原始碼,交叉工具鏈和一些測試程式等,基於該平臺,可以方便第三方庫的新增,方便應用程式開發。詳細參考文件《Manhattan_platform編譯系統使用指南.pdf》完成開發環境搭建。
3. Uboot 配置和使用
Linux 核心需要U-Boot來引導。U-Boot是為嵌入式平臺提供的開放原始碼的載入程式,它提供序列口、乙太網等多種下載方式,提供NOR和 NAND快閃記憶體和環境變數管理等功能,支援網路協議棧、JFFS2/EXT2/FAT檔案系統,同時還支援多種裝置驅動如MMC/SD 卡、USB裝置、LCD驅動等。
3.1. uboot 編譯
在進行此步驟前,請確保已經正確配置好交叉編譯環境。
針對不同開發板的配置,uboot 的編譯配置也不相同,在釋出的 uboot 中,編譯配置由開發板型號[BOARD_NAME],核心映象格式[IMAGE_FMT]和啟動方式[BOOT]組成,格式如下
[BOARD_NAME]_[IMAGE_FMT]_[BOOT]
具體配置在 uboot/boards.cfg 檔案中,可以透過以下命令快速檢視開發板支援的編譯配置
$ cat boards.cfg | grep [BOARD_NAME]
根據以上方法,找到對應開發板的編譯選項按照以下方式進行編譯:
$ make distclean
$ make [BOARD_NAME]_[IMAGE_FMT]_[BOOT]
例如開發板 phoenix 的編譯配置如下:
phoenix_uImage_msc0 支援 sd 卡啟動 uImage 的配置
phoenix_uImage_sfc_nor 支援 nor flash 啟動 uImage 的配置
$ make distclean
$ make phoenix_uImage_sfc_nor
例如開發板 halley2 的編譯配置如下:
halley2_uImage_sfc_nor 支援 nor flash 啟動 uImage 的配置
$ make distclean
$ make halley2_uImage_sfc_nor
編譯完成後會在當前目錄下生成 u-boot-with-spl.bin 檔案。即最終燒錄所需的 uboot 檔案。
3.2. uboot 常用命令
開啟除錯串列埠,在 uboot 啟動過程中,敲擊任意按鍵,打斷 uboot 引導映象過程,進入 uboot shell 環境,uboot 常用命令如下:
“help”命令:該命令檢視所有命令,其中“help command”檢視具體命令的格式。
“printenv”命令:該命令檢視環境變數。
“setenv”命令:該命令設定環境變數。
“saveenv”命令:該命令儲存環境變數。
“bootp”命令:該命令動態獲取 IP。
“tftpboot”命令:該命令透過 TFTP 協議從網路下載檔案執行。
“bootm”命令:該命令從 memory 執行 u-boot 映像。
“go”命令:該命令從 memory 執行應用程式。
“boot”命令:該命令執行 bootcmd 環境變數指定的命令。
“reset”命令:該命令復位 CPU。
“md”命令:顯示記憶體資料。
“mw”命令:修改記憶體資料。
“cp”命令:記憶體複製命令。
sfc nor 命令:
:“sfcnor read” 從 spi nor flash 中讀取資料到記憶體。
“sfcnor write” 從記憶體中寫資料到 spi nor flash。
“sfcnor erase” spi nor flash 擦出。
Sd 卡命令:
“mmc read” 從 sd 卡中讀取資料。
“mmc write” 寫資料到 sd 卡。
來源(可參考)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31529038/viewspace-2654288/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 軟體開發命名指南
- javacv教程文件手冊開發指南匯總篇Java
- kraken軟體操作手冊
- 海思hi3751 Android儲存開發指南手冊Android
- 正規表示式手冊
- 【MSP432P401R開發】資料手冊使用指南
- MeterSphere開發者手冊
- 學習軟體開發的正確姿勢
- RK3288 Android7.1 軟體開發指南Android
- JavaScript正規表示式 手冊JavaScript
- [開發文件]bootstrap中文手冊boot
- 軟體開發正確開啟方式:低程式碼+微服務微服務
- 軟體開發專案文件系列之十三如何撰寫使用者操作手冊
- 軟體開發:app軟體開發,pc端軟體開發,微商城/小程式開發APP
- Web 開發手冊——PHP 開發環境搭建WebPHP開發環境
- 阿里Java開發手冊思考(三)阿里Java
- 阿里巴巴Java開發手冊阿里Java
- wxpython - 快速開發封裝手冊Python封裝
- 阿里Java開發手冊思考(二)阿里Java
- 阿里Java開發手冊思考(一)阿里Java
- base業務框架開發手冊框架
- Web前端開發規範手冊Web前端
- 阿里開源軟體替換指南阿里
- TensorFlow開發者證書 中文手冊
- Java開發手冊精華總結Java
- MaxPHP(原Yao框架)完全開發手冊PHP框架
- 企業即時通訊APP開發,手機聊天軟體開發APP
- 安卓開發開發規範手冊V1.0安卓
- 安卓開發開發規範手冊 V1.0安卓
- 【大型軟體開發】淺談大型Qt軟體開發(一)開發前的準備——在著手開發之前,我們要做些什麼?QT
- Xilinx官網查詢各個版本軟體的手冊
- Flutter開發者必備手冊 Flutter GoFlutterGo
- 阿里巴巴Java開發規範手冊阿里Java
- 阿里巴巴java開發手冊筆記阿里Java筆記
- 軟體開發2
- 軟體開發3
- 軟體開發模式模式
- 軟體開發流程