在看尚觀發布的嵌入式bootloader開發視頻,聽起來覺得挺好,都基本會,但手上面只有友善之臂TIny6410開發板linux 安裝,還好這個開發板上早已有移植好的u-boot,但是SOC和影片上所說的差不多,一個是2410,一個是6410.只是前者是基於ARM11,而後者是比較老的ARM9.
首先搭建開發環境,centos6.4x64版本,系統相對比較新
minicom安裝:yum-yinstallminicom
minicom設定:minicom-s除去硬體控制位,並設定碼率和資料傳輸模式,但是注意要設定裝置如:/dev/ttyS0(預設情況下是這個)
並儲存成預設值
如今在命令列下輸入minicom,步入uboot.此時就可以看見FriendlyARM移植成功後的uboot了。
此時,我們的PC機器和ARM開發板間數據傳輸還是不太便捷,因此我們可以使用tftp合同,在PC機端建立tftp伺服器,並通過網口來進行數據傳輸.
具體步驟如下:
安裝tftp伺服器:
yum-yinstaltftp-server
yum-yinstalltftp
yum-yinstallxinetd
編輯/etc/xinetd.d/tftp檔案如下:
servicetftp
socket_type=dgram
protocol=udp
wait=yes
user=root
server=/usr/sbin/in.tftpd
server_args=-s/tftpboot
disable=no
per_source=11
cps=1002
flags=IPv4
啟動tftpd服務linux移植6410過程,具體命令如下:sevicexinetdrestart:假如出現
stop和start說明啟動成功。
之後在根目錄下新建上一步中所指示的共享目錄/tftpboot,之後我們在該目錄下新建一個名為abc的文件,viabc內容如下:
0123,並保存。
之後在終端哪裡我們下載該文件,具體命令如下:
tftp50000000abc@傳輸abc檔案到顯存50000000處
注意:此過程可能會失敗,通常情況下是由於防火牆的緣由linux移植6410過程,解決方式是關掉SELinux和防火牆,輸入命令:
>setenforce0@關掉SELinux
>iptables-F@消除防火牆
完成後,使用指令md顯示,具體如圖1所示:
可以看出我們早已成功的將檔案傳送到顯存5000_0000處了,這兒須要注意的一點是tftp伺服器一定要搭建成功哦!配置時須要當心在乎!
下一步安裝arm-linux-gcc軟體,安裝方式:
解壓縮arm-linux-gcc軟體red hat linux下載,並切換到bin下運行arm-linux-gcc-v,查看prefix並將該資料夾聯通到該目標檔案下,之後export環境變數.
以上是嵌入式 bootloader 開發:從尚觀影片到友善之臂開發板的實踐的詳細內容。更多資訊請關注PHP中文網其他相關文章!