USB
USB 接口使用
连接 USB 设备
将 USB 设备(如 U 盘、鼠标、键盘等)插入开发板的 USB 接口。系统会自动识别设备并加载相应的驱动。
查看连接的 USB 设备
使用以下命令查看当前连接的 USB 设备:
root@linaro-alip:/# lsusb
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 007 Device 002: ID 046d:c077 Logitech, Inc. Mouse
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
如上所示可以看到已经识别到了鼠标(Mouse)
挂载 USB 存储设备
如果连接了 USB 存储设备(如 U 盘),可以按以下步骤挂载:
1.查看设备节点:
root@linaro-alip:/# fdisk -l
...
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 122879966 122877919 58.6G c W95 FAT32 (LBA)
2.创建挂载点并挂载设备:
mkdir /mnt/usb
mount /dev/sda1 /mnt/usb
3.查看挂载结果:
root@linaro-alip:/# df -h
Filesystem Size Used Avail Use% Mounted on
...
/dev/sda1 59G 768K 59G 1% /mnt/usb
4.卸载设备:
umount /mnt/usb
使用 USB OTG 功能
RK3568 的 USB 3.0 OTG 接口支持设备模式(如 U 盘模式)和主机模式。
- 设备模式
配置 OTG 为设备模式:
echo peripheral > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode
连接开发板到 PC,PC 会识别开发板为 USB 设备。
- 主机模式
配置 OTG 为主机模式:
echo host > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode
连接 USB 设备到 OTG 接口,开发板会识别USB设备。
USB传输速率
- 1.确定USB存储设备 通过 lsblk 确认 USB 存储设备
root@linaro-alip:/# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 1 58.6G 0 disk
mmcblk0 179:0 0 28.9G 0 disk
├─mmcblk0p1 179:1 0 4M 0 part
├─mmcblk0p2 179:2 0 4M 0 part
├─mmcblk0p3 179:3 0 64M 0 part
├─mmcblk0p4 179:4 0 128M 0 part
├─mmcblk0p5 179:5 0 32M 0 part
├─mmcblk0p6 179:6 0 6G 0 part /
├─mmcblk0p7 179:7 0 128M 0 part /oem
└─mmcblk0p8 179:8 0 22.5G 0 part /userdata
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk
zram0 254:0 0 0B 0 disk
如上所示,插入 ROCK 3B 的 USB 存储设备为 /dev/sda
- 2.读取测试
root@linaro-alip:/# sudo dd if=/dev/sda of=/dev/null bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 3.34566 s, 31.3 MB/s
这个命令将会从 USB 设备读取数据,并将其写入 /dev/null,以便测试读取速度。这里指定了写入的块的大小为 1M,指定了读取 100 个块,因此总共读取了 100 MB 的数据,读取速度为 31.3 MB/s
- 3.写入测试
root@linaro-alip:/# sudo dd if=/dev/zero of=/dev/sda bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 6.96282 s, 15.1 MB/s
这里指定了写入的块的大小为 1M,写入了 100 个块,总共写入了 100 M 的数据,写入速度为 15.1 MB/s