飞凌嵌入式ARMCortex-A9 S5P4418开发板上能否满足U盘的功能?其实可通过修改内核配置和文件系统相关内容,在OK4418开发板上实现模拟U盘功能,模拟U盘可以帮助我们实现开发板与Windows(目前只在XP系统下做过验证)操作系统之间的数据交换。

开发板脱离Windows XP时,它运行数据采集程序,把采集到的数据写成文件保存在eMMC中。Windows XP系统需要读取开发板采集的数据时,只需通过USB线把开发板和Windows XP电脑连接起来,此时开发板就相当于一个U盘,Windows XP像访问U盘一样访问开发板上eMMC的数据文件。

本次开发的软硬件环境配置如下:

硬件平台: 飞凌OK4418开发板

软件系统:  Linux3.4.39

编译器版本:arm-cortex_a9-eabi-4.7-eglibc-2.18

具体实现操作步骤如下:

1、内核配置:

将配置选项USB Gadget Drivers里的File-backed Storage Gadget   配置为模块编译方式

make menuconfig

Device Drivers  --->

[*] USB support  --->

USB Gadget Support  --->

USB Gadget Drivers (Android Composite Gadget)  --->

下面两个选项任选其一即可

( ) File-backed Storage Gadget (DEPRECATED) ——获得模块——》g_file_storage.ko

( ) Mass Storage Gadget    ——获得模块——》g_mass_storage.ko

模块路径为kernel-3.4.39/drivers/usb/gadget

make uImage 生成新的内核

2、准备:

使用新生成的内核烧写系统镜像,并将生成的模块拷贝到开发板文件系统中

在ubuntu虚拟机中生成挂载的镜像文件

dd if=/dev/zero of=udisk32M.img bs=1k count=32768

mkfs.vfat udisk32M.img

将udisk32M.img拷贝到开发板文件系统中

3、使用:

insmod g_file_storage.ko file=udisk32M.img stall=0 removable=1 (换成g_mass_storage.ko一样效果)

mknod /dev/loop0 b 7 0      (此步可不需要)

mount -o loop /home/udisk32M.img /tmp

连接OTG即可

4、验证

1)在开发板上往 /tmp目录写 mdev.conf 文件,命令如下

cp ./etc/mdev.conf ./tmp

在电脑上重新插拔连接开发板的USB线,在移动硬盘中我们可以看到mdev.conf文件,可以在电脑系统上访问。

从而验证开发板往模拟U盘写文件,XP系统上可以访问该文件。

2)电脑系统往模拟U盘写文件,开发板可以访问该文件;

在XP系统上网U盘写wwtARM.txt文件

重新挂载文件系统映像到 /tmp目录

#umount tmp

#mount -o loop /home/udisk32M.img /tmp

在开发板上可以在/tmp目录下访问刚才XP系统写到U盘的wwtARM.txt 文件。

