A40i T3開(kāi)發(fā)板外擴(kuò)接口的功能測(cè)試

原創(chuàng) 2020-12-08 08:35:00 T3 A40i

A40i T3 開(kāi)發(fā)板功能測(cè)試

硬件平臺(tái):飛凌嵌入式OKA40i-C/OKT3-C開(kāi)發(fā)板, 基于國(guó)產(chǎn)芯片 A40i(工業(yè)級(jí))  T3(車規(guī)級(jí))設(shè)計(jì)研發(fā)。

此章節(jié)主要說(shuō)明A40i T3開(kāi)發(fā)板外擴(kuò)接口的使用方法。本章節(jié)測(cè)試所用到的測(cè)試程序在飛凌提供的Demo中已有集成,故不做文件來(lái)源說(shuō)明,直接進(jìn)行命令操作。所有命令均以#標(biāo)識(shí),請(qǐng)客戶使用前將#去除再進(jìn)行輸入。

一、  WIFI測(cè)試

RTL8723bu—USB WIFI、SDIO-WIFI 8189ES使用方法如下。

1、  板載WIFI的使用

如果開(kāi)發(fā)板有板載的WIFI無(wú)線局域網(wǎng)卡,則焊接在評(píng)估板如圖所示位置:

 

 

步驟1:檢查開(kāi)發(fā)板是否已經(jīng)焊接該模塊,正確焊接如上圖。連接上天線。

步驟2:開(kāi)發(fā)板上電,啟動(dòng)Linux系統(tǒng)。手動(dòng)加載模塊:

#insmod /lib/modules/$(uname -r)/8723bu.ko

查看模塊是否加載:

#lsmod

8723bu 1920908 0 - Live 0xbf19a000

步驟3:自動(dòng)分配IP

#wifi.sh   -i 8723 -s ciscosbwifi -p abcdefghijklmn

其中-i:8189或者8723,-s:wifi ssid,-p:wifi password或者NONE

wifi 8723

ssid ciscosbwifi

pasw abcdefghijklmn

Successfully initialized wpa_supplicant

rfkill: Cannot open RFKILL control device

wlan0: Trying to associate with bc:67:1c:41:2e:3c (SSID='ciscosbwifi' freq=2437 MHz)

wlan0: Associated with bc:67:1c:41:2e:3c

wlan0: CTRL-EVENT-SUBNET-STATUS-UPDATE status=0

wlan0: WPA: Key negotiation completed with bc:67:1c:41:2e:3c [PTK=CCMP GTK=CCMP]

wlan0: CTRL-EVENT-CONNECTED - Connection to bc:67:1c:41:2e:3c completed [id=0 id_str=]

udhcpc: started, v1.25.1

udhcpc: sending discover

udhcpc: sending select for 192.168.1.131

udhcpc: lease of 192.168.1.131 obtained, lease time 86400

deleting routers

adding dns 222.222.202.202

adding dns 222.222.222.222

Finshed!

步驟4:ping ip或者域名,命令如下。

#ifconfig eth0 down

#ping  www.alphatocol.com

步驟5:卸載已經(jīng)加入內(nèi)核的模塊。

#rmmod 8723bu

注意卸載模塊前,請(qǐng)將wpa_supplicant與udhcpc -i wlan0進(jìn)程kill。否則會(huì)加載一些信息。

注:本小節(jié)中是一個(gè)WIFI連接路由的示例。由于網(wǎng)絡(luò)環(huán)境的不同,所以在您做本實(shí)驗(yàn)時(shí),請(qǐng)根據(jù)實(shí)際情況進(jìn)行設(shè)置。

2、  SDIO-WIFI RTL8189的使用

步驟1:插入模塊,開(kāi)發(fā)板上電。

步驟2:手動(dòng)加載模塊

#insmod /lib/modules/$(uname -r)/8189es.ko

步驟3:自動(dòng)分配IP

#/usr/sbin/wifi.sh  -i 8189 -s ciscosbwifi -p abcdefghijklmn

其中-i:8189或者8723,-s:wifi ssid,-p:wifi password或者NONE

[  540.748544] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready

udhcpc (v1.18.3) started

Sending discover...

[  542.214046] RTL871X: rtw_set_802_11_connect(wlan0)  fw_state=0x00000008

[  542.240264] RTL871X: start auth

[  542.260150] RTL871X: auth success, start assoc

[  542.280348] RTL871X: assoc success

[  542.284224] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready

[  542.294711] RTL871X: send eapol packet

[  542.310877] RTL871X: send eapol packet

[  542.315351] RTL871X: set pairwise key camid:4, addr:bc:67:1c:41:2e:3c, kid:0, type:AES

[  542.324851] RTL871X: set group key camid:5, addr:bc:67:1c:41:2e:3c, kid:1, type:AES

Sending discover...

Sending select for 192.168.1.127...

Lease of 192.168.1.127 obtained, lease time 86400

deleting routers

route: SIOCDELRT: No such process

adding dns 222.222.202.202

adding dns 222.222.222.222

步驟4:ping ip或者域名,命令如下。

