有关CH375数据传输的问题

我在使用单片机向U盘里写东西时,第一次需要2分钟以后只需要6秒钟,请问这是为什么?

第一次要打开文件,376要查找目录项和FAT区,会占用一定得时间,第二次直接把数据写相关的扇区里面


但是我这个只要是文件内有数据(比如有个0),这时写一次就只需6s, 另外我还有个问题,我使用外部RAM 做缓冲区,一次最多只能传255个字节的数据吗????


如果文件内没有数据的话,很有可能FAT中没有为此文件分配FAT表,分配FAT表时,376要查询FAT表,分配一个没有占用的簇给此文件,所以需要占376操作U盘的时间。如果你外部RAM够大,可以把文件缓冲区设大点,一次多写几个扇区


能具体解释一下增大文件缓冲区的方法吗?我看CH375的头文件,感觉需要改mCmdParam.ByteWrite.mByteCount的类型,但是我改成unsigned short型时还是不好使????? 我现在希望将数据缓冲区做成512或者1024???


用扇区方式写比较快,参考http://wch.cn/download/list.asp?id=32


如果我只想用字节模式,但是还想要更大的缓冲区不行吗?、、


UINT8 mByteCount; /* 输入参数: 准备读取的字节数,不得大于MAX_BYTE_IO, 返回: 实际读出的字节数 */ UINT8 mByteBuffer[ MAX_BYTE_IO ]; /* 返回: 读出的数据块 */ 改这两个类型试试


我改了第一个类型UINT16 mByteCount;但是不好使。mByteBuffer[ MAX_BYTE_IO ]的类型不应该更改吧,因为这里定义的是数组数据类型


一次最多写256个,库内部限定死了,你可以用扇区方式写,或者用376,376字节方式写一次能写65536个,376和375引脚基本兼容


能不能将库内部的程序给我发一份???谢了!!! 还有就是“双DPTR 复制”,“单DPTR 复制”,"单DPTR和P2+R0复制",,,能解释一下这几个吗???


库内的程序不开源的。 DPTR是汇编中的一个16指针寄存器,可以认为是读写外部地址值的指针。读写外部RAM的低256字节可以用R0做指针。这是单片机的特性,你可以看单片机的方面的书


嗯,谢谢,我看你们CH375的资料写到可以提供不含库的源程序。能给我发一份吗? 个人信息保护,已隐藏


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