orangepi one作为U盘连接到电脑


1. 说明

将orangepi one开发板作为U盘,连接到PC电脑,可以用来传文件。
orangepi one使用USB OTG接口连接到PC。

2. TF卡分区说明

TF卡分为三个区:
在这里插入图片描述

/dev/mmcblk2p1-500M-放uboot和内核及设备树,fat格式
/dev/mmcblk2p2-6G-放busybox文件系统,ext4格式
/dev/mmcblk2p3-1G-用来作为U盘分区, fat格式

3. linux内核配置

配置内核支持Gadget U盘功能
Device Drivers  --->
	[*] USB support  --->
		<*>   USB Gadget Support  --->
			<*>   USB functions configurable through configfs
			[*]     Mass storage
			<M>     Mass Storage Gadget

修改内核支持/dev/loop功能,把内存作为磁盘,第6节使用
Device Drivers  --->
	[*] Block devices  --->
		<*>   Loopback device support
		<*>   RAM block device support

将编译出来的zImage和drivers/usb/gadget/legacy/g_mass_storage.ko放到文件系统中

4. orangepi one上设置

/* 把TF卡mmcblk2p3 分区作为U盘通过USB口接入电脑,模拟U盘 /
insmod g_mass_storage.ko file=/dev/mmcblk2p3 stall=0 removable=1
/
把TF卡mmcblk2p3分区挂载到orangepi one /mnt/media1/ 目录,这样可以和PC通过U盘通信*/
mount /dev/mmcblk2p3 /mnt/media1/

5. PC端显示如下

在这里插入图片描述
在这里插入图片描述

6. 在内存创建指定大小空间作为U盘和PC通信

在orangepi one上设置
cd /mnt
1./mnt创建usb.img镜像文件,大小为10M
dd if=/dev/zero of=/mnt/usb.img bs=1M count=10
2. 格式化镜像为FAT格式,PC可以识别的格式都可以,如FAT或FAT32
mkfs.vfat /mnt/usb.img
3. 关联usb.img镜像和loop0设备
losetup /dev/loop0 /mnt/usb.img
4. 挂载到/mnt/media3目录
mount -t vfat /dev/loop0 /mnt/media3
5. 加载驱动,把loop0设备作为U盘加载
insmod g_mass_storage.ko file=/dev/loop0 removable=1

如下,是PC识别到的U盘:
ram-usb

Logo

昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链

更多推荐