CH375DiskReady( )始终通不过,返回值0x38,请问是什么原因啊

我用ATmega32+CH375,采用的是内部2KRAM。为什么我的CH375DiskReady( )始终通不过,返回值一直是0x38。前面的初始化库,监测连接都没问题。按照程序注释说的,有些程序总是不返回成功,可以跳过,可是我执行下面的i = CH375FileOpen( )时,也总是不成功。我的DISK_BASE_BUF是完全按照库的头文件来的:

UINT8 DISK_BASE_BUF[512]; /* 外部RAM的磁盘数据缓冲区,缓冲区长度为一个扇区的长度,起始地址建议为偶地址 */ #ifdef FILE_DATA_BUF_LEN UINT8 FILE_DATA_BUF[ FILE_DATA_BUF_LEN ];

[i]文字[/i] 我没有给这两个BUFFER给定具体的起始地址,但是我觉得编译器(我用ICCAVR)会自动将其分配好的啊。为什么老是出错呢?在这儿折磨我好久了,求技术人员给指点一下吧。再这么拖下去去,项目节点就被耽误了啊![Emot]1[/Emot][Emot]1[/Emot][Emot]1[/Emot]

DISK-READY通不过的话,你可以测下你插上U盘之后,U盘的电压是多少?用ICC编译器的话,RAM的分配是由编译器自己定义的.如果你插上U盘电压够的话,建议你换一个U盘试下看


我插上U盘电压是够的,这个没问题!用的是LP7805,按手册上设计的。那看来我只好再换个盘试试了!


hcn大哥,还有就是如果拿MP3来代替U盘的话CH375V是不是就不支持啊?


你测的U盘电压有多少,有些U盘低于4.6V左右就不能正常工作了。换成MP3一样支持的。


不好意思,刚才测了一下,电压确实不够。我是按照PCB设计手册上做的啊,用的是L7805,两个大的电解电容也都加上了,可是插上U盘L7805输出电压就不行了,有时候量出来是3V左右,竟然还量出几次2.1V!晕死,而且始终是这个电压,并不仅仅是插上U盘的瞬间,电流大概在300mA左右(不接U盘18mA左右)!是不是大电流了啊?我看网上说U盘耗电在200mA左右,据此看,电流也是很不正常。


除了早期一些很垃圾的MP3,基本上MP3都能用的。至于供电,你的优盘能用300mA的电流,有点过头了吧。


楼主解决了吗问题?我用stc12单片机也遇到了一模一样的问题,CH375DiskReady通不过,然后CH375FileOpen也一直不行,返回0x82错误码


只有登录才能回复,可以选择微信账号登录