8423|18

74

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

SDHC驱动添加问题 [复制链接]

大家好!
我在BSP驱动文件夹下添加了SDHC文件夹,其下包含SDHC和SDHCBASE子文件夹,两个子文件夹中source文件最后如下

SOURCES = SDIOController.cpp \

SOURCES = SDHCMain.cpp \
          SDIOControllerBase.cpp

我是不是要在platform.reg文件里找到名称为SDIOController和SDIOControllerBase的注册表项呢?没有是不是不能识别SDHC卡?
还有这些原文件生成的DLL的名称是不是和SOURCE文件名称一样呢?在platform.reg中是否可以找到,我现在找不到这样的项

我现在的4G的SDHC也不能识别


我用的是开发板商提供的由4.2生成5.0的BSP

我还想想问一下sdbus2.dll这个在注册表中也找不到了,连sdbus.dll相关信息也没了
请大家指点

最新回复

希望楼主把这个问题解决了后写一篇总结,期待中……  详情 回复 发表于 2010-6-22 15:22
点赞 关注

回复
举报

70

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
这是SDHC文件夹下的build文件,太长,我放了一部分
红字的是不是有问题呢

BUILD: [Thrd:Sequence:Type  ] Message
BUILD: [00:0000000000:PROGC ] Checking for \WINCE500\sdk\bin\i386\srccheck.exe.
BUILD: [00:0000000001:PROGC ] SrcCheck exit code: 0 (dec).
BUILD: [00:0000000002:PROGC ] Compile and Link for ARM.
BUILD: [00:0000000003:PROGC ] Loading E:\WINCE500\PLATFORM\new2440\Build.dat.
BUILD: [00:0000000004:PROGC ] Done.
BUILD: [00:0000000005:PROGC ] Computing include file dependencies:
BUILD: [00:0000000006:PROGC ] Checking for SDK include directory: E:\WINCE500\sdk\ce\inc.
BUILD: [00:0000000007:PROGC ] Scan \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\
BUILD: [00:0000000008:WARNS ] Directory: E:\WINCE500\platform\new2440\src\inc\ does not exist.
BUILD: [00:0000000009:WARNS ] Directory: \WINCE500\PLATFORM\new2440\DRIVERS\SDDriver_INC\ does not exist.
BUILD: [00:0000000010:INFO  ] Will Compile \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\sdhcmain.cpp because target: obj\ARMV4I\retail\sdhcmain.obj is missing.
BUILD: [00:0000000011:INFO  ] Will Compile \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\sdiocontrollerbase.cpp because target: obj\ARMV4I\retail\sdiocontrollerbase.obj is missing.
BUILD: [00:0000000012:PROGC ] Scan \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHC\
BUILD: [00:0000000013:INFO  ] Will Compile \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHC\sdiocontroller.cpp because target: obj\ARMV4I\retail\sdiocontroller.obj is missing.

BUILD: [00:0000000014:PROGC ] Saving E:\WINCE500\PLATFORM\new2440\Build.dat.
BUILD: [00:0000000015:INFO  ] Done.
BUILD: [00:0000000016:PROGC ] Compiling \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\ directory.
BUILD: [00:0000000017:PROG  ] 'NMAKE.EXE   -i -c BUILDMSG=Stop.  NOLINK=1 NOPASS0=1'
BUILD: [01:0000000018:INFO  ] makefile.def: BUILDROOT is E:\WINCE500\PLATFORM\new2440

BUILD: [01:0000000019:INFO  ] makefile.def: Including E:\WINCE500\PLATFORM\new2440\sources.cmn

BUILD: [01:0000000020:INFO  ] Directory: E:\WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE

BUILD: [01:0000000021:INFO  ] TARGETNAME: SC2440_SDHCBase

BUILD: [01:0000000022:INFO  ] makefile.def: Including E:\WINCE500\public\common\oak\misc\sources.ReleaseType_PLATFORM

BUILD: [01:0000000023:PROGC ] Compiling .\sdhcmain.cpp

