硬件:米尔i.MX6UL开发板MYD-Y6ULX
简介:MYD-Y6ULX开发板(i.MX6UL开发板)由MYC-Y6ULX核心板和底板组成,基于NXP i.MX6UL处理器或i.MX6ULL处理器可选,MYD-Y6ULX开发板(i.MX6ULL开发板)提供丰富外设硬件,板载了Mini PCIE接口(用于4G模块)及SIM卡槽、WIFI芯片及天线接口、双百兆网口、LCD液晶接口、音频接口、带隔离的CAN,RS485,RS232等。
部署开发环境:开发前需要PC安装好Linux操作系统,推荐使用Ubuntu 16.04 64bit发行版,连接网线并配置好网络,后续操作需要连接互联网安装或下载相关软件包。
本章主要介绍MYD-Y6ULX开发板底板外围硬件设备应用例程的使用。
使用前,需要先安装Yocto提供的SDK工具链,再编译所有例程代码,并拷贝至开发板目录下。Audio 测试
硬件连接
本例程演示使用Linux系统中的arecord/aplay命令对音频接口录音和放音。需要使用两头3.5mm的音频AUX线,从电脑音频输出孔和开发板的LINE IN(J5)接口连接,HEADERPHONE(J4)连接耳机。
软件操作
在电脑中播放音频文件,执行arecord命令会先将LINE IN中的音频录制并保存为test.wav文件。运行一分钟后再按ctrl + c来停止。
# arecord -f cd test.wav
执行aplay命令来播放上面录制好的音频文件。
# aplay test.wav
Camera 测试
MYD-Y6ULX上提供一个并行Camera接口(J9),可以连接MY-CAM011B型号的Camera模块,模块之间使用FPC线连接。由于信号序列影响,请勿直接 将其它型号的Camera的模块插入,否则会引起模块或开发板的损坏。 本例程演示使用一款开源的视频流软件uvc_stream,可以将Camera设备捕捉的数据显示在web页面。
硬件连接
使用FPC数据线将MYB-CAM011B模块和MYD-Y6ULX板上的J9接口相连接。
软件操作
uvc_stream是通过的网络传输数据,需要先设置好MYD-Y6ULX板的以太网IP地址,对应系统中的eth0设备。Linux系统中的MY-CAM011B模块的设 备,可通通过v4l2-ctl命令来查询到,输出信息的i.MX6S_CSI表示Camera控制器,对应设备是/dev/video1。uvc_stream参数中'-y'是使用yuyv方 式,'-P'后面是设置web界面的登录密码,用户名默认为uvc_user。'-r'是指定分辨率,当前仅支持800x600。可以用ctrl + c来停止。
# ifconfig eth1 192.168.1.42
# v4l2-ctl --list-devices
i.MX6S_CSI (platform:21c4000.csi):
/dev/video1
pxp (pxp_v4l2):
/dev/video0
# ./uvc_stream -d /dev/video1 -y -P 123456 -r 800x600
uvc_stream提供两种web功能,snapshot和streaming。snapshot的请求URL是snapshot.jpeg,streaming的请求URL是stream.mjpeg。 PC和开发板 在同一网络内时,打开流览器,输入地址http://192.168.1.42:8080/stream.mjpeg,可以看到有登录框,输入用户名为uvc_user,密码为 123456,就可以看到从MY-CAM011B实时采集到的图像了。
WiFi 测试
MYD-Y6ULX开发板提供一个WiFi模块(J11),支持Client模式。
硬件连接
将附带SMA接口的天线安装在开发板的J12位置。
Client模式
Client模式是用于将WiFi模块作为客户端设备,主动连接于路由器或其它提供无线热点的设备。 系统中已经加入WiFi模块的驱动,启动后会自动加载相应驱动。驱动加载成功后会出现对应的wlan0网络设备,使用ifconfig命令来确认。
# ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr a0:2c:36:60:ee:e0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3388 errors:0 dropped:10 overruns:0 frame:0
TX packets:37 errors:0 dropped:3 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:395459 (386.1 KiB) TX bytes:6074 (5.9 KiB)
下面使用wpa_passphrase生成对应WiFi热点SSID的密码,然后由wpa_supplicant命令实现WiFi模块与WiFi热点的连接。
# wpa_passphrase "MYiRTech" >> wifi.conf
12345678
# cat wifi.conf
network={
ssid="MYiRTech"
#psk="12345678"
psk=b96d9a5de2d9480ad5f987857e20216b47a0c4bf43397825ba909438bc52aaff
}
# wpa_supplicant -D wext -B -i wlan0 -c wifi.conf
Successfully initialized wpa_supplicant
rfkill: Cannot open RFKILL control device
R8188EU: Firmware Version 11, SubVersion 1, Signature 0x88e1
MAC Address = a0:2c:36:60:ee:e0
IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
ioctl[SIOCSIWAP]: Operation not permitted
R8188EU: INFO indicate disassoc
连接成功后,使用udhcpc获取IP地址后,就可以使用了。
# udhcpc -b -i wlan0 -R
# ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr a0:2c:36:60:ee:e0
inet addr:192.168.1.211 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5577 errors:0 dropped:15 overruns:0 frame:0
TX packets:46 errors:0 dropped:3 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:651690 (636.4 KiB) TX bytes:7472 (7.2 KiB)
4G模块 测试
MYD-Y6ULX开发板提供一个支持4G模块的PCI-E插槽,此插槽使用USB数据线与4G模块通讯。当前仅支持移远EC20型号。 注意:移远EC20模块为选购配件,请向米尔科技购买。
硬件连接
安装移远EC20模块到PCI-E插槽(U12)。 将两头I-PEX接口的天线安装在移远EC20模块和开发板的J25位置。 安装SMA天线到开发板的J24位置。 系统中已经加入4G模块的驱动,启动后会自动加载相应驱动,驱动加载成功后会出现对应的/dev/ttyUSB*设备,查看:
#ls /dev/ttyUSB*
/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 /dev/ttyUSB3 /dev/ttyUSB4
系统中已加入ppp软件包,可以直接使用。启用ppp0后会自动拨号,连接成功后即获得IP地址,D25灯常亮。还需要检查/etc/resolve.conf文件中的 DNS是否设置正常。
# ifup ppp0
# ifconfig ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr:10.163.130.65 P-t-P:10.64.64.64 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:62 (62.0 B) TX bytes:86 (86.0 B)
# cat /etc/resolv.conf
nameserver 202.96.128.86
nameserver 202.96.134.133
然后使用ping命令测试连接4G网络是否正常。
# ping myir-tech.com
PING s-26427.gotocdn.com (118.123.18.103) 56(84) bytes of data.
64 bytes from 118.123.18.103: icmp_seq=1 ttl=117 time=80.5 ms
64 bytes from 118.123.18.103: icmp_seq=2 ttl=117 time=179 ms
64 bytes from 118.123.18.103: icmp_seq=3 ttl=117 time=378 ms
64 bytes from 118.123.18.103: icmp_seq=4 ttl=117 time=118 ms
64 bytes from 118.123.18.103: icmp_seq=5 ttl=117 time=122 ms
64 bytes from 118.123.18.103: icmp_seq=6 ttl=117 time=177 ms
如果上面验证步骤有异常,可以查看日志来确定问题原因。
# cat /var/log/quectel-dial.log
此章结束,下一章将介绍i.MX6UL开发板的QT应用开发。