飛凌嵌入式S5P4418開發板Linux下實現模擬U盤教程

原創 2017-11-28 15:05:00 飛凌嵌入式S5P4418開發板Linux下實現模擬U盤教程
飛凌嵌入式 ARM Cortex-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 文件。



相關產品 >

  • OK4418/6818-C開發板

    飛凌提供S5P4418/s5p6818,S5P4418/s5p6818開發板,4418/6818開發板,s5p4418/s5p6818開發板解決方案,S5p4418/s5p6818多媒體解決方案,s5p4418硬件解決方案,更多S5P4418/s5p6818方案敬請聯系飛凌嵌入式。Cortex-A9 四核S5P4418/6818 支持Android5.1.1,Linux3.4.39、QT4.8.6等系統 了解詳情
    OK4418/6818-C開發板
  • OK3568-C開發板

    強而穩,國產芯,1Tops算力,多路高速接口|飛凌RK3568系列RK3568開發板基于國產工業級AI處理器RK3568四核64位Cortex-A55 處理器設計。RK3568作為國產化高性能處理器,瑞芯微RK3568芯片是一款定位中高端的通用型SoC,瑞芯微RK3568芯片是一款定位中高端的通用型SoC,NPU達到1Tops,飛凌RK3568系列核心板提供瑞芯微RK3568規格書_datasheet_數據手冊_原理圖等,


    了解詳情
    OK3568-C開發板

推薦閱讀 換一批 換一批