BUILD: [01:0000000024:INFO  ] cl -nologo    /Gy -Foobj\ARMV4I\retail\sdhcmain.obj -c -IARM\ -I. -I..\..\SDDriver_INC -IE:\WINCE500\platform\new2440\src\inc -IE:\WINCE500\public\common\sdk\inc -IE:\WINCE500\public\common\oak\inc -IE:\WINCE500\public\common\ddk\inc -IE:\WINCE500\sdk\CE\inc -I.\Resource\0409 -Ox -Os -GF -Zi -FdE:\WINCE500\platform\new2440\lib\ARMV4I\retail\SC2440_SDHCBase.pdb -DUNICODE -D_UNICODE -DUNDER_CE=500 -D_WIN32_WCE=500 -DWINCEOEM -DWINCEINTERNAL -DWIN32 -DSTRICT -DARM -DARMV4I -D_ARM_   -DINTERNATIONAL -DL0409 -DINTLMSG_CODEPAGE=1252 -QRimplicit-import- -W3   -QRarch4T -DTHUMBSUPPORT -QRinterwork-return  E:\WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\.\sdhcmain.cpp

BUILD: [01:0000000025:INFO  ] sdhcmain.cpp

BUILD: [01:0000000026:PROGC ] Compiling .\sdiocontrollerbase.cpp

BUILD: [01:0000000027:INFO  ] cl -nologo    /Gy -Foobj\ARMV4I\retail\sdiocontrollerbase.obj -c -IARM\ -I. -I..\..\SDDriver_INC -IE:\WINCE500\platform\new2440\src\inc -IE:\WINCE500\public\common\sdk\inc -IE:\WINCE500\public\common\oak\inc -IE:\WINCE500\public\common\ddk\inc -IE:\WINCE500\sdk\CE\inc -I.\Resource\0409 -Ox -Os -GF -Zi -FdE:\WINCE500\platform\new2440\lib\ARMV4I\retail\SC2440_SDHCBase.pdb -DUNICODE -D_UNICODE -DUNDER_CE=500 -D_WIN32_WCE=500 -DWINCEOEM -DWINCEINTERNAL -DWIN32 -DSTRICT -DARM -DARMV4I -D_ARM_   -DINTERNATIONAL -DL0409 -DINTLMSG_CODEPAGE=1252 -QRimplicit-import- -W3   -QRarch4T -DTHUMBSUPPORT -QRinterwork-return  E:\WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\.\sdiocontrollerbase.cpp

BUILD: [01:0000000028:INFO  ] sdiocontrollerbase.cpp

BUILD: [01:0000000029:PROGC ] Linking E:\WINCE500\platform\new2440\lib\ARMV4I\retail\SC2440_SDHCBase.lib

BUILD: [01:0000000030:INFO  ]         link -lib -out:E:\WINCE500\platform\new2440\lib\ARMV4I\retail\SC2440_SDHCBase.lib -machine:thumb @C:\DOCUME~1\wpvm\LOCALS~1\Temp\nm25.tmp

BUILD: [01:0000000031:INFO  ] Stop.

BUILD: [00:0000000032:PROGC ] Compiling \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHC\ directory.
BUILD: [00:0000000033:PROG  ] 'NMAKE.EXE   -i -c BUILDMSG=Stop.  NOLINK=1 NOPASS0=1'
BUILD: [01:0000000034:INFO  ] makefile.def: BUILDROOT is E:\WINCE500\PLATFORM\new2440

BUILD: [01:0000000035:INFO  ] makefile.def: Including E:\WINCE500\PLATFORM\new2440\sources.cmn

BUILD: [01:0000000036:INFO  ] Directory: E:\WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHC

BUILD: [01:0000000037:INFO  ] TARGETNAME: SDHC_SC2440

BUILD: [01:0000000038:INFO  ] makefile.def: Including E:\WINCE500\public\common\oak\misc\sources.ReleaseType_PLATFORM

BUILD: [01:0000000039:PROGC ] Compiling .\sdiocontroller.cpp

