開箱:
最近對一些小巧的卡片機很感興趣,於是買了一個荔枝派Nano來嘗嘗鮮。
到貨,開箱!
首先是一個Nano的小盒子,里面有一個MicroUSB的OTG頭,一塊小巧的主板和兩排排針。
觀察一下主板,其上集成的東西確實不少,一塊全志F1C100S的SOC(ARM9內核),一塊16M的SPI Flash,一個microUSB口和TF卡槽,一個40P的LCD接口,還有許多IC。
做了一些簡單的硬件連接:
屏幕是官網的4.3寸屏幕,焊接了排針並將UART0連接到了USB-TTL串口上。
燒寫UBoot:
Uboot是一種被廣泛使用的BootLoader,那么什么是BootLoader?看下百度百科定義:BootLoader是在操作系統內核運行之前運行。可以初始化硬件設備、建立內存空間映射圖,從而將系統的軟硬件環境帶到一個合適狀態,以便為最終調用操作系統內核准備好正確的環境。
Bootloader是與硬件高度相關的,所以說我們需要使用適合於荔枝派Nano的Uboot,這樣Uboot才能正確引導荔枝派正確進入Linux。
官方已經給了Uboot的合適版本:
注意:1.以下過程可以參考官方的《荔枝派Nano全流程指南—即食》,上面有詳細的指南,這里部分摘錄了官方教程中的重點。
2.下面的流程都在Linux環境下的Shell中執行。
3.默認大伙都已經安裝了gcc交叉編譯工具,未安裝的請自行百度,過程很簡單。
首先從git上拉取uboot
sudo apt-get install git git clone https://github.com/Lichee-Pi/u-boot.git cd u-boot # 查看分支 git branch -a # 切換到 Nano 分支 git checkout nano-v2018.01
然后編譯
# 此處告知make采用arm-linux-gnueabi下的所有交叉編譯工具,目標架構為Arm,設定各項默認配置為 nano 的spiflash支持版 make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- licheepi_nano_spiflash_defconfig # 若不帶spi-flash的板子,請換成 licheepi_nano_defconfig # 進行可視化配置 make ARCH=arm menuconfig
到這里會跳出一個菜單:
這里需要配置的有三項:
配置
配置同級的 LCD panel timing details 為:x:480,y:272,depth:18,pclk_khz:10000,le:42,ri:8,up:11,lo:4,hs:1,vs:1,sync:3,vmode:0(其他屏幕請參考官方指南)
配置 LCD panel backlight pwm pin 為:PE6
然后Save並退出。
進行編譯:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- -j8
編譯后在目錄里會出現一個:u-boot-sunxi-with-spl.bin,這個文件就是我們一會要用的文件
下面我們用apt下載sunxi-tools(燒錄工具)也可以從github上獲取
sudo apt-get install sunxi-tools
接下來進行檢測:
sudo sunxi-fel ver
這里有時會出現錯誤,提示檢測不到 ERROR: ALLwinner USB FEL device not found!
目前個人了解到的可能的問題有:
1.里面已經有bootloader了,在我拿到板子時,里面好像已經燒寫了一個smartboot(並不了解這個bootloader),如果想要更換boot,請拉低CS腳(1腳),並在拉低時啟動,這時荔枝派就會進入fel模式。
2.搞錯了數據接口,剛開始時是通過micro USB與電腦連接(之前一直以為是uart0接口,實際上uart0是燒錄uboot后的默認通信串口,而不是燒錄前)
3.未安裝驅動,使用zadig進行安裝
4.COM口沒有映射到虛擬機內,需要查看虛擬機設置再次映射。
5.使用的數據線只有充電功能(筆者在剛開始燒錄時因為想不到這個簡單錯誤卡了2個多小時。。。)
當我們進入fel模式后就可以進行燒錄了:(fel模式,無反應,LCD屏常亮)
# 1.以 uboot file-with-spl形式進行(單次運行,測試時推薦) sunxi-fel uboot /剛才提到的u-boot-sunxi-with-spl.bin文件的地址 # 2.燒進 spi-flash (開機自啟,建議測試成功后使用) sunxi-fel -p spiflash-write 0 /剛才提到的u-boot-sunxi-with-spl.bin
上電,出現uboot的啟動界面,uart0接口通過USB-TTL接口插入電腦,使用bdinfo查看板子信息,燒錄成功。
(shell大部分參考官方指南,燒錄進spi flash流程親自操作成功)