最近入手了朱有鵬老師的嵌入式Linux核心課程和Study210開發板,開始跟著視頻進行嵌入式linux的系統學習,由于視頻錄的時間很早,在跟著視頻學習的程序中發現有些細節跟視頻里的的對不上(主要是因為我現在用的win10系統,拍視頻的時候應該還沒有win10吧),特此記錄一下學習程序,尤其是踩坑和跳坑的程序,
目錄
1. 主機通過開發板的串口訪問
2. 制作啟動SD卡
3. 使用fastboot工具燒錄系統
4. 變磚頭以后使用dnw通過usb刷機
1. 主機通過開發板的串口訪問
第一步當然是使用串口轉USB線連接開發板的UART2口和電腦啦,注意這里連板子的UART2,因為出廠刷的系統QT默認使用串口2輸出(之所以提這個是因為之后刷安卓2.3的時候是通過串口0輸出的,到時候要記得換串口),
第二步是安裝PL2303串口驅動(PL2303_Prolific_DriverInstaller_v1.9.0),這一步按系統提示一直下一步就行了,將電腦連板子的串口后,win10系統會提示安裝驅動,選擇驅動所在的路徑就可以,安裝好后,設備管理器會自動為其分配一個COM埠號,此時可選擇在高級設定里將埠號修改為為COM1,

接下來就可以使用串口監視軟體來監視開發板啦,我使用的是mobaxterm,但不管什么軟體,注意這點:串口設定中“流量控制”(flow control)一定要選“無”,

2. 制作啟動SD卡
由于inand中已經有bootloader了,出廠默認刷的QT鏡像是可以正常啟動的,為了讓系統從SD卡啟動,我們必須先破壞inand中已有的bootloader,具體做法是在Linux命令列使用dd命令來破壞inand的第一扇區,破壞好后會顯示SD checksum Error,
busybox dd if=/dev/zero of=/dev/mmcblk0 bs=512 seek=1 count=1 conv=sync
sync

接下來制作SD卡啟動盤,將SD卡插入電腦,在我的電腦里右鍵格式化SD卡,接著,以管理員身份運行x210_fusing_tool將uboot燒錄至SD卡(使用光碟A里linux下或android下提供的uboot.bin都可以,都是384K),
3. 使用fastboot工具燒錄系統
安裝fastboot驅動
fastboot工具的作用是幫我們把不同的系統燒到開發板上,燒錄前我們需要先安裝fastboot的驅動(x210_android_driver),具體做法如下:使用micro usb線將開發板連接至電腦;重啟開發板,在autoboot倒計時3秒期間按下鍵盤任意鍵進入uboot;鍵入fastboot后電腦會識別到新硬體并提示安裝驅動,

禁用強制驅動程式簽名
win10系統安裝這類驅動有個坑,就是驅動無數字簽名,在WIN10中是不安全的驅動,所以顯示哈希值不在范圍內不能安裝,朱老師在qq群里提供了解決辦法,即“禁用強制驅動程式簽名”,后面安裝dnw工具的驅動的時候也會提示同樣的錯誤,解決辦法也是一樣的,可以參考http://jingyan.baidu.com/article/624e74594dbc8d34e8ba5aa6.html
1.找到WIN10的設定,點擊“設定”
2.點擊最后一個“更新和安全”,然后點擊“恢復”
3.點擊“恢復”之后,在右邊點擊高級啟動下面的“重新啟動”,此時電腦會重新啟動,如果有其
他重要程式在跑,請慎重
4.重啟之后會出現幾個選項,點擊選項“疑難解答”
5.然后點擊“高級”,
啟動設定,重啟
6.這會重啟之后就跳出一個串列,其中有安全模式等選項,也包括這里我們關心的
“禁止強制驅動程式簽名”
7.選擇“禁用強制驅動程式簽名”,對應哪個數字就按那個數字,之后
電腦會重新啟動
8.重啟之后,驅動就可以成功安裝,若有提示點擊繼續安裝即可,
使用fastboot燒錄android4.0.4
fastboot的驅動安裝好以后就可以使用fastboot燒錄系統了,這里只記android4.0.4的燒錄程序,別的系統是類似的,
開發板這邊的操作是:重啟開發板,在autoboot倒數3秒前按任意鍵進入uboot,接著鍵入fastboot命令,會顯示如下磁區資訊,我們接下來就是要將鏡像燒錄進boot loader、kernel、system磁區,