BUILD: [01:0000000040:INFO  ] cl -nologo    /Gy -Foobj\ARMV4I\retail\sdiocontroller.obj -c -IARM\ -I. -I..\SDHCBase -IE:\WINCE500\platform\new2440\inc -IE:\WINCE500\public\common\sdk\inc -IE:\WINCE500\public\common\oak\inc -IE:\WINCE500\public\common\ddk\inc -IE:\WINCE500\sdk\CE\inc -I.\Resource\0409 -Ox -Os -GF -Zi -FdE:\WINCE500\platform\new2440\target\ARMV4I\retail\SDHC_SC2440.pdb -DUNICODE -D_UNICODE -DUNDER_CE=500 -D_WIN32_WCE=500 -DWINCEOEM -DWINCEINTERNAL -DWIN32 -DSTRICT -DARM -DARMV4I -D_ARM_   -DINTERNATIONAL -DL0409 -DINTLMSG_CODEPAGE=1252 -QRimplicit-import- -W3   -QRarch4T -DTHUMBSUPPORT -QRinterwork-return  E:\WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHC\.\sdiocontroller.cpp

 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我在platform.reg中添加如下,会有什么效果吗?
[HKEY_LOCAL_MACHINE\DRIVERS\SDHC\SDHC]
        "Dll"="SDIOController.dll"

[HKEY_LOCAL_MACHINE\DRIVERS\SDHC\SDHCBASE]
        "Dll"="SDHCMain.dll"

[HKEY_LOCAL_MACHINE\DRIVERS\SDHC\SDHCBASE]
        "Dll"="SDIOControllerBase.dll"
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

4
 
没效果,还是不识别
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

5
 
我是不是要在platform.reg文件里找到名称为SDIOController和SDIOControllerBase的注册表项呢?没有是不是不能识别SDHC卡?
这个是肯定的。

还有这些原文件生成的DLL的名称是不是和SOURCE文件名称一样呢?在platform.reg中是否可以找到,我现在找不到这样的项
DLL肯定要与sources和def中的名称一致,否则会出错的。

我也试了一下SDHC,但没成功,现在要毕业了,欢迎一起交流

4.2升级到5.0的BSP,不好弄,不过现在我感觉也不是没希望,应该也可以的。。。


 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

6
 
新的build文件
nce:Type  ] Message
BUILD: [00:0000000000:PROGC ] Checking for \WINCE500\sdk\bin\i386\srccheck.exe.
BUILD: [00:0000000001:PROGC ] SrcCheck exit code: 0 (dec).
BUILD: [00:0000000002:PROGC ] Compile and Link for ARM.
BUILD: [00:0000000003:PROGC ] Loading E:\WINCE500\PLATFORM\new2440\Build.dat.
BUILD: [00:0000000004:PROGC ] Done.
BUILD: [00:0000000005:PROGC ] Computing include file dependencies:
BUILD: [00:0000000006:PROGC ] Checking for SDK include directory: E:\WINCE500\sdk\ce\inc.
BUILD: [00:0000000007:PROGC ] Scan \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\
BUILD: [00:0000000008:WARNS ] Directory: E:\WINCE500\platform\new2440\src\inc\ does not exist.
BUILD: [00:0000000009:WARNS ] Directory: \WINCE500\PLATFORM\new2440\DRIVERS\SDDriver_INC\ does not exist.
BUILD: [00:0000000010:INFO  ] Will Compile \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\sdhcmain.cpp because target: obj\ARMV4I\retail\sdhcmain.obj is missing.
BUILD: [00:0000000011:INFO  ] Will Compile \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\sdiocontrollerbase.cpp because target: obj\ARMV4I\retail\sdiocontrollerbase.obj is missing.
BUILD: [00:0000000012:PROGC ] Scan \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHC\
BUILD: [00:0000000013:INFO  ] Will Compile \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHC\sdiocontroller.cpp because target: obj\ARMV4I\retail\sdiocontroller.obj is missing.
BUILD: [00:0000000014:PROGC ] Saving E:\WINCE500\PLATFORM\new2440\Build.dat.
BUILD: [00:0000000015:INFO  ] Done.
BUILD: [00:0000000016:PROGC ] Compiling \WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE\ directory.
BUILD: [00:0000000017:PROG  ] 'NMAKE.EXE   -i -c BUILDMSG=Stop.  NOLINK=1 NOPASS0=1'
BUILD: [01:0000000018:INFO  ] makefile.def: BUILDROOT is E:\WINCE500\PLATFORM\new2440