#ifconfig eth0 down

#ping  www.alphatocol.com

步驟5:卸載已經(jīng)加入內(nèi)核的模塊。

#rmmod 8189es

注意卸載模塊前,請(qǐng)將wpa_supplicant與udhcpc -i wlan0進(jìn)程kill。否則會(huì)加載一些信息。

注:本小節(jié)中是一個(gè)WIFI連接路由的示例。由于網(wǎng)絡(luò)環(huán)境的不同,所以在您做本實(shí)驗(yàn)時(shí),請(qǐng)根據(jù)實(shí)際情況進(jìn)行設(shè)置。

3、  熱點(diǎn)測(cè)試

WiFi熱點(diǎn):

#insmod /lib/modules/$(uname -r)/8723bu.ko

#/usr/sbin/wifiap.sh

生成ssid為forlinx_a40i,密碼為12345678的AP節(jié)點(diǎn),手機(jī)連接forlinx_a40i,可連接外網(wǎng)。

注意:有線網(wǎng)卡要連接一個(gè)有開(kāi)啟dhcp服務(wù)的網(wǎng)絡(luò)路由器,并且可以訪問(wèn)互聯(lián)網(wǎng)。

二、  SDHC/TF卡驅(qū)動(dòng)測(cè)試

開(kāi)發(fā)板支持SD或TF卡熱插拔。插上SD或者TF卡后系統(tǒng)自動(dòng)將其掛載到/mnt/sdcard/mmcblk1p1目錄下,移除時(shí),將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

會(huì)讀到剛才我們寫入的1。

注意:同時(shí)插入sd卡與tf卡時(shí),只掛載第一個(gè)插入的卡,掛載另一個(gè)卡,可使用mount命令掛載。

三、  USB接口測(cè)試

1、  USB Host接口存儲(chǔ)測(cè)試

這里用掛載U盤為例進(jìn)行演示,目前U盤測(cè)試支持到32G,32G以上并未測(cè)試。U盤與開(kāi)發(fā)板物理連接如圖:

 

同時(shí)終端會(huì)打印關(guān)于U盤的信息,由于存在很多種U盤,顯示的信息可能會(huì)有差別。

步驟1:連接USB 接口u盤到USB host接口,會(huì)自動(dòng)掛載到/mnt/usb/sdx1目錄下。

步驟2:查看usb存儲(chǔ)設(shè)備

# 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   //將內(nèi)容從內(nèi)存同步到U盤中

步驟4:讀取U盤中內(nèi)容

#cat /mnt/usb/sdb1/test.txt

1

會(huì)讀到剛才我們寫入的1。

2、  OTG轉(zhuǎn)Host測(cè)試

使用otg轉(zhuǎn)host線連接到otg口,插入u盤能讀取u盤內(nèi)容。將U盤掛載到/mnt/usb/sdx1目錄下。操作同U盤操作。

 

3、  OTG默認(rèn)成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轉(zhuǎn)4串口

插上usb轉(zhuǎn)串口到開(kāi)發(fā)板的usb host端口

可選:生成和板子usb host絲印號(hào)相關(guān)的串口名字

#  create_xr_usb_serial.sh

說(shuō)明:usb轉(zhuǎn)4串口生成的名字默認(rèn)是/dev/ttyXRUSB*;

 

四、  以太網(wǎng)驅(qū)動(dòng)測(cè)試

網(wǎng)絡(luò)相關(guān)配置聲明:

每個(gè)開(kāi)發(fā)板的網(wǎng)絡(luò)使用環(huán)境未必相同,本節(jié)測(cè)試示例中,網(wǎng)絡(luò)環(huán)境如下。實(shí)際使用中,請(qǐng)按照實(shí)際網(wǎng)絡(luò)環(huán)境自行進(jìn)行配置。

OKA40i有eth0 網(wǎng)卡。開(kāi)機(jī)已設(shè)置默認(rèn)eth0的IP地址為192.168.0.232。如果修改默認(rèn)IP請(qǐng)修改/etc/init.d/auto_config_network。

下面以eth0為例進(jìn)行命令說(shuō)明。

1、手動(dòng)配置eth0

01. 在Linux系統(tǒng)下,使用ifconfig命令可以顯示或配置網(wǎng)絡(luò)設(shè)備,其常用的組合命令格式如下:

#ifconfig 網(wǎng)絡(luò)端口 IP地址 hw<HW> ether MAC地址 netmask 掩碼地址 broadcast 廣播地址 [up|down]

02. 設(shè)置IP地址

# ifconfig  eth0  192.168.1.120(將eth0設(shè)置IP為192.168.1.120)

# ifconfig  eth0             (查看當(dāng)前網(wǎng)絡(luò)狀況)

03. 修改mac地址

i.先關(guān)閉網(wǎng)卡設(shè)備

#ifconfig eth0 down

ii.修改MAC

# ifconfig eth0 hw ether 36:C9:E3:F1:B8:05  

iii.重新打開(kāi)網(wǎng)卡

#ifconfig eth0 up

04. 設(shè)置子網(wǎng)掩碼

