想请教关于CH375HF6.LIB使用的内部80字节左右的RAM具体情况,绝对地址什么的,好安全分配其它变量!
另外:CH375HFA.LIB的7E00H-7FFFH为外部RAM变量区,是不是不能改动的?现在想把外部RAM变量区分配在单片机内置的外部RAM(768字节)中,行不行?
RAM的绝对地址没有,要是改为内置的外部RAM的话,那么磁盘缓冲区的地址和文件缓冲区的地址需要改动,也就是往后面推512字节
现在是只用到磁盘缓冲区,放在内置外部RAM的0000H到01FFH,能不能在剩下的256字节的内置外部RAM放库用到的变量?要不要设置什么? 磁盘缓冲区往后面推512字节的话,内置外部RAM时放不下的!
那就磁盘缓冲区放在0X0000开始,文件缓冲区往后面定义就应该可以的
还是不明白,文件缓冲区用不到啊!
现在的问题是怎么把库用的变量(除了磁盘缓冲区和文件缓冲区)分配在单片机内置的外部RAM(768字节)中!
对于自带768字节的外部RAM的单片机,好象是在前768字节的RAM都是先用自带的768字节的RAM,超过768字节之后才用到你外扩的RAM
你说的是默认的情况,可以有个标志位切换访问地址重合的外部768字节的。问题是我用库CH375HFA.LIB的话,80字节的变量不知道被编译到哪去了,可能编译器会认为外部有个与单片机的16位地址线直接相连的外部RAM,实际上不是,自己外扩的RAM是和CH375不能同时选通的,现在只有将读写优盘用到的80字节的变量放在内置的外部RAM中或内部256字节的RAM中,但内置256字节的RAM可用的不多,得留给DEVICE的缓冲区64字节。 另外,用库CH375HF6.LIB时,主从模式一起编译通过后,主从都不能工作,而换成库CH375HFA.LIB后,从模式正常,主模式下生成的文件都是乱码。这说明:变量只有放在外部,而放在外部的话又不好放在内置外部RAM中! 现在若是将DEVICE的缓冲区(64字节)放在内置外部RAM,必将影响DEVICE的性能,本来速率就已经很慢了!
关于库CH375HFA.LIB的使用:按字节读写文件,有什么要注意的地方? 为什么写的文件中总是有被EWFILE.TXT的文件名替代掉的字符串!像是mCmdParam.Create.mPathName和mCmdParam.ByteWrite有公用的地方,库CH375HFA.LIB是没有定为LARGE模式的版本!