BUILD: [01:0000000019:INFO  ] makefile.def: Including E:\WINCE500\PLATFORM\new2440\sources.cmn

BUILD: [01:0000000020:INFO  ] Directory: E:\WINCE500\PLATFORM\new2440\DRIVERS\SDHC\SDHCBASE
 
 
 

回复

57

帖子

0

TA的资源

一粒金砂(初级)

7
 
引用 4 楼 jbb0523 的回复:
我是不是要在platform.reg文件里找到名称为SDIOController和SDIOControllerBase的注册表项呢?没有是不是不能识别SDHC卡?
这个是肯定的。

还有这些原文件生成的DLL的名称是不是和SOURCE文件名称一样呢?在platform.reg中是否可以找到,我现在找不到这样的项
DLL肯定要与sources和def中的名称一致,否则会出错的。

我也试……


呵呵,谢谢
我还在实验中
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

8
 
SDHC_SC2440.dll这个驱动又是怎么回事呢?要能只用4G的SDHC卡,到底需要什么样的驱动文件啊,迷糊,望做过的朋友指点
 
 
 

回复

46

帖子

0

TA的资源

一粒金砂(初级)

9
 
mark
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

10
 
我现在的问题是不了解要支持4G的SDHC卡到底需要哪些驱动,
我开发板的bsp是由4.2升级的5.0的
有了解的朋友指点下啊
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

11
 
5.0中你添加IMGSDBUS2这个宏就可以支持4G了。
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

12
 
这个问题不是由SDHC驱动引起,而是由SDBus驱动引起的,还有个可能的原因就是你的卡没有格式化成FAT32的文件系统,或者是你顶制系统的时候没有将FAT32文件系统包含进你系统中
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

13
 
请问,如何把FAT32文件系统包含进系统?
这个我没注意
不知道是否包含进来了
引用 11 楼 liaifeilove 的回复:
这个问题不是由SDHC驱动引起,而是由SDBus驱动引起的,还有个可能的原因就是你的卡没有格式化成FAT32的文件系统,或者是你顶制系统的时候没有将FAT32文件系统包含进你系统中
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(中级)

14
 
我的bsp是由4.2升级到5.0的,这种情况也是要添加IMGSBUS2=1吗?还有其他改动吗??
引用 10 楼 liaifeilove 的回复:
5.0中你添加IMGSDBUS2这个宏就可以支持4G了。
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

15
 
1. 添加IMGSDBUS2这个宏。
2. 卡没有格式化成FAT32的文件系统
3. 定制系统的时候将FAT32文件系统包含进你系统中。
4. 确保你的SD 插卡中断处理是正确的(sdhc驱动,和 OAL层中断处理)。
5. 确保你的硬件是正确的

 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

16
 
1 如何将FAT32包含进我的系统?我刚才看了一下,PB的Catalog下的文件系统里的storage manager有一个fat file system,你指的是这个吗?我已经添加过了
2 卡是否有格式化不确定,现在想格式化,读卡器找不到.....
3 关于中断处理这个我要看看了,说实话,我没写过驱动文件呢

引用 14 楼 liaifeilove 的回复:
1. 添加IMGSDBUS2这个宏。
2. 卡没有格式化成FAT32的文件系统
3. 定制系统的时候将FAT32文件系统包含进你系统中。
4. 确保你的SD 插卡中断处理是正确的(sdhc驱动,和 OAL层中断处理)。
5. 确保你的硬件是正确的
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

17
 
1 是的
2 不懂
3 楼主最好把代码看懂了,不要想碰巧调出来,那样是对自已技术的不负责任。。。
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

18
 
学习中。。。
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

19
 
希望楼主把这个问题解决了后写一篇总结,期待中……
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表