AVR讀寫外部RAM時出現(xiàn)的問題
AVR讀寫外部RAM時出現(xiàn)的問題
問:
1,對AT90S8515來說,外部RAM的地址肯定是從0x0260開始的?
2,我用ICE200仿真8515讀寫外部RAM,RAM大小為32KBytes,地址映射到0x0000-0x7fff,用PC7做它的片選。把SRE置為1,當(dāng)我訪問0x0300時PC7為低,這是對的,但當(dāng)我不去訪問0x0000-0x7fff地址空間時(例如進(jìn)入死循環(huán)),問題出現(xiàn)了,此時PC7仍為低,按道理應(yīng)為高的。這是阿AVR與51的不同,還是我弄錯了。
答:
1、對AT90S8515來說,外部RAM的地址肯定是從0x0260開始的。這是沒問題的,訪問0x0000-0x025F的地址為內(nèi)部RAM。
2、當(dāng)你訪問過0x0300,PC7為低,當(dāng)你不訪問0x0000-0x7FFF時,由于沒有一條把PC7置高的指令,所以PC7當(dāng)然還為低了。不過這也不要緊,因為當(dāng)你訪問0x0000-0x025F的時候,RD和WR是沒有的,所以即使外部RAM被選中了,沒不會產(chǎn)生讀寫。當(dāng)你訪問0x0260-0x7FFF的時候,RD和WR就自動產(chǎn)生了。所以就是你把外部RAM的CS直接接地也是可以的。
評論