想請教關(guān)于CH375HF6.LIB使用的內(nèi)部80字節(jié)左右的RAM具體情況,絕對地址什么的,好安全分配其它變量!
另外:CH375HFA.LIB的7E00H-7FFFH為外部RAM變量區(qū),是不是不能改動的?現(xiàn)在想把外部RAM變量區(qū)分配在單片機(jī)內(nèi)置的外部RAM(768字節(jié))中,行不行?
RAM的絕對地址沒有,要是改為內(nèi)置的外部RAM的話,那么磁盤緩沖區(qū)的地址和文件緩沖區(qū)的地址需要改動,也就是往后面推512字節(jié)
現(xiàn)在是只用到磁盤緩沖區(qū),放在內(nèi)置外部RAM的0000H到01FFH,能不能在剩下的256字節(jié)的內(nèi)置外部RAM放庫用到的變量?要不要設(shè)置什么? 磁盤緩沖區(qū)往后面推512字節(jié)的話,內(nèi)置外部RAM時放不下的!
那就磁盤緩沖區(qū)放在0X0000開始,文件緩沖區(qū)往后面定義就應(yīng)該可以的
還是不明白,文件緩沖區(qū)用不到啊!
現(xiàn)在的問題是怎么把庫用的變量(除了磁盤緩沖區(qū)和文件緩沖區(qū))分配在單片機(jī)內(nèi)置的外部RAM(768字節(jié))中!
對于自帶768字節(jié)的外部RAM的單片機(jī),好象是在前768字節(jié)的RAM都是先用自帶的768字節(jié)的RAM,超過768字節(jié)之后才用到你外擴(kuò)的RAM
你說的是默認(rèn)的情況,可以有個標(biāo)志位切換訪問地址重合的外部768字節(jié)的。問題是我用庫CH375HFA.LIB的話,80字節(jié)的變量不知道被編譯到哪去了,可能編譯器會認(rèn)為外部有個與單片機(jī)的16位地址線直接相連的外部RAM,實際上不是,自己外擴(kuò)的RAM是和CH375不能同時選通的,現(xiàn)在只有將讀寫優(yōu)盤用到的80字節(jié)的變量放在內(nèi)置的外部RAM中或內(nèi)部256字節(jié)的RAM中,但內(nèi)置256字節(jié)的RAM可用的不多,得留給DEVICE的緩沖區(qū)64字節(jié)。 另外,用庫CH375HF6.LIB時,主從模式一起編譯通過后,主從都不能工作,而換成庫CH375HFA.LIB后,從模式正常,主模式下生成的文件都是亂碼。這說明:變量只有放在外部,而放在外部的話又不好放在內(nèi)置外部RAM中! 現(xiàn)在若是將DEVICE的緩沖區(qū)(64字節(jié))放在內(nèi)置外部RAM,必將影響DEVICE的性能,本來速率就已經(jīng)很慢了!
關(guān)于庫CH375HFA.LIB的使用:按字節(jié)讀寫文件,有什么要注意的地方? 為什么寫的文件中總是有被EWFILE.TXT的文件名替代掉的字符串!像是mCmdParam.Create.mPathName和mCmdParam.ByteWrite有公用的地方,庫CH375HFA.LIB是沒有定為LARGE模式的版本!