/* xWriteCH375Cmd(0x06); xWriteCH375Data(0x55); hour = xReadCH375Data(); mStopIfError() ;*/ 是不是用上面的代码就行,这个手册里有例子
可以,但需要判断hour是否等于0xAA
不等于,现在等于FF,说明有什么问题
可以返回0xAA,说明什么?现在可以返回0xAA 如果xWriteCH375Data(0x44); 就返回0xBB正确吗? 还有如果要用查询方试,还用接INT#引脚吗?
(1)现在等于FF,说明硬件连接或接口程序存在问题 (2)写数据0x55,返回0xAA,说明硬件连接或接口程序存基本没问题 (3)是返回0xBB,对于这个命令解释,希望您去看一下手册
看了,明白了。 为什么 CH375DiskReady 总返回82h,愁
while ( 1 ) { Put0_String( "Wait Udisk" ); while ( CH375DiskStatus != DISK_CONNECT ) xQueryInterrupt( );
/* 查询CH375中断并更新中断状态,等待U盘插入 */ LED_OUT_ACT( ); /* LED亮 */ mDelay100mS( ); /* 延时,可选操作,有的USB存储器需要几十毫秒的
延时 */ mDelay100mS( ); /* 检查U盘是否准备好,有些U盘不需要这一步,但是某些U盘必须要执行这一步才能工作
*/ for ( i = 0; i < 5000; i ++ ) { /* 有的U盘总是返回未准备好,不过
可以被忽略 */ Put0_String( "Ready " ); // i = CH375DiskReady( ); // mStopIfError( i ); mDelay100mS( ); s = CH375DiskReady( ); mDelay100mS( ); if (s == ERR_SUCCESS ) { Put0_String( "Ready SUCCESS123456789 " ); return; } else { Put0_String( "Ready SUCCESS1 " ); //mStopIfError( s ); /* 查询磁盘是否准备好 */ } } 我的代码有问题吗?
程序没有什么问题,你去看看14楼hcn的回复,那条回复基本上把应该要注意的地方全说明白了。
不插U盘时,D+ D-,个是多少V
这样吧,硬件方面的问题已经给你说明改如何处理了,程序也有可能会导致这个问题,你把程序发送的袄tech@wch.cn邮箱里.
D+ 3.3V 左右 D- 0.4V左右 信号线上不要串接电阻
在现我不插U盘, D+ 0V D- OV。一般什么原因造成的。
插上U盘D+才3V多,不插0V怎么回事。别说芯片坏了。 我把程序发到tech@wch.cn信籍里了。
我等。谁有时间帮忙说一下。小弟感激涕流
在现我不插U盘, D+ 0V D- OV。一般什么原因造成的。