硬件指南的开发板
V集成了853开发板LED、WiFi、蓝牙,以太网,音频,屏幕,USB、TF卡片等模块。本章将简要介绍这些模块的操作,方便开发者快速了解开发板。
*注:
- 本文中
root@TinaLinux:~#
开头的命令是通过 ADB、串口 在 Tina Linux 运行在系统内。C:\System>
在电脑上命令提示符(CMD)
中操作,=>
开头的命令是 U-Boot 内部运行。输入命令时,无需输入上述命令头。 - 本文部分命令提供了运行命令后的打印输出,便于运行参考。
调试
串口调试
V853 开发板有两个独立的调试串口可供选择,即 UART0 与 UART3.对应芯片的 UART0 PH9
PH10
,UART3 PH1
PH2
。
按默认 SDK 配置,UART0 提供 Arm 核调试输出,UART3 提供 E907 RV 核调试输出。
硬件连接完成后,使用串口终端访问波特率 115200
。比如这里用的 PuTTY
ADB 调试
安装在电脑上ADB,打开 CMD 使用 adb shell
进入终端。
(1) 在 全志开发者社区-数据下载 专区 ADB 工具 ADB(tab自动补全版)
(2)下载后解压放入本地磁盘(例如)D盘的adb文件夹里)
(3) 右键 ”此电脑“,属性,找到高级系统设置,点击环境变量,xxx用户的环境变量,Path,新增环境变量。
(4) 打开命令提示符,输入 adb shell
C:\System> adb shell* daemon not running. starting it now on port 5037 ** daemon started successfully * _____ _ __ _|_ _||_| ___ _ _ | | |_| ___ _ _ _ _ | | _ | || | | |__ | || || | ||_'_| | | | || | || _ | |_____||_||_|_||___||_,_| |_| |_||_|_||_|_| Tina is Based on OpenWrt! ---------------------------------------------- Tina Linux (5.0) ----------------------------------------------root@TinaLinux:/#
ADB 也可用作文件传输,如:
C:\System> adb push badapple.mp4 /mnt/UDISK # 将 badapple.mp4 上传到开发板 /mnt/UDISK 目录内
C:\System> adb pull /mnt/UDISK/badapple.mp4 # 将 /mnt/UDISK/badapple.mp4 下拉到当前目录
开机与重启
开机
目前开发板是上电即启动模式,只需插入 12V DC 电源适配器或使用USB Type C连接电源。
如果 Type C 连接电脑USB 口可能是因为电脑 USB 输出电流低导致设备反复启动。此时,需要插入 12V DC 电源适配器作为辅助供电。
同时 USB 也可通过位置 USB 口后连接器(米白色),便于组装使用。
开发板右下角的白色连接器为电池接口,可连接支撑锂电池。
打印如下。
wait for next swupdateroot@TinaLinux:/# wait for next swupdateroot@TinaLinux:/#
重启
重启有两种方以重启。第一种 RESET
按键重置 CPU 达到重启功能,另一个通过 linux 实现命令行。
** RESET 重启 **
在开发板左下角找到 RESET 按键,按压即可重启。
在 Linux 命令行中输入 reboot
即可重启
root@TinaLinux:/# reboot
在 U-Boot 命令行中输入 reset
即可重启
=> reset
重启进入烧录模式
找到开发板左下角的按钮 RESET
UBOOT
(1)按住 UBOOT
按键 (2)轻点 RESET
按键,重置开发板 (3)等待计算机连接成功,松开 UBOOT
按键
在 Linux 命令行中输入 reboot efex
可重启进入烧录模式
root@TinaLinux:/# reboot efex
在 U-Boot 命令行中输入 efex
可重启进入烧录模式
=> efex
GPIO 点灯测试
开发板上有一个 LED 灯供用户操作,接 PH11
上。转换该 IO 的数字标号为:7 * 32 11 = 235,或查看 IO 复用情况表,其中(MUX UNCLAIMED)
表示这个 GPIO 目前没有被使用:
root@TinaLinux:/# cat /sys/kernel/debug/pinctrl/pio/pinmux-pins
它会输出以下内容
...上略pin 231 (PH7): (MUX UNCLAIMED) (GPIO UNCLAIMED)pin 232 (PH8): (MUX UNCLAIMED) (GPIO UNCLAIMED)pin 233 (PH9): uart0 (GPIO UNCLAIMED) function uart0 group PH9pin 234 (PH10): uart0 (GPIO UNCLAIMED) function uart0 group PH10pin 235 (PH11): (MUX UNCLAIMED) (GPIO UNCLAIMED)pin 236 (PH12): (MUX UNCLAIMED) pio:236pin 237 (PH13): 2020000.wiegand pio:237 function wiegand group PH13pin 238 (PH14): 2020000.wiegand pio:238 function wiegand group PH14pin 239 (PH15): (MUX UNCLAIMED) pio:239...下略
我们先导出该 GPIO:
echo 235 > /sys/class/gpio/exportcd /sys/class/gpio/gpio235
然后再将该 IO 置为输出状态,即可操作其电平:
echo out > directionecho 1 > value #LED点亮echo 0 > value #LED熄灭
Wi-Fi
V853 开发板使用的是 XR829 Wi-Fi & BT 模块,使用 40M 外部晶振,其Wi-Fi部分通过SDIO总线与 V853 通讯,设备位于 SDC1
接口上。
Wi-Fi 测试与连接网络
Tina 提供了一套简易方便的 Wi-Fi 测试套件:wifi
,使用 wifi
命令可以设置 Wi-Fi 的工作模式,扫描网络,连接网络等等。它的使用方法可以通过运行 wifi -h
了解。这里首先介绍如何使用 wifi
扫描网络:
(1)设置 Wi-Fi
为 STA
模式
root@TinaLinux:/# wifi -o sta
(2)扫描当前网络环境的 Wi-Fi 站点
root@TinaLinux:/# wifi -s
(3)连接Wi-Fi(SSID:awol,密码 12345678)
root@TinaLinux:/# wifi -c awol 12345678
(4)连接网络后输入 ifconfig
即可查看当前 ip 地址
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0qhQcVJB-1655429457427)(…/assets/img/hard/boarduse/WiFiIF.jpg)]
可以使用 ping
命令测试 网络连接
root@TinaLinux:/# ping www.baidu.com
它会输出以下内容
PING 202.108.22.5 (202.108.22.5): 56 data bytes64 bytes from 202.108.22.5: seq=0 ttl=49 time=48.734 ms64 bytes from 202.108.22.5: seq=1 ttl=49 time=48.624 ms64 bytes from 202.108.22.5: seq=2 ttl=49 time=58.370 ms64 bytes from 202.108.22.5: seq=3 ttl=49 time=69.119 ms64 bytes from 202.108.22.5: seq=4 ttl=49 time=49.635 ms
(5)关闭Wi-Fi
root@TinaLinux:/# wifi -f
(1)创建热点,SSID v853 密码 12345678
root@TinaLinux:/# wifi -o ap v853 12345678
(2)然后就可以扫描到 Wi-Fi 了,输入密码 12345678 进行连接
蓝牙
V853 开发板使用的是 XR829 Wi-Fi & BT 模块,使用 40M 外部晶振,其 蓝牙 部分通过 UART 总线与 V853 通讯,设备位于 UART2
接口上。
蓝牙测试
命令:
bt_test
蓝牙sink
将v853开发板作为蓝牙小音箱,通过蓝牙在开发板上播放音频
root@TinaLinux:/# bt_test -i -p a2dp-sink
音频功能
V853 开发板板载了两路麦克风输入,一路音频输入,一个扬声器输出。(注意,左侧 UART0 旁的 3.5mm 耳机接口是 GPS 使用的 UART 接口,不是耳机接口)
录音
可以使用 arecord -l
命令查看开发板提供的录音设备。
root@TinaLinux:/# arecord -l
它会输出以下内容
**** List of CAPTURE Hardware Devices ****card 0: audiocodec [audiocodec], device 0: soc@03000000:codec_plat-sunxi-snd-codec sunxi-snd-codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0card 1: snddaudio0 [snddaudio0], device 0: 2032000.daudio0_plat-snd-soc-dummy-dai snd-soc-dummy-dai-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0
V853 开发板板载了两个麦克风,位于 LINE-IN接口附近。
在录音之前,首先需要打开音频通路,配置内部 MIC1,MIC2 录制双通道音频。 选择 MIC1 输入
root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC1 Input Select' 0
它会输出以下内容
numid=23,iface=MIXER,name='MIC1 Input Select' ; type=ENUMERATED,access=rw------,values=1,items=2 ; Item #0 'differ' ; Item #1 'single' : values=0
选择 MIC2 输入
root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC2 Input Select' 0
它会输出以下内容
numid=23,iface=MIXER,name='MIC2 Input Select' ; type=ENUMERATED,access=rw------,values=1,items=2 ; Item #0 'differ' ; Item #1 'single' : values=0
开启 MIC1
root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC1 Switch' 1
它会输出以下内容
numid=17,iface=MIXER,name='MIC1 Switch' ; type=BOOLEAN,access=rw------,values=1 : values=on
开启 MIC2
root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC2 Switch' 1
它会输出以下内容
numid=17,iface=MIXER,name='MIC2 Switch' ; type=BOOLEAN,access=rw------,values=1 : values=on
设置 MIC1 音量
root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC1 gain volume' 30
它会输出以下内容
numid=12,iface=MIXER,name='MIC1 gain volume' ; type=INTEGER,access=rw---R--,values=1,min=0,max=31,step=0 : values=19 | dBscale-min=0.00dB,step=1.00dB,mute=0
设置 MIC2 音量
root@TinaLinux:/# amixer -D hw:audiocodec cset name='MIC2 gain volume' 30
它会输出以下内容
numid=12,iface=MIXER,name='MIC2 gain volume' ; type=INTEGER,access=rw---R--,values=1,min=0,max=31,step=0 : values=19 | dBscale-min=0.00dB,step=1.00dB,mute=0
使用 arecord -D hw:audiocodec -f S16_LE -t wav -c2 -r 16000 -d 3 t.wav
命令,使用板载的两个麦克风进行录音。
root@TinaLinux:/# arecord -D hw:audiocodec -f S16_LE -t wav -c2 -r 16000 -d 3 t.wav
它会输出以下内容
Recording WAVE 't.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Stereo
播放
使用 aplay -l
查看播放设备
root@TinaLinux:/# aplay -l
它会输出以下内容
**** List of PLAYBACK Hardware Devices ****card 0: audiocodec [audiocodec], device 0: soc@03000000:codec_plat-sunxi-snd-codec sunxi-snd-codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0card 1: snddaudio0 [snddaudio0], device 0: 2032000.daudio0_plat-snd-soc-dummy-dai snd-soc-dummy-dai-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0
在播放之前,首先需要打开音频通路,配置扬声器播放音频。
开启 LINEOUT 输出功能
root@TinaLinux:/# amixer -D hw:audiocodec cset name='LINEOUT Output Select' 1
它会输出以下内容
numid=22,iface=MIXER,name='LINEOUT Output Select' ; type=ENUMERATED,access=rw------,values=1,items=2 ; Item #0 'single' ; Item #1 'differ' : values=1
开启 LINEOUT 通路
root@TinaLinux:/# amixer -D hw:audiocodec cset name='LINEOUT Switch' 1
它会输出以下内容
numid=20,iface=MIXER,name='LINEOUT Switch' ; type=BOOLEAN,access=rw------,values=1 : values=on
设置输出音量
root@TinaLinux:/# amixer -D hw:audiocodec cset name='LINEOUT volume' 25
它会输出以下内容
numid=16,iface=MIXER,name='LINEOUT volume' ; type=INTEGER,access=rw---R--,values=1,min=0,max=31,step=0 : values=25 | dBrange- rangemin=0,,rangemax=1 | dBscale-min=0.00dB,step=0.00dB,mute=1 rangemin=2,,rangemax=31 | dBscale-min=-43.50dB,step=1.50dB,mute=1
使用 aplay
通过外接扬声器播放刚才录制的音频。
aplay -D hw:audiocodec t.wav
它会输出以下内容
Playing WAVE 't.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Stereo
修改音量
使用 alsamixer
提供的图形化界面调整音量。
root@TinaLinux:/# alasmixer
有线网络
V853 开发板板载百兆以太网络,使用 IP101GR 以太网收发器。
测试网络
插入网线,使用 ifconfig eth0 up
打开网络设备,udhcp -i eth0
动态活动IP地址。之后可以使用 ping
命令测试网络连接。
root@TinaLinux:/# ifconfig eth0 uproot@TinaLinux:/# udhcp -i eth0
运行 ping
测试
root@TinaLinux:/# ping www.baidu.com
它会输出以下内容
PING 202.108.22.5 (202.108.22.5): 56 data bytes64 bytes from 202.108.22.5: seq=0 ttl=49 time=48.734 ms64 bytes from 202.108.22.5: seq=1 ttl=49 time=48.624 ms64 bytes from 202.108.22.5: seq=2 ttl=49 time=58.370 ms64 bytes from 202.108.22.5: seq=3 ttl=49 time=69.119 ms64 bytes from 202.108.22.5: seq=4 ttl=49 time=49.635 ms
LCD 显示
V853 开发板配套 7寸 LCD屏幕,配有相对应的电容式触摸屏幕。
屏幕基本测试
当前固件在开机时会显示 Tina 小企鹅的开机 LOGO。
cat /dev/urandom > /dev/fb0
通过 echo
到 /sys/class/disp/disp/attr/colorbar
进行测试,0 到 7 是不同的彩色条纹效果哦
echo 0 > /sys/class/disp/disp/attr/colorbar
UI 测试
LVGL(轻量级和通用图形库)是一个免费和开源的图形库,它提供了创建嵌入式GUI所需的一切,具有易于使用的图形元素,美丽的视觉效果和低内存占用。 这里运行 lv_examples 1
进行测试。
root@TinaLinux:/# lv_examples 1
同时固件也提供了多种测试效果,
运行 lv_examples 0 是 lv_demo_widgets运行 lv_examples 1 是 lv_demo_music运行 lv_examples 2 是 lv_demo_benchmark运行 lv_examples 3 是 lv_demo_keypad_encoder运行 lv_examples 4 是 lv_demo_stress
DirectFB是一个轻量级的硬件图形加速、输入设备处理特性和抽象的图形库,它集成了在Linux Framebuffer驱动之上的多层显示的功能。
root@TinaLinux:/# df_andi
同时固件也提供了多种测试效果可供选择。
df_andi df_drivertest2 df_matrix df_texturedf_flip df_neo df_window df_dok df_knuckles df_porter df_drivertest
LCD 触摸
LCD 触摸测试
LCD 触摸时会向 V853 发送数据,可以通过 cat
命令获取这些数据。
root@TinaLinux:~# cat /dev/input/event0
运行后触摸屏幕在终端命令行会输出乱码。即为获得的触摸信号。
摄像头
V853 开发板默认提供双1080p摄像头方案,型号是GC2063。
实时显示
摄像头图像显示到屏幕上
使用 sample_virvi2vo
捕获摄像头图像并显示。
root@TinaLinux:~# sample_virvi2vo /usr/sample_virvi2vo.conf
USB
USB OTG 切换模式
切换到 Device 模式
root@TinaLinux:~# cat /sys/devices/platform/soc/usbc0/usb_device
切换到 Host 模式
root@TinaLinux:~# cat /sys/devices/platform/soc/usbc0/usb_host
USB U盘测试
V853 的 Type C USB 连接器支持 OTG,可以连接 U盘、鼠标键盘 等物品。在接入 USB TYPE A 设备的时候需要一个 USB TYPE C 转 TYPE A 转接头。
先把USB切换到 HOST 模式
root@TinaLinux:~# cat /sys/devices/platform/soc/usbc0/usb_device
插入 U 盘,自动挂载 /mnt/exUDISK
目录
TF Card
插入 TF 卡,TF卡将自动挂载到 /mnt/sdcard
目录下
原贴链接:https://bbs.aw-ol.com/topic/1610/ 全志在线开发者论坛 全志在线开发者交流企鹅群(客服机器人24小时在线解答):498263967 资源获取、问题讨论可以到全志在线开发者社区进行:https://www.aw-ol.com 全志及开发者最新动态可以关注