在英創(chuàng)Linux主板的使用必讀中,已經(jīng)詳細的介紹了使用userinfo.txt來配置系統(tǒng)開機自動執(zhí)行程序的方法,詳情可以參見英創(chuàng)Linux主板的使用必讀手冊。
還有一種方法是在終端下使用命令行來自動執(zhí)行程序,如果客戶比較習慣使用Linux命令行模式就可以使用這種方法。這種方法的好處是比較靈活,用戶可自主配置,即在執(zhí)行程序之前,可以自己編輯輸入一些其他命令或者設置一些專用的環(huán)境變量。
在英創(chuàng)的嵌入式Linux板卡中集成了相應啟動管理程序,用戶只需要編輯一個名為user.sh的Linux腳本文件,然后將user.sh放在英創(chuàng)Linux主板的/mnt/nandflash目錄下即可實現(xiàn)腳本自動啟動應用程序的功能。當userinfo.txt和user.sh同時存在的情況下,系統(tǒng)會優(yōu)先選擇讀取user.sh,同時userinfo.txt文件中指定的啟動程序不起作用了。下面來詳細介紹如何使用這種方法。
首先需要編輯user.sh,因為user.sh是一個Linux腳本文件,所以在Linux系統(tǒng)環(huán)境下就可以進行編輯。將user.sh拷貝到裝有Linux系統(tǒng)的主機中,使用cd命令進入響應的目錄,再使用命令gedit user.sh編輯腳本文件。在腳本文件中,輸入需要執(zhí)行的命令即可。
編輯腳本
如圖所示,只是輸入了一個最簡單的執(zhí)行程序命令,進入到nandflash中,然后執(zhí)行hello這個程序。編輯好之后,保存。
如果沒有搭建好的Linux系統(tǒng)環(huán)境,要在Windows系統(tǒng)的環(huán)境下編輯這個腳本文件,那就需要使用單獨的編輯器。這是因為Windows下DOS文本格式的換行符和Linux系統(tǒng)中格式使用的換行符不同,所以使用Windows自帶的文本編輯器編輯,在Linux下會出現(xiàn)不能識別換行符的情況。
這里可以推薦給客戶兩款很方便軟件使用:Notepad2和PSPad。在Windows下使用這兩款軟件編輯這個腳本文件就行,下面分別是使用這兩款軟件的編輯界面。
使用Notepad2編輯界面
使用PSPad編輯界面
將編輯好的user.sh放到英創(chuàng)Linux主板的/mnt/nandflash/目錄下,同時要將需要執(zhí)行的程序放在user.sh中指定的運行路徑。
復制user.sh到nandflash目錄下
斷開JP1,重新啟動主板進入運行模式,便能夠自動執(zhí)行user.sh中的命令,來啟動設置好的程序。
可以看到系統(tǒng)開機后,自動執(zhí)行了hello這個程序。
如果使用了Windows自帶的文字編輯器,比如寫字板,編輯了user.sh腳本文件。會出現(xiàn)錯誤提示。
錯誤提示
這是因為前面提到過的,Linux不能識別DOS文本下的換行符。使用VI打開/mnt/nandflash/中的user.sh查看,會發(fā)現(xiàn)換行符的地方多了^M這個符號。
換行的地方多了^M
如果遇見這種情況,進入到/mnt/nandflash/目錄中,使用命令dos2unix user.sh可以將DOS文本格式user.sh轉換成Linux格式。轉換以后,再使用VI進行查看,已經(jīng)正確。
經(jīng)過轉換的user.sh已經(jīng)正確
再重啟主板,就能夠正確的執(zhí)行程序了。
正確啟動程序
成都英創(chuàng)信息技術有限公司 028-8618 0660