#ifconfig eth0 netmask 255.255.255.0

05. 設(shè)置廣播地址

#ifconfig eth0 broadcast 192.168.0.255

06. 添加/刪除默認(rèn)網(wǎng)關(guān)

添加默認(rèn)網(wǎng)關(guān):

#route add default gw 192.168.0.1

刪除默認(rèn)網(wǎng)關(guān):

#route del default gw 192.168.0.1

07. 關(guān)閉開(kāi)啟網(wǎng)卡

關(guān)閉eth0網(wǎng)卡

#ifconfig eth0 down

開(kāi)啟eth0網(wǎng)卡

#ifconfig eth0 up

08. ethtool查看網(wǎng)絡(luò)信息

# 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、動(dòng)態(tài)設(shè)置IP地址

如果您的開(kāi)發(fā)板與路由器連接,且路由器支持DHCP自動(dòng)IP地址分配可以在超級(jí)終端里面輸入命令:

#udhcpc  -i  eth0

用來(lái)動(dòng)態(tài)獲取IP地址,“-i” 參數(shù)用來(lái)指定網(wǎng)卡名稱,飛凌開(kāi)發(fā)板有線網(wǎng)絡(luò)的網(wǎng)卡名稱為eth0。

/etc/resolv.conf文件中有dns服務(wù)器信息會(huì)被自動(dòng)添加。

五、 以太網(wǎng)相關(guān)服務(wù)

以太網(wǎng)相關(guān)服務(wù)測(cè)試之前,確保已經(jīng)設(shè)置好IP。設(shè)置IP請(qǐng)參考以太網(wǎng)驅(qū)動(dòng)測(cè)試部分。

1、 Telnet服務(wù)

OKA40i-C開(kāi)發(fā)板已經(jīng)啟動(dòng)了telnet服務(wù),設(shè)置好IP地址后就可以作為一臺(tái)telnet服務(wù)器了。

查看是否啟動(dòng)可以輸入命令:

#netstat -al

例如,開(kāi)發(fā)板IP地址為192.168.0.232,在Windows的命令窗口下輸入telnet 192.168.0.232 ,用戶名輸入root,密碼為root(具體根據(jù)自己的設(shè)置)(開(kāi)始->運(yùn)行,輸入cmd回車,即可進(jìn)入Windows的命令窗口)

之后就輸入Ctrl +C終止服務(wù)加載。

 

2、 sshd服務(wù)

OKA40i-C開(kāi)發(fā)板在/etc/init.d/rcS 腳本文件中已經(jīng)啟動(dòng)了ssh服務(wù),設(shè)置好IP地址后就可以作為一臺(tái)sshd  sftp-server 服務(wù)器了。

測(cè)試前,設(shè)置root的密碼比如為123,同時(shí)修改sshd的配置文件/etc/ssh/sshd_config,允許root登錄。將#PermitRootLogin prohibit-password 修改為PermitRootLogin yes,保存退出之后,重啟,需要將開(kāi)發(fā)板設(shè)置為當(dāng)前UTC時(shí)間。并且用戶名和密碼不能寫成一樣。

查看是否啟動(dòng)可以輸入命令:

#netstat -al

例如,開(kāi)發(fā)板IP地址為192.168.0.232,在Windows打開(kāi)putty, 192.168.0.232,輸入用戶名root,密碼123,如下圖;

 

登錄后如下圖;

 

 sftp-server文件服務(wù)

開(kāi)發(fā)板IP地址為192.168.0.232,在Windows打開(kāi)WinScp, 192.168.0.232 ,用戶名輸入root,root,如下圖;

 

登錄成功后的界面如下圖

 

注意:出現(xiàn)登錄成功后界面之前需要等待一段時(shí)間;

3、  Web服務(wù)

我們?cè)陂_(kāi)發(fā)板上移植了一個(gè)webserver:boa;

boa webserver是一個(gè)小巧高效的web服務(wù)器,可運(yùn)行在Unix或Linux平臺(tái),支持CGI,源代碼開(kāi)放;是一個(gè)非常適合于嵌入式系統(tǒng)的單任務(wù)http服務(wù)器。

如果系統(tǒng)沒(méi)有默認(rèn)IP,臨時(shí)使用ifconfig配置。

系統(tǒng)啟動(dòng)時(shí)已經(jīng)自動(dòng)啟動(dòng)了boa服務(wù),在IE中輸入開(kāi)發(fā)板的IP地址即可瀏覽開(kāi)發(fā)板webserver中的網(wǎng)頁(yè)。下圖是在IE中瀏覽的截圖:

 

4、 VSFTP

開(kāi)發(fā)板作為服務(wù)器

系統(tǒng)啟動(dòng)時(shí)已經(jīng)自動(dòng)啟動(dòng)了ftp服務(wù),可在電腦上用ftp軟件訪問(wèn),用戶名root,密碼root(測(cè)試前,需先使用passwd命令設(shè)置密碼,這里設(shè)置為root);

下圖是在PC機(jī)上用ftp://192.168.0.232訪問(wèn)ftp 的截圖:

 

 