主機這邊的操作如下:將fastboot.rar解壓到主機隨便哪里,我這里解壓到D:\Downloads\fastboot,注意到里面包含fastboot.exe等工具,接著為我們要燒制的系統創建子檔案夾(如android4.0.4)并將系統鏡像(光碟B中\android4.0.4\image\inand)拷貝到此子檔案夾中,

主機運行cmd,進入fastboot檔案夾,可以使用fastboot devices命令查看到fastboot連接到了開發板設備資訊SMDKC110-01,
fastboot devices
fastboot flash bootloader android4.0.4/uboot.bin
fastboot flash kernel android4.0.4/zImage-android
fastboot flash system android4.0.4/x210.img
fastboot reboot
接著使用fastboot flash XXX磁區 XXX路徑來燒錄剛拷貝到子檔案夾的鏡像檔案至相應磁區(如下圖顯示的不同色塊代表不同磁區),至此燒錄程序結束,接著使用fastboot reboot重啟開發板,


4. 變磚頭以后使用dnw通過usb刷機
到前面其實刷機程序已經結束了,但是我在有一次刷安卓2.3的時候輸入fastboot后提示無磁區,接著fdisk -c 0了以后再重啟開發板就感覺不妙,完了,uboot被我弄壞了,開發板成磚頭了,這里的具體表現是:無論開發板通過串口0還是串口2連接電腦,串口監視器這邊都沒有顯示,這時瞄到朱老師后續課程里還有dnw刷機的教程,就索性試了一下,
安裝dnw工具驅動
首先還是照例要先安裝dnw工具的驅動,光碟里提供的驅動最多到win-7,可我的作業系統是win10,不管了就拿他來試試吧,這里有坑,按照視頻里使用dseo13b這個工具弄數字簽名好像一直成功不了,所以我后面還是按照之前裝安卓驅動的方法來“禁用強制驅動程式簽名”,參考【dnw驅動數字簽名】解決Win10安裝USB驅動時,"INF不包含數字簽名資訊"_baidu_37973494的博客-CSDN博客
注意,之前雖然我們安裝安卓驅動的時候禁用過數字簽名,但是好像重啟后就失效了,所以得再禁用一遍,
接著正式開始安裝dnw的驅動,開發板的開關撥到OM5,使用usb連接開發板至主機,一直按住power鍵,此時,電腦會自動彈出安裝驅動,或者直接進設備管理器的選擇更新SECS5PC110 Test B/D.驅動,選擇win7-64驅動即可,之后選擇“始終安裝此驅動”,
下載x210_usb.bin和uboot.bin至開發板
驅動安裝好后,就可以使用dnw來下載uboot了,x210_usb.bin地址是0xd0020010,uboot.bin地址是0x23e00000,配置地址的操作為:configuration, options,燒錄的操作為:USB port , transmit, transmit,

注意,dnw燒錄程序這里又有坑,總結如下:
- dnw工具沒有明確的燒錄成功的提示,頂多就是電腦發出一個設備斷開又連上的聲音,但當dnw卡在downloading的進度潭訓面肯定是不對的,這點朱老師視頻里也提到了,這時重新啟動一下開發板或者插拔一下usb線就行,
- dnw刷機期間要一直按住開發板power鍵,并事先打開串口監視軟體,在autoboot倒數3秒期間及時按鍵進uboot,這是因為其實在dnw里燒uboot.bin的這幾秒鐘開發板就已經自己啟動了,
- 使用fdisk -c 0磁區后再使用fastboot燒錄,燒錄完畢記得開關撥回EMMC,
- 若燒錄時遇到這樣的錯誤,就把system磁區重新燒一下就行了,若還是不行,就把OM5撥回EMMC(從inand啟動),再使用fastboot重燒一下,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/300816.html
標籤:其他
