单片机通过CH375读写U盘文件的问题解答

请教各位:直接从U盘文件的第二行读用什么方法?谢谢! 如:1111111111111111111111111111111 2222222222222222222222222222222 3333333333333333333333333333333


换行符对应的数据是0x0d、0x0a,从第n行开始读,只要分析出第n-1组0x0d、0x0a就可以了


unsigned char volatile xdata CH375_CMD_PORT _at_ 0xBDF1; /* CH375命令端口的I/O地址 */ unsigned char volatile xdata CH375_DAT_PORT _at_ 0xBCF0; /* CH375数据端口的I/O地址 */ 为什么是 0xBDF1和 0xBCF0 呢?

还有资料里有这样一段话: U4(单片机89C51 等)用于测试CH372 的USB 数据通讯功能,本例中CH372 的地址A0 由U4 的 P20 驱动,CH372 的片选线CS#由U4 的P21 驱动,所以CH372 的命令口的地址可以是FDXXH(例子程 序中使用地址BDF1H),数据口的地址可以是FCXXH(例子程序中使用地址BCF0H)

只看见资料上说跟硬件电路有关,到底是怎么得来这个数的呢?

void CH375_WR_CMD_PORT( unsigned char cmd ) { /* 向CH375的命令端口写入命令,周期不小于4uS,如果单片机较快则延时 */ delay2us(); CH375_CMD_PORT=cmd; delay2us(); } 上面这个函数是向命令端写入命令,CH372资料上面写的是A0=0的时候才能写命令,为什么这个函数不需要,而且没有遵守资料上所说的时序。 如果是那样的话,单片机为什么要跟 #CS #WR #RD 连接,连接了之后程序根本就没对这几个引脚操作,连接起来干嘛的?以上两个问题谁能回答我!


我也有这个问题 顶!!!


该地址涉及到单片机的总线接口方面的知识,建议先了解一下51单片机的外部总线。


顶,楼主好贴


用贵公司的374芯片,在读有些U盘时,ReadFormatCapacities返回错误,电脑是RSET,如果用374解决该问题?


是调用库还是自己写的?多获取几次就可以了,U盘获取容量比较慢,初次获取不成功,延时200-500MS再次获取。


我使用376芯片,先写命令0X2F,再写文件名,在写0X34,但是文件名还是不能在U盘上建立,为什么?


有没有对U盘初始化操作,并且初始化一定要通过,才可以在U盘中创建文件。 参考CH376的例程 到公司网站上下载CH376EVT.ZIP


你好,我想用mega1280或者mega2560来代替mega128,这样的话,CH375B基于mega128封装的那个文件还支持吗?


不支持了,你选用CH376芯片。


可是你们冯工说支持mega1280或者1281


mark!!


您好,我用CH375B,STC12C5A60S2单片机非总线读写U盘,可以正常读写已知路径、文件名的文件。

但我现在想枚举某目录下的文件名,发现相关例程都是总线方式读写的,直接复制过来不起作用,请问如何修改呢?项目用的IO比较多,不想占用总线了,用IO模拟总线,在用枚举文件函数时没有参考,不知所措,求热心朋友解答,谢谢!


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