A40i T3 開發(fā)板功能測試 硬件平臺:飛凌嵌入式OKA40i-C/OKT3-C開發(fā)板, 基于國產芯片 A40i(工業(yè)級) T3(車規(guī)級)設計研發(fā)。 此章節(jié)主要說明A40i T3開發(fā)板外擴接口的使用方法。本章節(jié)測試所用到的測試程序在飛凌提供的Demo中已有集成,故不做文件來源說明,直接進行命令操作。所有命令均以#標識,請客戶使用前將#去除再進行輸入。 一、 WIFI測試RTL8723bu—USB WIFI、SDIO-WIFI 8189ES使用方法如下。 1、 板載WIFI的使用 如果開發(fā)板有板載的WIFI無線局域網卡,則焊接在評估板如圖所示位置: 步驟1:檢查開發(fā)板是否已經焊接該模塊,正確焊接如上圖。連接上天線。 步驟2:開發(fā)板上電,啟動Linux系統(tǒng)。手動加載模塊: #insmod /lib/modules/$(uname -r)/8723bu.ko 查看模塊是否加載: #lsmod 8723bu 1920908 0 - Live 0xbf19a000 步驟3:自動分配IP #wifi.sh -i 8723 -s ciscosbwifi -p abcdefghijklmn 其中-i:8189或者8723,-s:wifi ssid,-p:wifi password或者NONE
步驟4:ping ip或者域名,命令如下。 #ifconfig eth0 down #ping www.forlinx.com 步驟5:卸載已經加入內核的模塊。 #rmmod 8723bu 注意卸載模塊前,請將wpa_supplicant與udhcpc -i wlan0進程kill。否則會加載一些信息。 注:本小節(jié)中是一個WIFI連接路由的示例。由于網絡環(huán)境的不同,所以在您做本實驗時,請根據實際情況進行設置。 2、 SDIO-WIFI RTL8189的使用 步驟1:插入模塊,開發(fā)板上電。 步驟2:手動加載模塊 #insmod /lib/modules/$(uname -r)/8189es.ko 步驟3:自動分配IP #/usr/sbin/wifi.sh -i 8189 -s ciscosbwifi -p abcdefghijklmn 其中-i:8189或者8723,-s:wifi ssid,-p:wifi password或者NONE
步驟4:ping ip或者域名,命令如下。 #ifconfig eth0 down #ping www.forlinx.com 步驟5:卸載已經加入內核的模塊。 #rmmod 8189es 注意卸載模塊前,請將wpa_supplicant與udhcpc -i wlan0進程kill。否則會加載一些信息。 注:本小節(jié)中是一個WIFI連接路由的示例。由于網絡環(huán)境的不同,所以在您做本實驗時,請根據實際情況進行設置。 3、 熱點測試 WiFi熱點: #insmod /lib/modules/$(uname -r)/8723bu.ko #/usr/sbin/wifiap.sh 生成ssid為forlinx_a40i,密碼為12345678的AP節(jié)點,手機連接forlinx_a40i,可連接外網。 注意:有線網卡要連接一個有開啟dhcp服務的網絡路由器,并且可以訪問互聯(lián)網。 二、 SDHC/TF卡驅動測試開發(fā)板支持SD或TF卡熱插拔。插上SD或者TF卡后系統(tǒng)自動將其掛載到/mnt/sdcard/mmcblk1p1目錄下,移除時,將sd卡或TF卡卸載。 查看SD卡中的文件,命令如下: # ls -la /mnt/sdcard/mmcblk1p1/ total 5 drw-rw-rw- 2 root root 4096 Jan 1 00:00 . drwxrwxrwx 4 root root 1024 Jan 1 00:30 .. -rw-rw-rw- 1 root root 0 Jul 5 2019 sdcard.txt 往 SD 卡中寫入文件,命令如下,寫1到test.txt 文件中: # echo 1 > /mnt/sdcard/mmcblk1p1/test.txt # sync 讀取 SD 卡中test.txt 文件,命令如下: # cat /mnt/sdcard/mmcblk1p1/test.txt 1 會讀到剛才我們寫入的1。 注意:同時插入sd卡與tf卡時,只掛載第一個插入的卡,掛載另一個卡,可使用mount命令掛載。 三、 USB接口測試1、 USB Host接口存儲測試 這里用掛載U盤為例進行演示,目前U盤測試支持到32G,32G以上并未測試。U盤與開發(fā)板物理連接如圖: 同時終端會打印關于U盤的信息,由于存在很多種U盤,顯示的信息可能會有差別。 步驟1:連接USB 接口u盤到USB host接口,會自動掛載到/mnt/usb/sdx1目錄下。 步驟2:查看usb存儲設備 # ls -l /mnt/usb/ total 21 drwxrwxrwx 7 root root 16384 Jan 1 00:00 sda1 drwxr-xr-x 2 root root 1024 Jan 1 00:38 sda4 drwxrwxrwx 2 root root 4096 Jan 1 00:00 sdb1 # ls -la /mnt/usb/sdb1/ total 5 drwxrwxrwx 2 root root 4096 Jan 1 00:41 . drwxrwxrwx 5 root root 1024 Jan 1 00:38 .. -rwxrwxrwx 1 root root 0 Jul 5 2019 sdcard.txt 步驟3:往U盤中寫入文件 #echo 1 > /mnt/usb/sdb1/test.txt //寫1到test.txt 文件 #sync //將內容從內存同步到U盤中 步驟4:讀取U盤中內容 #cat /mnt/usb/sdb1/test.txt 1 會讀到剛才我們寫入的1。 2、 OTG轉Host測試 使用otg轉host線連接到otg口,插入u盤能讀取u盤內容。將U盤掛載到/mnt/usb/sdx1目錄下。操作同U盤操作。 3、 OTG默認成Host端口功能 修改/adb.sh #kill -9 $(pidof adb-service) #mkdir -p /system #ln -s /bin /system/bin cat /sys/bus/platform/devices/usbc0.2/usb_host #echo 0 > /sys/class/android_usb/android0/enable #echo 1f3a > /sys/class/android_usb/android0/idVendor #echo 1002 > /sys/class/android_usb/android0/idProduct #echo "mass_storage,adb" > /sys/class/android_usb/android0/functions #echo 1 > /sys/class/android_usb/android0/enable #. /qt5.9.sh #/bin/adb-service & 4、 USB轉4串口 插上usb轉串口到開發(fā)板的usb host端口 可選:生成和板子usb host絲印號相關的串口名字 # create_xr_usb_serial.sh 說明:usb轉4串口生成的名字默認是/dev/ttyXRUSB*; 四、 以太網驅動測試網絡相關配置聲明: 每個開發(fā)板的網絡使用環(huán)境未必相同,本節(jié)測試示例中,網絡環(huán)境如下。實際使用中,請按照實際網絡環(huán)境自行進行配置。 OKA40i有eth0 網卡。開機已設置默認eth0的IP地址為192.168.0.232。如果修改默認IP請修改/etc/init.d/auto_config_network。 下面以eth0為例進行命令說明。 1、手動配置eth0 01. 在Linux系統(tǒng)下,使用ifconfig命令可以顯示或配置網絡設備,其常用的組合命令格式如下: #ifconfig 網絡端口 IP地址 hw 02. 設置IP地址 # ifconfig eth0 192.168.1.120(將eth0設置IP為192.168.1.120) # ifconfig eth0 (查看當前網絡狀況) 03. 修改mac地址 i.先關閉網卡設備 #ifconfig eth0 down ii.修改MAC # ifconfig eth0 hw ether 36:C9:E3:F1:B8:05 iii.重新打開網卡 #ifconfig eth0 up 04. 設置子網掩碼 #ifconfig eth0 netmask 255.255.255.0 05. 設置廣播地址 #ifconfig eth0 broadcast 192.168.0.255 06. 添加/刪除默認網關 添加默認網關: #route add default gw 192.168.0.1 刪除默認網關: #route del default gw 192.168.0.1 07. 關閉開啟網卡 關閉eth0網卡 #ifconfig eth0 down 開啟eth0網卡 #ifconfig eth0 up 08. ethtool查看網絡信息 # ethtool eth0 Settings for eth0: Supported ports: [ TP MII ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Speed: 100Mb/s Duplex: Full Port: MII PHYAD: 1 Transceiver: external Auto-negotiation: on Link detected: yes 2、動態(tài)設置IP地址 如果您的開發(fā)板與路由器連接,且路由器支持DHCP自動IP地址分配可以在超級終端里面輸入命令: #udhcpc -i eth0 用來動態(tài)獲取IP地址,“-i” 參數用來指定網卡名稱,飛凌開發(fā)板有線網絡的網卡名稱為eth0。 /etc/resolv.conf文件中有dns服務器信息會被自動添加。 五、 以太網相關服務以太網相關服務測試之前,確保已經設置好IP。設置IP請參考以太網驅動測試部分。 1、 Telnet服務 OKA40i-C開發(fā)板已經啟動了telnet服務,設置好IP地址后就可以作為一臺telnet服務器了。 查看是否啟動可以輸入命令: #netstat -al 例如,開發(fā)板IP地址為192.168.0.232,在Windows的命令窗口下輸入telnet 192.168.0.232 ,用戶名輸入root,密碼為root(具體根據自己的設置)(開始->運行,輸入cmd回車,即可進入Windows的命令窗口) 之后就輸入Ctrl +C終止服務加載。 2、 sshd服務 OKA40i-C開發(fā)板在/etc/init.d/rcS 腳本文件中已經啟動了ssh服務,設置好IP地址后就可以作為一臺sshd sftp-server 服務器了。 測試前,設置root的密碼比如為123,同時修改sshd的配置文件/etc/ssh/sshd_config,允許root登錄。將#PermitRootLogin prohibit-password 修改為PermitRootLogin yes,保存退出之后,重啟,需要將開發(fā)板設置為當前UTC時間。并且用戶名和密碼不能寫成一樣。 查看是否啟動可以輸入命令: #netstat -al 例如,開發(fā)板IP地址為192.168.0.232,在Windows打開putty, 192.168.0.232,輸入用戶名root,密碼123,如下圖; 登錄后如下圖; sftp-server文件服務 開發(fā)板IP地址為192.168.0.232,在Windows打開WinScp, 192.168.0.232 ,用戶名輸入root,root,如下圖; 登錄成功后的界面如下圖 注意:出現(xiàn)登錄成功后界面之前需要等待一段時間; 3、 Web服務 我們在開發(fā)板上移植了一個webserver:boa; boa webserver是一個小巧高效的web服務器,可運行在Unix或Linux平臺,支持CGI,源代碼開放;是一個非常適合于嵌入式系統(tǒng)的單任務http服務器。 如果系統(tǒng)沒有默認IP,臨時使用ifconfig配置。 系統(tǒng)啟動時已經自動啟動了boa服務,在IE中輸入開發(fā)板的IP地址即可瀏覽開發(fā)板webserver中的網頁。下圖是在IE中瀏覽的截圖: 4、 VSFTP 開發(fā)板作為服務器 系統(tǒng)啟動時已經自動啟動了ftp服務,可在電腦上用ftp軟件訪問,用戶名root,密碼root(測試前,需先使用passwd命令設置密碼,這里設置為root); 下圖是在PC機上用ftp://192.168.0.232訪問ftp 的截圖: 開發(fā)板作為客戶端 假設ftp服務器的IP地址為192.168.0.72,采用ftp命令傳輸下載文件,可以使用如下命令。 ftpput -u root -p root 192.168.0.72 test.mp4 test.mp4使用此命令將開發(fā)板文件傳輸到ftp服務器。 ftpget -u root -p root 192.168.0.72 test.mp4 test.mp4 使用此命令將服務器端文件下載到開發(fā)板 六、 看門狗測試看門狗是嵌入式系統(tǒng)中經常用到的功能?撮T狗驅動指定系統(tǒng)最大為16s倒計時重啟。為了防止系統(tǒng)復位,可在計數的16s內向watchdog寫入清零命令,重新計數。 1.執(zhí)行10s復位命令: #/usr/bin/watchdog /dev/watchdog settimeout 10 & 10s后系統(tǒng)重啟。 2.周期喂狗 #/usr/bin/watchdog /dev/watchdog keepalive 10 & 一直循環(huán)喂狗,系統(tǒng)不重啟。10表示10s喂狗 原文鏈接:https://www.forlinx.com/article_view_576.html |