【求助】 移动文件指针的问题

我以单片机的SPI模块直接通过CH376提供的命令,模仿例程,用汇编操作CH376,建文件目录。 建2级子目录和3级子目录都需要移动文件指针,以写入父目录簇号。我还在完全正常的一级目录下新建文件后,在没有关闭文件的情况下,移动文件指针,试图从文件的第33个字节开始写入文件内容。 所有测试的结果是,子目录成功建立,文件成功建立,文件成功写入,但用WINHEX查看,任何一次移动文件指针都没有成功。所有的写入都是从偏移0的地址开始写入的。这样的结果,造成2级,3级子目录异常,写入的文件内容没有按指令偏移。 所有问题的症结,都是BYTE_LOCATE 没有执行的结果。反复调节命令,数据之间的延时,问题依旧。很郁闷,很着急。请沁恒的工程师指点。谢谢。 反复看过CH376的例程,唯一汇编例程中移动指针要么是移动到头,要么是移动到尾。有个移动到某个指定位置的汇编例程就好了。 多次请教,收益匪浅。感谢沁恒工程师的帮助。谢谢STUDY.

实际上载文件中移动文件指针和在创建目录时移动文件指针是一样的,在文件中移动文件指针的位置不要超过文件长度,打开文件之 文件指针只能移动一次,有没有测试过移动到文件末尾是否成功?


谢谢,还没有试过移动到文件末尾。在空文件中,不能移动指针,对不对?

还有一个具体问题。CMD_BYTE_LOCATE 命令需要4个字节的偏移参数,要求低字节在前。比如,打开文件后,要把指针向后移动32个字节,发出的偏移参数的顺序应该是 20 00 00 00 吗? 谢谢指点。


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