開(kāi)發(fā)板作為客戶端

假設(shè)ftp服務(wù)器的IP地址為192.168.0.72,采用ftp命令傳輸下載文件,可以使用如下命令。

ftpput -u root -p root 192.168.0.72  test.mp4  test.mp4使用此命令將開(kāi)發(fā)板文件傳輸?shù)絝tp服務(wù)器。

ftpget -u root -p root 192.168.0.72  test.mp4  test.mp4 使用此命令將服務(wù)器端文件下載到開(kāi)發(fā)板

 

六、  看門狗測(cè)試

看門狗是嵌入式系統(tǒng)中經(jīng)常用到的功能??撮T狗驅(qū)動(dòng)指定系統(tǒng)最大為16s倒計(jì)時(shí)重啟。為了防止系統(tǒng)復(fù)位,可在計(jì)數(shù)的16s內(nèi)向watchdog寫入清零命令,重新計(jì)數(shù)。

1.執(zhí)行10s復(fù)位命令:

#/usr/bin/watchdog  /dev/watchdog settimeout 10 &

10s后系統(tǒng)重啟。

2.周期喂狗

#/usr/bin/watchdog  /dev/watchdog keepalive 10 &

一直循環(huán)喂狗,系統(tǒng)不重啟。10表示10s喂狗

七、  放/錄音測(cè)試

用戶可以使用文件系統(tǒng)內(nèi)帶的ALSA音頻錄制、播放、配置工具進(jìn)行測(cè)試。

1.耳機(jī)放音測(cè)試

如果耳機(jī)與喇叭同時(shí)打開(kāi)時(shí),默認(rèn)從喇叭輸出。需拔出喇叭。

#aplay -Dhw:0,0  /root/wo.wav                 播放音頻文件

串口信息:

Playing WAVE '/usr/bin/Rear_Center.wav' : Signed 16 bit Little Endian, Rate 22050 Hz, Stereo 

1. speaker放音測(cè)試

#amixer cset numid=15,iface=MIXER,name='Phone Out Mixer LOMIX Switch' on

#amixer cset numid=16,iface=MIXER,name='Phone Out Mixer ROMIX Switch' on

#amixer cset numid=48,iface=MIXER,name='Phoneout Speaker Switch' on

#amixer cset numid=2,iface=MIXER,name='digital volume' 50  /*設(shè)置音量*/

播放音頻文件:

#aplay -Dhw:0,0 /root/wo.wav               播放音頻文件

串口信息:

Playing WAVE '/usr/bin/Rear_Center.wav' : Signed 16 bit Little Endian, Rate 22050 Hz, Stereo 

2. 錄音測(cè)試

# killall -9 Launcher

# killall -9 MediaUI

# killall -9 CameraUI

#arecord -Dhw:0,0 -r 44100 -f S16_LE -d 10 record.wav       錄音

串口信息:

Recording WAVE 'record.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo

播放錄音

#aplay -Dhw:0,0 record.wav                           播放錄音

串口信息:

Playing WAVE 'record.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo

八、  攝像頭測(cè)試

1、 USB攝像頭測(cè)試

一般USB攝像頭插入之后,自動(dòng)加載驅(qū)動(dòng)。

01. 插入U(xiǎn)SB攝像頭,在調(diào)試串口輸入命令查看USB狀態(tài)。

# lsusb

串口信息:

Bus 001 Device 004: ID 0909:0824

查看USB攝像頭的ID信息。

02. 輸入命令查看USB攝像頭的設(shè)備節(jié)點(diǎn),可見(jiàn)設(shè)備節(jié)點(diǎn)video0

# ls /dev/video*

串口信息:

/dev/video    /dev/video0                 其中/dev/video0為剛才插入的usb設(shè)備。

03. 另外還可以采用uvccamera測(cè)試程序,預(yù)覽圖像:

    注意:uvccamera預(yù)覽不能先使用自帶qt應(yīng)用測(cè)試CameraUI測(cè)試,如果測(cè)試后必須先重啟。

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個(gè)進(jìn)程kill。

#kill -9 1312 1313 1314

#fbinit 0

#fbinit 1

#fbinit 2

#uvccamera

devpth: /dev/video0

   width: 800

  height: 600

position: (0, 0)

   frame: (800, 600)

  format: 69

[ION] map success: base 0xb6d14000, physical 59200000

00000001 00000001

00000001 00000001

 

04. 采用自帶Qt應(yīng)用測(cè)試CameraUI

測(cè)試前,插入SD或者TF卡,開(kāi)機(jī)自啟動(dòng)之后,默認(rèn)啟動(dòng)Launcher,MediaUI,CameraUI。采用CameraUI測(cè)試。點(diǎn)擊下面圖標(biāo): 點(diǎn)擊 選擇節(jié)點(diǎn)為video0,確定,打開(kāi)預(yù)覽,可查看usb攝像頭畫面。

2 、CMOS-OV5640測(cè)試

cmos ov5640還可以使用cameratest預(yù)覽

