uboot菜單實現全過程

這個菜單其實就是一個uboot中的命令,uboot啓動時,如果進入下載模式,就先運行這個命令。 命令的執行內容就是通過串口打印出一個菜單,等待用戶輸入,再執行相應的動作。 先自己寫一個cmd_menu.c的文件,放到common目錄下,修改同目錄下的Makefile文件,加入編譯選項: COBJS-$(CONFIG_CMD_MENU) += cmd_menu.o cmd_menu.c裏面的內容:

先將cmd_bootm.c裏面的頭文件包含進去。

 menu是名字,CONFIG_SYS_MAXARGS表示最大的參數,0表示不可重複,do_menu是實現的函數。接下來的是短的幫助信息,接着是長的幫助信息。  參照cmd_bootm.c裏面的int do_bootm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) 寫 實現do_menu

}這裏調用了menu_shell()它的實現如下:

其實主要的就是按鍵的讀取函數和菜單命令的實現,run_command();

    

  這只是一些簡單的菜單命令。呵呵,有點意思。






發佈了38 篇原創文章 · 獲贊 0 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章