熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂(lè)園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2021-4-7 11:59
正文摘要:我想從12864讀出當(dāng)前地址的數(shù)據(jù),按照網(wǎng)上說(shuō)的,先把數(shù)據(jù)端口置高,然后讀12864RAM的值。我預(yù)先把12864RAM清空了,但是讀出來(lái)的值是0xff。我又試了一下不預(yù)先置高數(shù)據(jù)端,都是它讀的數(shù)據(jù)都是我上一次寫入的命令,麻 ... |
afhyf 發(fā)表于 2021-4-7 23:36 你要讀上一次的值其實(shí)就是你上一次寫的值,既然這樣就沒(méi)必要讀了。建立1024字節(jié)的數(shù)組,寫入時(shí)寫數(shù)組進(jìn)去,數(shù)組里的值就是你要讀的值 |
樓主,請(qǐng)問(wèn)你這個(gè)問(wèn)題最后是怎么解決的 |
在程序中開(kāi)辟一塊RAM,映射到屏幕,這樣就只需要處理內(nèi)存數(shù)據(jù),速度快還操作方便 |
這個(gè)意義真不大,顯示就可以了 |
記得好像是可以的,讀取數(shù)據(jù)再寫回去,對(duì)于只需要更改少量的顯示點(diǎn)是比較方便的 |
3485910187 發(fā)表于 2023-4-28 11:52 12864單色屏,只需要1K(128*64/8=1024)的顯示緩存,然后你就可以在緩存操作,隨便折騰,搞完了,再刷新顯示了。 |
樓主解決了這個(gè)問(wèn)題嗎,我遇到了相同的問(wèn)題;無(wú)法讀取當(dāng)前地址的數(shù)據(jù) |
人人學(xué)會(huì)單片機(jī) 發(fā)表于 2021-4-7 16:51 因?yàn)?2864一次寫入兩個(gè)字節(jié),在同一行后面的點(diǎn)會(huì)覆蓋掉前面的點(diǎn),所以把上一次狀態(tài)讀出,我根據(jù)網(wǎng)上的程序理解的,不知道對(duì)不對(duì)。 |
liuzx66 發(fā)表于 2021-4-7 20:34 還是不太明白,我再研究一下。 |
人家都說(shuō)了可以建立緩存區(qū) |
man1234567 發(fā)表于 2021-4-7 17:03 謝謝你的回復(fù)。我要實(shí)現(xiàn)的是在lcd上面打點(diǎn)畫(huà)成一條曲線,如果不讀出前一狀態(tài)的RAM值,因?yàn)?2864一次要寫入16位,下一個(gè)點(diǎn)則會(huì)覆蓋掉上一個(gè)點(diǎn),我只能想到將之前的值讀出,然后再重新寫入。如果有更好的方案請(qǐng)不吝賜教。 |
研究是可以的但不實(shí)用,還有就是并口的可以讀出其他的要看說(shuō)明書(shū)。 顯示器主要用于寫,比如1602為省一個(gè)I/O就直接將某腳接地。 顯示的數(shù)據(jù)是你自己發(fā)送的,如果真的需要可以自建數(shù)據(jù)緩沖區(qū)速度上要快。 以上是建議,不是解決問(wèn)題的回答,供參考。 |
參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
---|---|---|
![]() | + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
為何要讀出來(lái)呢?有這種必要性嗎? |
Powered by 單片機(jī)教程網(wǎng)