没有合适的资源?快使用搜索试试~ 我知道了~
在WinCE下,应用程序直接读写擦除flash设备的方法[文].pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 44 浏览量
2021-10-14
09:37:59
上传
评论
收藏 10KB PDF 举报
温馨提示
试读
5页
在WinCE下,应用程序直接读写擦除flash设备的方法[文].pdf
资源推荐
资源详情
资源评论
在网上的很多论坛中都看到有人提问:应用程序如何直接读写 Flash 的扇区,或者是类似的问题。总之,就是希望应用
程序能够直接访问 Flash 设备,直接读写扇区的数据,或者作其他的操作。这几天没事,就尝试着做了一下,把我的方
法介绍给大家。
先做个简单的介绍 。WinCE 支持 Flash 设备,一般指 Nandflash 或者是 NORFlash,采用的架构一般是 FAL+FMD 架构,
我们实现 FMD 相关的接口函数, Flash 的驱动就算完成了。当 WinCE 启动以后,我们能够看到 Flash 设备的磁盘。我
们可以操作磁盘上面的文件,但是不能直接操作 flash 设备,对 Flash 设备的操作无非就是:读,写,擦除,读 ID。
现在开始介绍实现的方法。我们如果想在应用程序中直接调用 FMD 中的 FMD_ReadSector(..) ,FMD_WriteSector(..) ,
FMD_EraseBlock(..) 是不太现实的。这里再补充一下,这三个函数分别是 Flash 的读扇区,写扇区,擦除块的函数。好
像有点罗嗦了。但是我们可以在应用程序中调用到 FMD_OEMIoControl(..) 函数,这个是可以做到的。所以我们需要改
一下 Flash 设备的驱动程序,也就是改 Flash 设备驱动中的 FMD_OEMIoControl(..) 这个函数。我的改动如下:
BOOL FMD_OEMIoControl(DWORD dw IoControlCode, PBYTE pInBuf, DWORD nInBufSize, PBYTE pOutBuf,
DWORD nOutBufSize, PDWORD pBytesReturned)
{
PFMDInterface pInterface = (PFMDInterface)pOutBuf;
RETAILMSG(1, (TEXT("FMD_OEMIoControl: control code is 0x%x"), dwIoControlCode));
sw itch(dw IoControlCode)
{
case IOCTL_FMD_GE T_INTERFACE :
if (!pOutBuf || nOutBufSize < sizeof(FMDInterface))
{
DEBUGMSG(1, (TEXT("FMD_OEMIoControl: IOCTL_FMD_GET_INTERFACE bad parameter(s).")));
return(FALSE );
}
pInterface->cbSize = sizeof(FMDInterface);
pInterface->pInit = FMD_Init;
pInterface->pDeInit = FMD_Deinit;
pInterface->pGetInfo = FMD_GetInfo;
pInterface->pGetInfoE x = NULL; //FMD_GetInfoE x;
pInterface->pGetBlockStatus = FMD_GetBlockStatus;
pInterface->pSetBlockStatus = FMD_SetBlockStatus;
pInterface->pReadSector = FMD_ReadSector;
pInterface->pWriteSector = FMD_WriteSector;
pInterface->pE raseBlock = FMD_E raseBlock;
pInterface->pP ow erUp = FMD_Pow erUp;
pInterface->pP ow erDow n = FMD_Pow erDown;
pInterface->pGetP hysSectorAddr = NULL;
pInterface->pOE MIoControl = FMD_OEMIoControl;
break;
case 0xff123456:
FMD_ReadSector(..); //调用读 Sector 函数
资源评论
cyh76339129
- 粉丝: 1
- 资源: 14万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功