zouyf
驱动牛犊
驱动牛犊
  • 注册日期2007-08-29
  • 最后登录2008-03-16
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望9点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
阅读:1568回复:5

有偿求Wince4.2+PXA255平台下SDMMC驱动程序

楼主#
更多 发布于:2007-09-22 00:21
压缩包里是串口输出和截取的有关SDMMC的注册表。平台是Wince4.2和PXA255,问题是在平台里看不到sd目录,存储管理器里也看不到任何东西。我曾经请教过一个做PCMCIA驱动的老师,他说是分区驱动没加载上,以至于不能加载文件系统。板子是我们自己做的,BSP修改于wince4.2自带的xsc1bd,sd工作模式,一位线宽,时钟设置为0 (25MHz)或6(312.5KHz)都曾经试过。请求高手指点。


导师要求十一前做出来,所以我现在很着急,如果有人做过这种平台环境下的sdmmc驱动开发,代码好使,而且想出售的话,我想买一下。我的联系方式: yunfeng_zouyf@yahoo.com.cn
附件名称/大小 下载次数 最后更新
sdmmc zou.rar (430KB)  16 2007-09-22 00:21
microsun
论坛版主
论坛版主
  • 注册日期2002-11-11
  • 最后登录2014-07-18
  • 粉丝0
  • 关注0
  • 积分1052分
  • 威望1159点
  • 贡献值0点
  • 好评度848点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-09-22 11:09
我大概看了一下高度信息,驱动被调到了,
应该还是READ/WRITE有问题,或者打一下信息看看每调的每一个IOCTL是不是都返回了正确的值.

多说一句,做人要诚实,做学问要踏实,你这样糊弄导师,毕业还找工作吗?导师招学生只为了赚钱,而公司招人是为了干活,要求不一样,肚子里没货,怎样才能通过面试啊.听不听由你. 这句话也送给所有看到此贴的人,包括我自己,.
学海无涯
zouyf
驱动牛犊
驱动牛犊
  • 注册日期2007-08-29
  • 最后登录2008-03-16
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望9点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-09-22 12:47
首先感谢楼上版主的指点!关于read/writer的程序,我一直认为是微软依据SD协议写的,应该是通用的,就没想到修改这部分代码,如果要改动这部分代码,应该从哪方面考虑呢?
另附:
对于楼上版主的批评,我虚心接受。我也想自己弄出来,但估计需要一段时间,项目时间上恐怕不允许,而且导师不是做这方面的,不懂这块,现在是我一个人在这闭门造车,周围无人可问(我们是军校,学校在这方面资源很差。而且周围有几个都是做Liniux,而且都还没做过SD卡的)。买代码自己研究研究,看自己的问题出在哪也是导师授意的。
microsun
论坛版主
论坛版主
  • 注册日期2002-11-11
  • 最后登录2014-07-18
  • 粉丝0
  • 关注0
  • 积分1052分
  • 威望1159点
  • 贡献值0点
  • 好评度848点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-09-22 18:26
不好意思啦,我还以为是现在那些懒汉呢,我多虑了:)

像你这种问题,买代码也不一定有用,如果你买来的代码是在和你完全相同的板上测过的就可以,否则,花钱买了东西可能根本不能运行.

SD在CE中属于存储设备.首先得加上FAT文件系统,storage manger的支持.为了操作方便,也可以在控制面板中加上storage manger,但这不是必须的.
然后在注册表中加上存储设备用的ICLASS,这从其它的DSK设备的注册表下抄一个就行.
名字一定要叫DSK.
这样就能调到我们的驱动了.

一旦能调到驱动的READ/WRITE,流程上就没有问题了.目录不出来或者是存不住文件一般都是读写的时序有问题.读出来数不对或者不能把数据正确的写入.
这种情况下就得仔细调读写的函数.每一个命令发出去以后检查一下状态,状态对了再发下一个,不对就检查为什么不对. 调试信息等对时序影响都很大,一般来说不是系统操作的太快了就是太慢了.
我觉得你可以用RELEASE版调,因为DEBUG调好了RELEASE版不一定行,到时还得折腾很久.

你这个问题可以找做LINUX的哥们调一下,已经与操作系统没有关系了.
SD卡我没有具体调过,所以细节上的东西帮不上你,还得靠你自己.

profiles下的MountFlags最好去掉吧,我太确定那个东西有什么影响.
学海无涯
zouyf
驱动牛犊
驱动牛犊
  • 注册日期2007-08-29
  • 最后登录2008-03-16
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望9点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-09-28 12:48
终于做出来了,现在在平台里能看到SD、MMC卡了,也能往卡里读写了,但有个小问题就是,把卡插好后,加电启动平台,有时会卡在卡初始化结束的地方不动了。而不插卡加电启动平台,平台能顺利启动完成,再插卡,卡就能完成初始化,进入正常状态。
zhuxiaofeng
驱动小牛
驱动小牛
  • 注册日期2007-04-06
  • 最后登录2010-04-15
  • 粉丝0
  • 关注0
  • 积分1013分
  • 威望243点
  • 贡献值0点
  • 好评度202点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-09-28 22:41
恭喜呀,蛮快的。呵呵

这个问题,很容易查的,
初始化结束后会去调用你的DISK_GET_INFO
还有DISK_IOCTL_READ的,
在这里打个断点就知道DOWN到那里了。

另外仔细比较两者的区别,也很容易比较出来的。
做一个出色的程序员!
游客

返回顶部