[向Veabol提问] mass storage 映射问题

fire_drangon 2010-04-21 11:05:12
之前看过 Veabol的一个帖子
http://topic.csdn.net/u/20090224/13/d3d27ac2-a6f3-4ced-9025-7b87d7de47d4.html?1343

主要是把NANDFLASH和 SD都映射成U盘使用,


Veabol总结的方法如下:

----------------------
1、将PUBLIC驱动中transport.h的iSerialNumber设置在3,这样HOST才会向DEVICE发出读SerialNumber的命令。
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)
};
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操作。
--------------------------

目前 我的已经映射出两个盘符了,不过都是NANDFLASH,也可操作内容,

对于第4点不是太明白,截获LUN值之后该怎么做?
...全文
112 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fire_drangon 2010-04-26
  • 打赏
  • 举报
回复
还没来的及研究,又有新的任务了,这个估计要过几天才能去看了,先给分吧
博说医械研发 2010-04-22
  • 打赏
  • 举报
回复
block.cpp中的变量:
static HANDLE g_hStore;
static DISK_INFO g_diDiskInfo;
static TCHAR g_szDeviceName[PRX_DEVICE_NAME_LEN];
是针对一个盘符的,如果你用两个盘符就要做两套,且代码中用到这些变量的地方都根据两个盘符做两次。

你的MSN是larryximuyi吧?能收到你MSN发来的消息,但是每次发给你的时候都显示发送失败,发给其他人就不会失败,不知道什么原因,所以估计你昨天基本上没收到我几条回复。






phison-UP10量产工具v1.78.00(U盘量产工具),亲测成功!!!设备名称: [I:]USB Mass Storage Device(Kingston DataTraveler 2.0 USB Device) PNP设备ID: VID = 0951 PID = 1607 设备序列号: 5B780FA602D0  设备版本: PMAP  设备类型: 标准USB设备 - USB2.0高速 芯片制造商: skymedi(擎泰)  芯片型号: SK6281/PS2232(版本号PMAP) 产品制造商: Kingston(金士顿)  产品型号: DataTraveler 2.0    U盘:金士顿2G 型号DMFP/2GB 量产工具:phison-UP10量产工具v1.78.00 方法: 1、将下载的phison-UP10量产工具v1.78.00解压到任一目录。 2、运行F1_B4_v178.exe或F2_v178.exe点击“取得信息”,如果从“测试报告”窗口有内容说明可以使用此工具量产你的U盘;如果弹出“没有找到设备”信息你只好另找了。 3、退出程序 4、运行ParamEdt.exe,配置--模式栏输入“21”,再选择“select”可选光盘ISO或BIN文件。然后按另存为一个1.ini文件。注意F1对应F1_B4_v178.exe;F2对应F2_v178.exe。(或者可直接配置好ini附后(1.ini),在文件中直接改ISO文件存放目录也可。) 1.ini文件 [Extra] Mode=21 [Misc] CDROM Image=D:\系统\萝卜家园 Ghost XP SP3 电脑城装机版 8.8.iso (←改成ISO文件存放目录) 5、再运行F1_B4_v178.exe或F2_v178.exe点击“开始”。稍等一会……下面变成绿色的框就成功了。再点“弹出”,重新插入U盘。 6、此量产工具模式可选择很多,有一些并不适用自己的U盘,其它参数你也需要多试一试才能成功。 在BIOS中启动设置为USB-CDROM 恢复时选择PE模式 还原 用原来的量产工具,选择模式3,重新量产一次。 注意:镜像文件选择留空就行了。 再用F1_B4_v178.exe,ini文件选param,方法同上。(不能i还原的,可进行低格)

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