linux 开发板模拟u盘,S5P4418开发板Linux下实现模拟U盘教程飞凌嵌入式相关推荐

  1. qt工程在linux系统里颜色显示错误_【飞凌嵌入式RK3399开发板试用体验】+QT开发环境搭建测试(二)...

    作者:飞扬的青春 在拿到开发板之后,已经体验了Android操作系统,接下来就是体验Linux下的开发,本次以QT的一个小案例来测试下. 首先是自己先搭建了一个Ubuntu18.04的虚拟机,使用真机 ...

  2. “中国芯”——飞凌嵌入式OKA40i-C开发板测评-全志工业级芯片A40i评测

    飞凌嵌入式近期推出了业内超高性价比的首款国产工业级平台OKA40i-C开发板.基于全志工业级 A40i Cortex-A7 四核处理器,主频最高1.2GHz,内部集成Mali400 MP2 GPU图形 ...

  3. 干货 | 飞凌嵌入式OKT507-C开发板如何在Android系统上进行OTA升级

    OTA升级是Android系统所提供的标准软件升级方式.它功能十分强大,并且提供了完全升级(完整包)和增量升级(差异包)两种模式.下面我们以飞凌嵌入式OKT507-C开发板为例,为大家讲解一下具体步骤 ...

  4. 飞凌嵌入式NXP i.MX8MMini 开发板试用体验

    收到飞凌OKMX8MM-C开发板进行测评.这款属于工控板,采用核心板和地板设计思路. CPU芯片等部分制成核心板,外设芯片接口部分制成底板,把核心板和底板组装在一起成为一块功能完整的开发板.软件也可简 ...

  5. 飞凌嵌入式RK3399开发板使用过程中问题实录及解决思路

    飞凌RK3399的开发板,已经推出了一段时间,根据飞凌嵌入式技术服务部统计的客户问题反馈,整理了一份客户在使用RK3399开发板过程中经常遇到的几个问题,并提供了解决思路. RK3399开发板简介: ...

  6. ok6410linux开发环境搭建,飞凌嵌入式知识汇021期:OK6410裸机程序之开始模板(Linux环境)...

    手中有OK6410开发板,一直想试试通过Linux来做做裸机开发,在网络论坛上也搜过一些资料作参考,整理了一下并做了解释或改动,希望这些东西可以大家分享下. 裸机程序的构成 基本的裸机程序由启动代码和 ...

  7. 飞凌嵌入式iMX8MP 开发板试用体验--编译内核源码

    FETMX8MP-C核心板基于NXP i.MX 8M Plus处理器开发设计,该系列处理器专注于机器学习与视觉.高级多媒体以及具有高可靠性的工业自动化.旨在满足智慧城市.工业互联网.智能医疗.智慧交通 ...

  8. 国产平台之T507 开发板Android 安全策略漫谈 -飞凌嵌入式

    硬件平台:飞凌嵌入式 OKT507-C开发板 操作系统:Android10.0 飞凌嵌入式 T507 开发板 Android系统版本为Android10.0,默认开启了SELinux.基于MAC访问控 ...

  9. 新资料丨飞凌嵌入式A40i及全志T3系列开发板 对CAN的支持补充

    飞凌嵌入式基于全志系列处理器设计的OKA40i-C开发板.OKT3-C开发板因其接口丰富.低功耗.系统集成度高等特点,深受广大用户赞誉. 小编通过对飞凌技术服务部"A40i/T3客户群问题解 ...

最新文章

  1. 第十二届全国大学生智能汽车竞赛获奖名单
  2. 在java中如何实现声音,我如何在Java中播放声音?
  3. java基础系列:集合基础(1)
  4. 网络通信-2(TCP通信、ServerSocket、Socket)
  5. JavaScript常用API总结
  6. 面向对象编程 object oriented programming(OOP)
  7. java反射,代码优化
  8. HDU5391威尔逊定理
  9. 6.边缘检测:梯度——计算梯度Matlab实战_5
  10. ZooKeeper学习之路 (七)ZooKeeper设计特点及典型应用场景
  11. 【渝粤教育】电大中专学习指南 (2)作业 题库
  12. 转:MSSQL SERVER行转列 列转行
  13. android开发用什么字体,移动端web app和页面开发使用什么字体?微软雅黑?
  14. 惠普m128fn中文说明书_惠普m128fp使用方法
  15. epsfallback_广东移动通过EPS Fallback方式成功完成了5G高清语音和视频呼叫
  16. 求矩阵的特征值和特征向量方法
  17. C语言 投票系统:给定候选人,从键盘输入候选人的名字,统计票数,并输出最终获胜者...
  18. TCP 连接状态及相关命令学习
  19. 生化危机2win10完美版
  20. 【翻译】西川善司的「实验做出的游戏图形」「GUILTY GEAR Xrd -SIGN-」中实现的「纯卡通动画的实时3D图形」的秘密,后篇...

热门文章

  1. MEMS mic之PDM mic(二)
  2. oracle 误删数据恢复
  3. 使用python读取和分析fasta文件
  4. 使用markman助力移动应用开发
  5. App逆向-安卓环境搭建-LineageOS刷机指南
  6. 航测无人机las点云数据生成DEM
  7. windows系统文件简述
  8. 程序员生涯困惑时的自我解脱
  9. Linux连接蓝牙键盘
  10. 2018电赛手势识别比赛经历