七、 放/錄音測試用戶可以使用文件系統內帶的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 [ION] map success: base 0xb6d14000, physical 59200000 00000001 00000001 00000001 00000001 04. 采用自帶Qt應用測試CameraUI 測試前,插入SD或者TF卡,開機自啟動之后,默認啟動Launcher,MediaUI,CameraUI。采用CameraUI測試。點擊下面圖標: 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測試。點擊下面圖標: 3、 模擬攝像頭測試 飛凌自制模擬攝像頭模塊如下圖: video4-7為tvin產生的節點,左上角對應video7,左下角對應video6,右下角對應video5,右上角對應video4,根據實際情況選擇 。 01. 采用自帶qt應用測試CameraUI 測試前,插入SD或者TF卡,開機自啟動之后,默認啟動Launcher,MediaUI,CameraUI。采用 CameraUI測試。點擊下面圖標: 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
九、 RTC時鐘驅動測試RTC測試,主要通過使用date和hwclock工具設置查看軟、硬件時間,測試當操作系統重啟的時候,軟件時鐘讀取RTC時鐘是否同步(注意:確保板子上已經安裝了紐扣電池)。 設置時間命令幫助如下: # 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 設置時間如下命令 #date -s 2015.05.29-09:47:13 串口信息: Fri May 29 09:47:13 UTC 2015 說明:date設置的格式: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 —將系統時間設置到時鐘芯片里面。如果沒有這步,下次啟動時,系統時間是不會更新的。 斷電重啟 #date 查看時間是否保存。 十、 4G模塊測試注:4G模塊是選配模塊,如有需要,請聯系飛凌銷售。 準備一張移動4G SIM卡,4G ec20模塊一個,將SIM卡插入4G模塊卡槽中固定好,將天線接到主ipex天線座,開機上電。 1、 查看節點是否存在: [root@sun8i ~]# ls -la /dev/qcqmi0 存在qcqmi0節點,且識別usb0節點,則4g模塊正確識別并加載。 2、 撥號: #/usr/bin/quectel-CM & [01-01_00:33:08:257] wcdma [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、 測試網絡通斷 輸入指令: # 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。 |