加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

同时将NAND FLASH和SD卡作为MASS STORAGE连接到PC机上

发布时间:2020-12-15 07:15:24 所属栏目:百科 来源:网络整理
导读:CSDN论坛上看到的帖子复制过来 一、to Veabol,最近比较忙,没时间帮你具体看了,下面我写了比较重要的几点,将就着看吧。 1,发送序列号: static LPCWSTR g_rgpszStrings0409[] = { ? g_RegInfo.szVendor,g_RegInfo.szProduct,L"14273211-1575-4252-9161-419

CSDN论坛上看到的帖子复制过来

一、to Veabol,最近比较忙,没时间帮你具体看了,下面我写了比较重要的几点,将就着看吧。
1,发送序列号:

static LPCWSTR g_rgpszStrings0409[] = {
? g_RegInfo.szVendor,g_RegInfo.szProduct,L"14273211-1575-4252-9161-419514811863"
};

static UFN_STRING_SET g_rgStringSets[] = {
? 0x0409,g_rgpszStrings0409,dim(g_rgpszStrings0409)
};

2,修改g_bScratch变量,
? g_bScratch=0x1 (表示支持两个LUN(logical unit number))

3,在STORE_Init中初始化两个Store,记住一定要将这些Store dismount掉。

4,在CSW中有个bCBWLUN表示这个CSW命令要发给哪个LUN
(LUN 从 0开始)。可以在BOT_HandleCBW这个函数中得到截获LUN的值,
然后用BOT_ExecuteCB这个函数来执行host端发送的命令,这些命令有可能是读、写等等。


二、已经基本调试成功了,目前是将NAND FLASH分成了两个盘符,在PC上可以显示这个盘符,暂时没用NAND和SD卡测试,估计问题不大。
现将所更改的内容说一下:
1、将PUBLIC驱动中transport.h的iSerialNumber设置在3,这样HOST才会向DEVICE发出读SerialNumber的命令。
? static LPCWSTR g_rgpszStrings0409[] = {??
? g_RegInfo.szVendor,L"14273211-1575-4252-9161-419514811863"??
};??
static UFN_STRING_SET g_rgStringSets[] = {??
? 0x0409,dim(g_rgpszStrings0409)??
};??
? L"14273211-1575-4252-9161-419514811863"就是SerialNumber,自己随便写。

2,BOT_HandleClassRequest函数中
? g_bScratch=0x1 (表示支持两个LUN(logical unit number))??

3,在STORE_Init中初始化两个Store,并且都dismount掉。??

4,在CSW中有个bCBWLUN表示这个CSW命令要发给哪个LUN??
(LUN 从 0开始)。可以在BOT_HandleCBW这个函数中得到截获LUN的值,
然后用BOT_ExecuteCB这个函数来执行host端发送的命令,这些命令有可能是读、写等等。??
block.c中的各函数要根据不同的lun来对不同的DISK_INFO操作。

-------------------------------------------------------

在此特别感谢yangkunzhen、menuconfig,以及其他给予帮助的朋友。

三、 在注册表中修改,
"MaxLUN"=dword:1 ; MaxLUN = usb mass storage disk numbers - 1
? "DeviceName0"="DSK1:" ; storage name of the disk. ;;for NAND
? "DeviceName1"="DSK3:" ;;for SD
? "Removable0"=dword:1
? "Removable1"=dword:1
? "Partitions0"=hex:00 ; 00=whole disk,01=Part00,02=Part01,04=Part02
? "Partitions1"=hex:00
好象还有,需要将F:WINCE600PUBLICCOMMONOAKDRIVERSUSBFNCLASSSTORAGE,那部分code移植过来,参考nand的挂载,做些修改。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读