A40i T3開發(fā)板外擴接口的功能測試

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

A40i T3 開發(fā)板功能測試

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

此章節(jié)主要說明A40i T3開發(fā)板外擴接口的使用方法。本章節(jié)測試所用到的測試程序在飛凌提供的Demo中已有集成,故不做文件來源說明,直接進行命令操作。所有命令均以#標識,請客戶使用前將#去除再進行輸入。

一、  WIFI測試

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

1、  板載WIFI的使用

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

 

 

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

步驟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

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

注意卸載模塊前,請將wpa_supplicant與udhcpc -i wlan0進程kill。否則會加載一些信息。

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

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

[  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

注意卸載模塊前,請將wpa_supplicant與udhcpc -i wlan0進程kill。否則會加載一些信息。

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

3、  熱點測試

WiFi熱點:

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

#/usr/sbin/wifiap.sh

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

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

二、  SDHC/TF卡驅(qū)動測試

開發(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ā)板物理連接如圖:

 

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

步驟1:連接USB 接口u盤到USB host接口,會自動掛載到/mnt/usb/sdx1目錄下。

步驟2:查看usb存儲設(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

會讀到剛才我們寫入的1。

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

使用otg轉(zhuǎn)host線連接到otg口,插入u盤能讀取u盤內(nèi)容。將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轉(zhuǎn)4串口

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

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

#  create_xr_usb_serial.sh

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

 

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

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

每個開發(fā)板的網(wǎng)絡使用環(huán)境未必相同,本節(jié)測試示例中,網(wǎng)絡環(huán)境如下。實際使用中,請按照實際網(wǎng)絡環(huán)境自行進行配置。

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

下面以eth0為例進行命令說明。

1、手動配置eth0

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

#ifconfig 網(wǎng)絡端口 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             (查看當前網(wǎng)絡狀況)

03. 修改mac地址

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

#ifconfig eth0 down

ii.修改MAC

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

iii.重新打開網(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. 添加/刪除默認網(wǎng)關(guān)

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

#route add default gw 192.168.0.1

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

#route del default gw 192.168.0.1

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

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

#ifconfig eth0 down

開啟eth0網(wǎng)卡

#ifconfig eth0 up

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

# 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)設(shè)置IP地址

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

#udhcpc  -i  eth0

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

/etc/resolv.conf文件中有dns服務器信息會被自動添加。

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

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

1、 Telnet服務

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

查看是否啟動可以輸入命令:

#netstat -al

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

之后就輸入Ctrl +C終止服務加載。

 

2、 sshd服務

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

測試前,設(shè)置root的密碼比如為123,同時修改sshd的配置文件/etc/ssh/sshd_config,允許root登錄。將#PermitRootLogin prohibit-password 修改為PermitRootLogin yes,保存退出之后,重啟,需要將開發(fā)板設(shè)置為當前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)啟動時已經(jīng)自動啟動了boa服務,在IE中輸入開發(fā)板的IP地址即可瀏覽開發(fā)板webserver中的網(wǎng)頁。下圖是在IE中瀏覽的截圖:

 

4、 VSFTP

開發(fā)板作為服務器

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

下圖是在PC機上用ftp://192.168.0.232訪問ftp 的截圖:

 

 

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

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

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

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

 

六、  看門狗測試

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

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喂狗

七、  放/錄音測試

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

1.耳機放音測試

如果耳機與喇叭同時打開時,默認從喇叭輸出。需拔出喇叭。

#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放音測試

#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. 錄音測試

# 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

八、  攝像頭測試

1、 USB攝像頭測試

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

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

# lsusb

串口信息:

Bus 001 Device 004: ID 0909:0824

查看USB攝像頭的ID信息。

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

# ls /dev/video*

串口信息:

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

03. 另外還可以采用uvccamera測試程序,預覽圖像:

    注意:uvccamera預覽不能先使用自帶qt應用測試CameraUI測試,如果測試后必須先重啟。

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個進程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應用測試CameraUI

測試前,插入SD或者TF卡,開機自啟動之后,默認啟動Launcher,MediaUI,CameraUI。采用CameraUI測試。點擊下面圖標: 點擊 選擇節(jié)點為video0,確定,打開預覽,可查看usb攝像頭畫面。

2 、CMOS-OV5640測試

cmos ov5640還可以使用cameratest預覽

注意:使用uvccamera預覽不能先使用自帶qt應用測試CameraUI測試,如果測試后必須先重啟。

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個進程kill。

#kill -9 1312 1313 1314

#fbinit 0

#fbinit 1

#fbinit 2

# cameratest  -d /dev/video1

其中video1是對應的節(jié)點。

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平臺支持OV5640預覽。采用自帶qt應用測試CameraUI

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

3、  模擬攝像頭測試

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

 

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

01. 采用自帶qt應用測試CameraUI

測試前,插入SD或者TF卡,開機自啟動之后,默認啟動Launcher,MediaUI,CameraUI。采用 CameraUI測試。點擊下面圖標: 點擊 選擇節(jié)點為video4,確定,打開預覽,可查看tvin的攝像頭預覽畫面。其中CameraUI支持PAL格式。

02.  還可以采用sdktest進行測試。

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個進程kill。

#kill -9 1312 1313 1314

#fbinit 0

#fbinit 1

#fbinit 2

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

03. 模擬攝像頭還可以使用tvdcamtester進行測試,此方式支持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時鐘驅(qū)動測試

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

設(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è)置時間如下命令

#date -s 2015.05.29-09:47:13

串口信息:

Fri May 29 09:47:13 UTC 2015

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

hwclock —查看下硬件時間

#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è)置到時鐘芯片里面。如果沒有這步,下次啟動時,系統(tǒng)時間是不會更新的。

斷電重啟

#date

查看時間是否保存。

 

十、  4G模塊測試

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

準備一張移動4G SIM卡,4G EC20模塊一個,將SIM卡插入4G模塊卡槽中固定好,將天線接到主ipex天線座,開機上電。

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

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

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

2、 撥號:

#/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、 測試網(wǎng)絡通斷

輸入指令:

# 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熱點:

# /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é)點,手機連接forlinx_a40i,可連接外網(wǎng)。

十一、  UART串口測試

1.  OKA40I-C開發(fā)板設(shè)置6個UART口,在開發(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模塊接到開發(fā)板UART2(ttyS2)或者UART3(ttyS3)上,串口線連接到RS232設(shè)備,連接好硬件后開發(fā)板上電。

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

# 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測試

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

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

#uart  /dev/ttyS5  9600

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

 

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

打開數(shù)據(jù)庫,輸入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ù)庫tbl1

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

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

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

hello!|10

goodbye|20

sqlite> .quit //退出

十四、  SPI測試

默認支持1路SPI片選,分別對應節(jié)點為/dev/spidev2.0。

短接MOSI與MISO,對應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

十五、  按鍵測試

# 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抬起

十六、  顯示測試

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

1、背光測試

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

# lsmod

mali 278345 0 - Live 0xbf010000 (O)

gt9xxnew_ts 44460 0 - Live 0xbf000000

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

# source    /qt5.9.sh

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

#ps

1312 root     /Launcher

1313 root     /MediaUI

1314 root     /CameraUI

將上述3個進程kill。

# kill -9 1312 1313 1314

#fbinit 0

#fbinit 1

#fbinit 2

# backlight_gui

滑動進度條,調(diào)節(jié)背光亮滅。

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

  • FETA40i-C核心板

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

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

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

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

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

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

    了解詳情
    FETT3-C核心板

推薦閱讀 換一批 換一批