注意:使用uvccamera預(yù)覽不能先使用自帶qt應(yīng)用測(cè)試CameraUI測(cè)試,如果測(cè)試后必須先重啟。

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個(gè)進(jìn)程kill。

#kill -9 1312 1313 1314

#fbinit 0

#fbinit 1

#fbinit 2

# cameratest  -d /dev/video1

其中video1是對(duì)應(yīng)的節(jié)點(diǎn)。

devpth: /dev/video1

width: 640

height: 480

position: (0, 0)

frame: (640, 480)

format: 76

fps: 30

dragonboard(debug): the window: x: 0,y: 0,width: 640,height: 480

dragonboard(debug): the output type: 0

OKA40i平臺(tái)支持OV5640預(yù)覽。采用自帶qt應(yīng)用測(cè)試CameraUI

測(cè)試前,插入SD或者TF卡,開(kāi)機(jī)自啟動(dòng)之后,默認(rèn)啟動(dòng)Launcher,MediaUI,CameraUI。采用CameraUI測(cè)試。點(diǎn)擊下面圖標(biāo): 點(diǎn)擊 選擇節(jié)點(diǎn)為video1(video1為ov5640產(chǎn)生的節(jié)點(diǎn),具體根據(jù)實(shí)際選擇),確定,打開(kāi)預(yù)覽,可查看ov5640的攝像頭預(yù)覽畫面。

3、  模擬攝像頭測(cè)試

飛凌自制模擬攝像頭模塊如下圖:

 

video4-7為tvin產(chǎn)生的節(jié)點(diǎn),左上角對(duì)應(yīng)video7,左下角對(duì)應(yīng)video6,右下角對(duì)應(yīng)video5,右上角對(duì)應(yīng)video4,根據(jù)實(shí)際情況選擇 。

01. 采用自帶qt應(yīng)用測(cè)試CameraUI

測(cè)試前,插入SD或者TF卡,開(kāi)機(jī)自啟動(dòng)之后,默認(rèn)啟動(dòng)Launcher,MediaUI,CameraUI。采用 CameraUI測(cè)試。點(diǎn)擊下面圖標(biāo): 點(diǎn)擊 選擇節(jié)點(diǎn)為video4,確定,打開(kāi)預(yù)覽,可查看tvin的攝像頭預(yù)覽畫面。其中CameraUI支持PAL格式。

02.  還可以采用sdktest進(jìn)行測(cè)試。

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個(gè)進(jìn)程kill。

#kill -9 1312 1313 1314

#fbinit 0

#fbinit 1

#fbinit 2

# /sdktest 1 4可以采用PAL或者NTSC格式均可以。

03. 模擬攝像頭還可以使用tvdcamtester進(jìn)行測(cè)試,此方式支持PAL方式。

#  tvincamera -d /dev/video7

devpth: /dev/video7

  width: 720

  height: 576

  position: (0, 0)

  frame: (640, 480)

  format: 77

dragonboard(debug): v40 tvin test v1 version 2016.1.20

dragonboard(debug): the output type: 0

dragonboard(debug): screen width: 1024, height: 600

dragonboard(debug): inp.index: 0

dragonboard(debug): *********image source width = 720, height = 576********

九、  RTC時(shí)鐘驅(qū)動(dòng)測(cè)試

RTC測(cè)試,主要通過(guò)使用date和hwclock工具設(shè)置查看軟、硬件時(shí)間,測(cè)試當(dāng)操作系統(tǒng)重啟的時(shí)候,軟件時(shí)鐘讀取RTC時(shí)鐘是否同步(注意:確保板子上已經(jīng)安裝了紐扣電池)。

設(shè)置時(shí)間命令幫助如下:

# date -help

串口信息:

Usage: date [OPTIONS] [+FMT] [TIME]

