飞凌嵌入式A40i T3开发板外扩接口的功能测试(二)
2021年04月19日 16:57 发布者:哦哈哟
七、 放/录音测试用户可以使用文件系统内带的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 /*设置音量*/
播放音频文件:
#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摄像头插入之后,自动加载驱动。
01. 插入USB摄像头,在调试串口输入命令查看USB状态。
# lsusb
串口信息:
Bus 001 Device 004: ID 0909:0824
查看USB摄像头的ID信息。
02. 输入命令查看USB摄像头的设备节点,可见设备节点video0
# ls /dev/video*
串口信息:
/dev/video /dev/video0 其中/dev/video0为刚才插入的usb设备。
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
map success: base 0xb6d14000, physical 59200000
00000001 00000001
00000001 00000001
04. 采用自带Qt应用测试CameraUI
测试前,插入SD或者TF卡,开机自启动之后,默认启动Launcher,MediaUI,CameraUI。采用CameraUI测试。点击下面图标: https://www.forlinx.com/file.php?f=202012/f_c038bea2ec540d21b9c9189060321742&t=jpg&o=&s=&v=1607388341点击 https://www.forlinx.com/file.php?f=202012/f_3567dd6c75f1a48fdf667e420c07ba3f&t=jpg&o=&s=&v=1607388351选择节点为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是对应的节点。
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测试。点击下面图标: https://www.forlinx.com/file.php?f=202012/f_571819ebe13dd02544e8059d5868d034&t=jpg&o=&s=&v=1607388358点击 https://www.forlinx.com/file.php?f=202012/f_6f912ae919e3ce92253dbdcfb4f2c582&t=jpg&o=&s=&v=1607388367选择节点为video1(video1为ov5640产生的节点,具体根据实际选择),确定,打开预览,可查看ov5640的摄像头预览画面。
3、 模拟摄像头测试
飞凌自制模拟摄像头模块如下图:
https://www.forlinx.com/file.php?f=202012/f_e6b6b2a46d7f84707213e4c1e3539a18&t=jpg&o=&s=&v=1607388373
video4-7为tvin产生的节点,左上角对应video7,左下角对应video6,右下角对应video5,右上角对应video4,根据实际情况选择 。
01. 采用自带qt应用测试CameraUI
测试前,插入SD或者TF卡,开机自启动之后,默认启动Launcher,MediaUI,CameraUI。采用 CameraUI测试。点击下面图标: https://www.forlinx.com/file.php?f=202012/f_d1353ee69aaee2a75acf1527cb256861&t=jpg&o=&s=&v=1607388380点击 https://www.forlinx.com/file.php?f=202012/f_1425fb142cc09af3b94c9d1b84545b19&t=jpg&o=&s=&v=1607388464选择节点为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时钟驱动测试RTC测试,主要通过使用date和hwclock工具设置查看软、硬件时间,测试当操作系统重启的时候,软件时钟读取RTC时钟是否同步(注意:确保板子上已经安装了纽扣电池)。
设置时间命令帮助如下:
# date -help
串口信息:
Usage: date [+FMT]
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 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]
MM.DD-hh:mm[:ss]
YYYY-MM-DD hh:mm[:ss]
[[[[YY]MM]DD]hh]mm[.ss]
'date TIME' form accepts MMDDhhmm[YY][.ss] instead
设置时间如下命令
#date -s 2015.05.29-09:47:13
串口信息:
Fri May 29 09:47:13 UTC 2015
说明:date设置的格式:MMDDhhmm[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 —将系统时间设置到时钟芯片里面。如果没有这步,下次启动时,系统时间是不会更新的。
断电重启
#date
查看时间是否保存。
十、 4G模块测试注:4G模块是选配模块,如有需要,请联系飞凌销售。
准备一张移动4G SIM卡,4G ec20模块一个,将SIM卡插入4G模块卡槽中固定好,将天线接到主ipex天线座,开机上电。
1、 查看节点是否存在:
# ls -la /dev/qcqmi0
存在qcqmi0节点,且识别usb0节点,则4g模块正确识别并加载。
2、 拨号:
#/usr/bin/quectel-CM &
wcdma
Find /sys/bus/usb/devices/1-1.3 idVendor=2c7c idProduct=0125
Find /sys/bus/usb/devices/1-1.3:1.4/net/usb0
Find usbnet_adapter = usb0
Find /sys/bus/usb/devices/1-1.3:1.4/GobiQMI/qcqmi0
Find qmichannel = /dev/qcqmi0
Get clientWDS = 7
Get clientDMS = 8
Get clientNAS = 9
Get clientUIM = 10
Get clientWDA = 11
requestBaseBandVersion EC20CEHCR06A03M1G
requestGetSIMStatus SIMStatus: SIM_READY
requestGetProfile ctnet///0
requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE
requestQueryDataCall ipv4ConnectionStatus: DISCONNECTED
requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE
requestSetupDataCall WdsConnectionIPv4Handle: 0x86ad3a90
requestQueryDataCall IPv4ConnectionStatus: CONNECTED
ifconfig usb0 up
busybox udhcpc -f -n -q -t 5 -i usb0
udhcpc (v1.18.3) started
Sending discover...
Sending select for 10.51.194.11...
Lease of 10.51.194.11 obtained, lease time 7200
deleting routers
route: SIOCDELRT: No such process
adding dns 222.222.222.222
adding dns 222.222.202.202
3、 测试网络通断
输入指令:
# ifconfig eth0 down
#ping -c 3 www.baidu.com
调试串口输出如下信息:
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节点,手机连接forlinx_a40i,可连接外网。
十一、 UART串口测试1. OKA40I-C开发板设置6个UART口,在开发板上分别为DEGUG(RS232)、UART2(TTL)、UART3(TTL)、UART4(TTL)、UART5(rs485)、UART7(TTL),其中UART0作为Debug使用,与板载232接口功能一样。UART2、 UART3作为五线串口使用。UART4、UART7用作普通串口引出。UART5用作RS485。
2.把飞凌的TTL转RS232模块接到开发板UART2(ttyS2)或者UART3(ttyS3)上,串口线连接到RS232设备,连接好硬件后开发板上电。
3.以UART3为例,终端中输入如下命令,tty_test启动后会不断的向外发送“abcdefg”。将收发短接进行测试。UART2口类似,修改为对应设备号即可。
# 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功能,对应节点为/dev/ttyS5。采用RS485转232模块,与电脑相连。
终端中输入如下命令,tty_test启动后会不断的向外发送“abcdefg”。
#uart /dev/ttyS5 9600
电脑端串口助手(在用户资料\工具\串口助手中),发送abcdefg后,接收到RS485发送过来的abcdefg。
https://www.forlinx.com/file.php?f=202012/f_9111b5a16eb5d057dedeaf3a241a3ff6&t=jpg&o=&s=&v=1607388478