導航:首頁 > IDC知識 > 開發板主機

開發板主機

發布時間:2020-09-20 14:25:45

1、開發板ping通主機

如果你是在UBOOT的狀態下,你開發板PING主機的時候,會打開網路埠,而PING完之後它就會關閉。所以如果你開發板PING過去主機的同時,主機也PING開發板,那麼兩者都會互相通。

2、如何使開發板和主機共享文件

當用gdb在開發板上調試時,有時需要看源代碼,但源代碼太大,開發板容量有限時就沒法每次通過scp傳入開發板,或者不想每次用scp傳文件,這時就需要二者能共同訪問文件了。可以使用nfs, 方法如下:
1、在主機Ubuntu上需要有nfs服務: sudo apt-get install nfs-kernel-server
2、進入/etc/exports進修改,需要root許可權(注意如果第一步沒有做,可能會找不到該文件)。裡面添加:
/home/xx *(rw,sync,no_root_squash,no_subtree_check)
上面的/home/xx是你要共享的文件目錄,剩下的參數主要是對許可權的設置。
3、重啟nfs服務: sudo /etc/init.d/nfs-kernel-server restart
4、最後就可以進行mount了,在開發板上運行: mount -t nfs 主機IP:/home/xx /mnt -o nolock其中主機IP:/home/xx是你主機要共享的目錄, /mnt是開發板上要mount到的地方。
5、如果出現mount:
wrong fs type, bad option, bad superblock on xx, missing codepage or
helper
program,就是開發板上/sbin/下沒有mount.nfs文件,在開發板上安裝nfs-common即可。方法同Ubuntu:sudo
apt-get install nfs-common,如果找不到server,先在開發板上運行sudo apt-get
update再進行安裝,之後進入/mnt目錄就能看到共享的文件了。

3、進uboot,主機和虛擬機可以相互ping通,開發板也可以ping通主機和虛擬機,但是主機和虛擬機ping不通開發板

主機和虛擬機能相互ping通是因為主機與虛擬機都開啟了對應的進程(或線程,不清楚)等待ping命令的到來,而在uboot命令輸入狀態下,當使用ping命令時,實際上是uboot先根據你輸入的IP地址發送一個ICMP回送請求和回答報文到對應主機,然後再等待一段時間,如果在這段時間後主機沒有響應,則顯示ping不通,主機如果在這段時間內發送了回答報文則能ping通。可以通過追蹤程序的調用來查看該過程。
你使用主機或虛擬機ping開發板時,開發板正處於main_loop循環中(等待用戶輸入命令),根本沒有對應的程序或中斷(uboot中一般不使用中斷)來檢測主機的ping命令,當然ping不通。
只要開發板能ping通主機就可以使用網線下載linux內核映像或文件系統了。

4、開發板怎麼掛載到主機呢??

你嘗試一下重啟開發板等上一段時間再掛載nfs文件系統,前提是你的nfs server 已開啟,我這個就有這個毛病。還有就是你用虛擬機的話ip地址確定是你的虛擬機的ip?

5、arm開發板ping不通主機,但是主機能ping通開發板是什麼原因?

檢查主機是否允許ping,隨便找另一台機子一試便知

6、為什麼主機不能ping開發板,但是開發板能夠ping通主機,這是為什

如果你是在UBOOT的狀態下,你開發板PING主機的時候,會打開網路埠,而PING完之後它就會關閉。所以如果你開發板PING過去主機的同時,主機也PING開發板,那麼兩者都會互相通。 查看更多答案>>

希望採納

7、為什麼使用虛擬機後ARM開發板不能和主機連接?

這種情況要做起來很麻煩。因為你的虛擬機還是要使用你的PC的物理上的串口啊。這樣做起來是很困難的。
其實,根據我個人的經驗,初學者最好是用VMware+WXP下的超級終端的開發方式。
xp下的超級終端和minicom的功能差不多,但用起來更方便。

還有,我不熟悉AT91ARM9200,不知道你們的網口是否已經調好。最好是能用的,這樣超級終端或minicom就只是其控製作用,你的kernel和文件系統的燒寫,還有數據的交換更新都通過網口來,這樣的效率更高。

8、交叉編譯的主機和開發板系統可以不一樣嗎

(1)交叉編譯器

在主機上用來編譯其它類型機器上可執行代碼的編譯器就叫交叉編譯器,我們進行嵌入式linux的開發主機大部分都是X86,而我們的嵌入式系統的處理器有可能是ARM/MIPS等非X86處理器,這時候就必須使用ARM/MIPS的交叉編譯器才能編譯出在這些處理器上能夠執行的代碼。這里我們使用的是ARM最新的EABI編譯器。

交叉編譯器在編譯的時候,對於浮點運行會預設硬浮點運算FPA(float point architecture),而沒有FPA的CPU,比如三星的2440等,會使用FPE(float point emulation即軟浮點),這樣在速度上就會受到極大限制。使用EABI(embeded application binary interface)則可以對此改善處理。

(2)不修改MAKEFILE來建立編譯環境

將arm-2008q3.tar.bz2拷貝到ubuntu系統的某個目錄,解壓後。使用VI編輯/etc/bash.bashrc,在文件最後加入環境變數設置(註:加bin的含義是交叉編譯器工具目錄):

保存後,用source運行一次該文件,就可以了。

(3)gcc: error trying to exec 'cc1': execvp: No such file or directory 的解決

今天在編譯開發板環境時,明明設置好編譯器的環境變數了,編譯時就是會出現:gcc: error trying to exec 'cc1': execvp: No such file or directory 錯誤提示。後來發現一個方法可以解決,輸入:whereis gcc,就可以了發現好幾個gcc,包括/usr/bin/gcc,所以我就把PATH路徑設過去,就OK了。

(4)Clock skew detected. Your build may be incomplete

如果你裝了Windows Linux雙系統,系統時間很可能出問題,從而造成文件修改時間比系統時間晚,兩種辦法:
1,應該是你的PC的系統時鍾錯誤,在BIOS中修改正確。
2,使用touch命令將所有文件的時間戳修改為你系統的當前時間。解決方法:find ./-name "*" -exec touch {} \;

與開發板主機相關的知識