Display time (using +FMT), or set time

        [-s,--set] TIME Set time to TIME

        -u,--utc        Work in UTC (don't convert to local time)

        -R,--rfc-2822   Output RFC-2822 compliant date string

        -I[SPEC]        Output ISO-8601 compliant date string

                        SPEC='date' (default) for date only,

                        'hours', 'minutes', or 'seconds' for date and

                        time to the indicated precision

        -r,--reference FILE     Display last modification time of FILE

        -d,--date TIME  Display TIME, not 'now'

        -D FMT          Use FMT for -d TIME conversion


Recognized TIME formats:

        hh:mm[:ss]

        [YYYY.]MM.DD-hh:mm[:ss]

        YYYY-MM-DD hh:mm[:ss]

        [[[[[YY]YY]MM]DD]hh]mm[.ss]

        'date TIME' form accepts MMDDhhmm[[YY]YY][.ss] instead

設(shè)置時(shí)間如下命令

#date -s 2015.05.29-09:47:13

串口信息:

Fri May 29 09:47:13 UTC 2015

說(shuō)明:date設(shè)置的格式:MMDDhhmm[[YY]YY][.ss], MM是月份,DD是日期,hh是小時(shí),mm是分鐘, 年份可以寫2位的YY或4位YYYY,秒可以用.ss表示。

hwclock —查看下硬件時(shí)間

#hwclock –help

串口信息:

Usage: hwclock [-r|--show] [-s|--hctosys] [-w|--systohc] [-t|--systz] [-l|--localtime] [-u|--utc] [-f|--rtc FILE]

Query and set hardware clock (RTC)

        -r      Show hardware clock time

        -s      Set system time from hardware clock

        -w      Set hardware clock from system time

        -t      Set in-kernel timezone, correct system time

                if hardware clock is in local time

        -u      Assume hardware clock is kept in UTC

        -l      Assume hardware clock is kept in local time

        -f      FILE Use specified device (e.g. /dev/rtc2)


# hwclock -w

hwclock -w —將系統(tǒng)時(shí)間設(shè)置到時(shí)鐘芯片里面。如果沒(méi)有這步,下次啟動(dòng)時(shí),系統(tǒng)時(shí)間是不會(huì)更新的。

斷電重啟

#date

查看時(shí)間是否保存。

 

十、  4G模塊測(cè)試

注:4G模塊是選配模塊,如有需要,請(qǐng)聯(lián)系飛凌銷售。

準(zhǔn)備一張移動(dòng)4G SIM卡,4G EC20模塊一個(gè),將SIM卡插入4G模塊卡槽中固定好,將天線接到主ipex天線座,開(kāi)機(jī)上電。

1、 查看節(jié)點(diǎn)是否存在:

[root@sun8i ~]# ls -la /dev/qcqmi0

存在qcqmi0節(jié)點(diǎn),且識(shí)別usb0節(jié)點(diǎn),則4g模塊正確識(shí)別并加載。

2、 撥號(hào):

#/usr/bin/quectel-CM &

[01-01_00:33:08:257] WCDMA<E_QConnectManager_Linux&Android_V1.1.34

[01-01_00:33:08:258] quectel-CM profile[1] = (null)/(null)/(null)/0, pincode = (null)

[01-01_00:33:08:263] Find /sys/bus/usb/devices/1-1.3 idVendor=2c7c idProduct=0125

[01-01_00:33:08:263] Find /sys/bus/usb/devices/1-1.3:1.4/net/usb0

[01-01_00:33:08:263] Find usbnet_adapter = usb0

[01-01_00:33:08:264] Find /sys/bus/usb/devices/1-1.3:1.4/GobiQMI/qcqmi0

[01-01_00:33:08:264] Find qmichannel = /dev/qcqmi0

[01-01_00:33:08:288] Get clientWDS = 7

[01-01_00:33:08:320] Get clientDMS = 8

[01-01_00:33:08:351] Get clientNAS = 9

[01-01_00:33:08:385] Get clientUIM = 10

[01-01_00:33:08:416] Get clientWDA = 11

[01-01_00:33:08:448] requestBaseBandVersion EC20CEHCR06A03M1G

[01-01_00:33:08:545] requestGetSIMStatus SIMStatus: SIM_READY

[01-01_00:33:08:576] requestGetProfile[1] ctnet///0

[01-01_00:33:08:608] requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE

[01-01_00:33:08:640] requestQueryDataCall IPv4ConnectionStatus: DISCONNECTED

[01-01_00:33:08:704] requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE

[01-01_00:33:08:736] requestSetupDataCall WdsConnectionIPv4Handle: 0x86ad3a90

[01-01_00:33:08:832] requestQueryDataCall IPv4ConnectionStatus: CONNECTED

[01-01_00:33:08:865] ifconfig usb0 up

[01-01_00:33:08:884] busybox udhcpc -f -n -q -t 5 -i usb0

[01-01_00:33:08:898] udhcpc (v1.18.3) started

[01-01_00:33:08:970] Sending discover...

[01-01_00:33:09:071] Sending select for 10.51.194.11...

[01-01_00:33:09:190] Lease of 10.51.194.11 obtained, lease time 7200

[01-01_00:33:09:210] deleting routers

route: SIOCDELRT: No such process

[01-01_00:33:09:225] adding dns 222.222.222.222

[01-01_00:33:09:226] adding dns 222.222.202.202

3、 測(cè)試網(wǎng)絡(luò)通斷

輸入指令:

# ifconfig eth0 down

#ping  -c 3 www.baidu.com

調(diào)試串口輸出如下信息:

ping www.baidu.com  -c 3

PING www.baidu.com (220.181.38.149): 56 data bytes

64 bytes from 220.181.38.149: seq=0 ttl=51 time=44.181 ms

64 bytes from 220.181.38.149: seq=1 ttl=51 time=58.372 ms

64 bytes from 220.181.38.149: seq=2 ttl=51 time=66.671 ms

 

--- www.baidu.com ping statistics ---

3 packets transmitted, 3 packets received, 0% packet loss

round-trip min/avg/max = 44.181/56.408/66.671 ms

4、4G熱點(diǎn):

# /usr/bin/quectel-CM  &

#echo 1 > /proc/sys/net/ipv4/ip_forward

#iptables -t nat -A POSTROUTING -o usb0 -j MASQUERADE

#insmod /lib/modules/$(uname -r)/8723bu.ko

#ifconfig wlan0 192.168.18.1

#udhcpd -f /etc/udhcpd.conf &

#/usr/sbin/hostapd -d /etc/hostapd.conf &

生成ssid為forlinx_a40i,密碼為12345678的AP節(jié)點(diǎn),手機(jī)連接forlinx_a40i,可連接外網(wǎng)。

十一、  UART串口測(cè)試

1.  OKA40I-C開(kāi)發(fā)板設(shè)置6個(gè)UART口,在開(kāi)發(fā)板上分別為DEGUG(RS232)、UART2(TTL)、UART3(TTL)、UART4(TTL)、UART5(RS485)、UART7(TTL),其中UART0作為Debug使用,與板載232接口功能一樣。UART2、 UART3作為五線串口使用。UART4、UART7用作普通串口引出。UART5用作RS485。

2.把飛凌的TTL轉(zhuǎn)RS232模塊接到開(kāi)發(fā)板UART2(ttyS2)或者UART3(ttyS3)上,串口線連接到RS232設(shè)備,連接好硬件后開(kāi)發(fā)板上電。

3.以UART3為例,終端中輸入如下命令,tty_test啟動(dòng)后會(huì)不斷的向外發(fā)送“abcdefg”。將收發(fā)短接進(jìn)行測(cè)試。UART2口類似,修改為對(duì)應(yīng)設(shè)備號(hào)即可。

# uart  /dev/ttyS3  9600


Welcome to TTYtest! Press Ctrl + 'c' to stop.


/dev/ttyS3,creat thread 3068421232 sucess

/dev/ttyS3,creat thread 3060032624 sucess

sendTotal=    9 num =    1 send = abcdefgh

recvTotal=   8 num =  1 recv = abcdefgh

hex:0x61 0x62 0x63 0x64 0x65 0x66 0x67 0x68

sendTotal=   18 num =    2 send = abcdefgh

recvTotal=  16 num =  2 recv = abcdefgh

hex:0x61 0x62 0x63 0x64 0x65 0x66 0x67 0x68

sendTotal=   27 num =    3 send = abcdefgh

recvTotal=  24 num =  3 recv = abcdefgh

hex:0x61 0x62 0x63 0x64 0x65 0x66 0x67 0x68


/dev/ttyS3,Send: 3 ,Receive: 3

十二、  RS485測(cè)試

默認(rèn)UART5用作RS485功能,對(duì)應(yīng)節(jié)點(diǎn)為/dev/ttyS5。采用RS485轉(zhuǎn)232模塊,與電腦相連。

終端中輸入如下命令,tty_test啟動(dòng)后會(huì)不斷的向外發(fā)送“abcdefg”。

#uart  /dev/ttyS5  9600

電腦端串口助手(在用戶資料\工具\(yùn)串口助手中),發(fā)送abcdefg后,接收到RS485發(fā)送過(guò)來(lái)的abcdefg。

 

十三、  數(shù)據(jù)庫(kù)測(cè)試

打開(kāi)數(shù)據(jù)庫(kù),輸入sqlite3,如下:

#sqlite3

SQLite version 3.15.0 2016-10-14 10:20:30

Enter ".help" for usage hints.

Connected to a transient in-memory database.

Use ".open FILENAME" to reopen on a persistent database.

sqlite> create table tbl1 (one varchar(10), two smallint); //創(chuàng)建數(shù)據(jù)庫(kù)tbl1

sqlite> insert into tbl1 values('hello!',10);//數(shù)據(jù)庫(kù)中插入hello!|10

sqlite> insert into tbl1 values('goodbye', 20);//數(shù)據(jù)庫(kù)中插入goodbye|20

sqlite> select * from tbl1; //讀取數(shù)據(jù)庫(kù)tbl1中所有內(nèi)容如下

hello!|10

goodbye|20

sqlite> .quit //退出

十四、  SPI測(cè)試

默認(rèn)支持1路SPI片選,分別對(duì)應(yīng)節(jié)點(diǎn)為/dev/spidev2.0。

短接MOSI與MISO,對(duì)應(yīng)SPI串口的8,10引腳

# /usr/bin/spi  -D /dev/spidev2.0

spi mode: 0

bits per word: 8

max speed: 500000 Hz (500 KHz)


FF FF FF FF FF FF

40 00 00 00 00 95

FF FF FF FF FF FF

FF FF FF FF FF FF

FF FF FF FF FF FF

DE AD BE EF BA AD

F0 0D

十五、  按鍵測(cè)試

# keytest

Input driver version is 1.0.1

Input device ID: bus 0x19 vendor 0x1 product 0x1 version 0x100

Input device name: "sunxi-keyboard"

Supported events:

    Event type 0 (Sync)

    Event type 1 (Key)

        Event code 28 (K5)

        Event code 102 (Home)

        Event code 114 (K1)

        Event code 115 (VolumeUp)

        Event code 139 (K2)

Key, K5(102, 01)//K5按下

Key, K5(102, 00)//K5抬起

 

Key, K2(28, 01)//K2按下

Key, K2(28, 00) //K2抬起

 

Key, K1(114, 01)  //K1按下

Key, K1(114, 00)  //K1抬起

十六、  顯示測(cè)試

Lcd顯示目前支持飛凌并行24bit 1024x600,飛凌lvds接口1280x800顯示電容觸摸一體屏,支持hdmi1080p@60Hz,Tvout顯示輸出。

1、背光測(cè)試

查看觸摸驅(qū)動(dòng)是否存在,如果不存在的話就加入驅(qū)動(dòng)模塊到系統(tǒng)

# lsmod

mali 278345 0 - Live 0xbf010000 (O)

gt9xxnew_ts 44460 0 - Live 0xbf000000

1.導(dǎo)出qt和tslib環(huán)境變量

# source    /qt5.9.sh

2. 背光調(diào)節(jié)

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個(gè)進(jìn)程kill。

# kill -9 1312 1313 1314

#fbinit 0

#fbinit 1

#fbinit 2

# backlight_gui

滑動(dòng)進(jìn)度條,調(diào)節(jié)背光亮滅。

相關(guān)產(chǎn)品 >

  • FETA40i-C核心板

    Allwinner A40i是全志開(kāi)發(fā)的一款工業(yè)級(jí)處理器,A40i作為全國(guó)產(chǎn)工業(yè)級(jí)芯片中的佼佼者,采用更低功耗的4核ARM Cortex-A7架構(gòu),工作溫度-40-85℃,是一款高性能低功耗超高性能CPU主芯片。飛凌嵌入式深度研究全志A40i芯片參數(shù)、原理圖、datasheet規(guī)格書推出了以FETA40i核心板為主的一系列全國(guó)產(chǎn)工業(yè)級(jí)嵌入式計(jì)算機(jī)板卡,并提供了用于評(píng)估的A40i工控板、 A40i開(kāi)發(fā)板。 了解詳情
    FETA40i-C核心板
  • OKA40i-C開(kāi)發(fā)板

    國(guó)產(chǎn)工業(yè)級(jí),高清輸出,豐富接口|OKA40i開(kāi)發(fā)板采用底板+核心板結(jié)構(gòu),基于全志工控行業(yè)平臺(tái)級(jí)處理器四核Cortex-A7 A40i設(shè)計(jì),主頻1.2GHz,集成MAli400MP2 GPU,內(nèi)存1GB/2GB DDR3L,存儲(chǔ)8GB eMMC。 全志A40i工控行業(yè)芯片平臺(tái) A40i為國(guó)產(chǎn)工控行業(yè)芯,全志A40i處理器代表了Allwin在智能工業(yè)控制領(lǐng)域的成就。飛凌嵌入式A40i系列OKA40i-C開(kāi)發(fā)板是飛凌推出的一款中國(guó)芯,全國(guó)產(chǎn)級(jí)工業(yè)級(jí)開(kāi)發(fā)板,適用于適用于基于視覺(jué)交互的工業(yè)控制產(chǎn)品 了解詳情
    OKA40i-C開(kāi)發(fā)板
  • OKT3-C開(kāi)發(fā)板

    國(guó)產(chǎn)車規(guī)級(jí),高清解碼,多路攝像|飛凌OKT3-C開(kāi)發(fā)板基于全志t3四核車載導(dǎo)航高性能處理器設(shè)計(jì)開(kāi)發(fā),飛凌全志T3開(kāi)發(fā)板具有5大亮點(diǎn),車規(guī)芯片,10年+超長(zhǎng)生命周期;全志T3開(kāi)發(fā)板工規(guī)溫度范圍,工業(yè)級(jí)穩(wěn)定性能;飛凌全志T3開(kāi)發(fā)板高度集成,全功能引出;全志T3開(kāi)發(fā)板雙屏顯示,高清加持。飛凌為降低客戶的二次開(kāi)發(fā)提供全志T3芯片資料,提供原理圖,提供 SDK資料 ,提供技術(shù)支持。

    了解詳情
    OKT3-C開(kāi)發(fā)板
  • FETT3-C核心板

    國(guó)產(chǎn)車規(guī)級(jí)|

    FETT3-C核心板基于全志四核車載導(dǎo)航T3處理器設(shè)計(jì)開(kāi)發(fā),Cortex-A7架構(gòu),主頻1.2GHz;全志T3核心板集成MAli400MP2 GPU,內(nèi)存1GB DDR3L,存儲(chǔ)8GB eMMC;全志T3核心板整板工業(yè)級(jí)運(yùn)行溫寬,支持絕大部分當(dāng)前流行的視頻及圖片格式解碼;全志T3核心板具有穩(wěn)定可靠的工業(yè)級(jí)產(chǎn)品性能、低功耗、以及豐富的用戶接口等優(yōu)勢(shì);全志T3核心板搭載Linux操作系統(tǒng);全志T3核心板適用于車載電子、電力行業(yè)、醫(yī)療電子、工業(yè)控制、物聯(lián)網(wǎng)、智能終端等領(lǐng)域。

    了解詳情
    FETT3-C核心板

推薦閱讀 換一批 換一批