USB
Luckfox Pico Ultra 和 Luckfox Pico Ultra W 都增加了USB-A
接口方便接入USB
外设。但是值得注意的是,USB A
和 USB C
不能同时用,通过使用开关芯片来选择性地连接USB Type-C
或USB Type-A
接口,可以有效避免信号冲突和电源管理问题,确保系统的稳定和可靠性。
- 当
USB-C
口有供电,则USB
会切换到USB-C
上 - 当
USB-C
口没有供电,则USB
回切换到USB-A
上面(主要配合POE
模块或者外部供电模块一起使用)
HOST 模式
使用 luckfox-config 打开相关配置:
- 键盘上的↑、↓键进行菜单项目的选择,enter键进入,←、→键或者Tab进行 OK和 cancel 按钮的选择,Esc 键取消返回,空格键为选择定选项,任何更改都将在重新启动后生效。注意:ADB登录无法使用 方向键和 Tab,只能使用数字选择选项,enter确认。
在终端打开 luckfox-config 工具:
luckfox-config
选择
Advanced Options
:选择
USB
:选择
host
模式:当选择回车确认后,按
esc
退出:重启开发板
reboot
挂载 U 盘
设备上电,查看当前USB模式,正常应该返回host。
cat /sys/devices/platform/ff3e0000.usb2-phy/otg_mode
插入U盘或者读卡器,显示如下:
[ 143.364405] usb 1-1.4: new high-speed USB device number 3 using xhci-hcd
[ 143.513956] usb-storage 1-1.4:1.0: USB Mass Storage device detected
[ 143.517513] usb-storage 1-1.4:1.0: Quirks match for vid 05e3 pid 0749: 520
[ 143.519454] scsi host1: usb-storage 1-1.4:1.0
[ 144.536147] scsi 1:0:0:0: Direct-Access Generic MassStorageClass 1536 PQ: 0 ANSI: 6
[ 144.770829] sd 1:0:0:0: [sdb] 30949376 512-byte logical blocks: (15.8 GB/14.8 GiB)
[ 144.771907] sd 1:0:0:0: [sdb] Write Protect is off
[ 144.772903] sd 1:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 144.780888] sdb: sdb1
[ 144.785345] sd 1:0:0:0: [sdb] Attached SCSI removable diskk根据提示新设备为sdb,查看dev下sda文件。
# ls /dev/sd*
/dev/sdb1 /dev/sdb /dev/sda将sdb1挂载到/mnt/sdcard文件夹下。
mount -t vfat /dev/sdb1 /mnt/sdcard/
查看sdcard文件夹文件。
ls /mnt/sdcard/
USB 摄像头
USB 摄像头的种类繁多,我们无法对所有型号进行全面测试。在本部分,我们选择使用微雪电子的 OV5640 5MP USB Camera (B) 和 IMX179 8MP USB Camera (A) 这两款摄像头作为示例。
在开始测试之前,请确保USB已经设置成了 host 模式。为了防止供电不足,建议选择带有供电功能的USB HUB。
拍照
- 插入USB摄像头后,检查是否已识别到设备,可以使用以下指令进行查看:
使用USB摄像头拍摄照片,并保存到指定的文件名:
# fswebcam -d /dev/video0 -r 1920x1080 /root/image01.jpg
--- Opening /dev/video0...
Trying source module v4l2...
/dev/video0 opened.
No input was specified, using the first.
--- Capturing frame...
Captured frame in 0.00 seconds.
--- Processing captured image...
Unable to load font 'sans': Could not find/open font
Disabling the the banner.
Writing JPEG image to '/root/image01.jpg'.-d /dev/video0
:指定了要使用的设备-r 1920x1080
:指定了拍摄照片的分辨率/root/image01.jpg
:指定的输出文件的路径和名称。
录制视频
当前录制视频是基于Luckfox-Pico-Max开发板测试。由于Luckfox-Pico系列开发板内存有限,不支持大分辨率录制。
ffmpeg -f v4l2 -video_size 320x240 -framerate 30 -i /dev/video21 output.mp4
如果想要调整视频分辨率,可以使用
scale
滤镜,将输入的视频帧大小调整为宽度为 640 像素,高度为 480 像素。ffmpeg -f v4l2 -i /dev/video21 -vf "scale=640:480" output1.mp4
效果: