基于A(yíng)VR單片機的VRAM型彩色液晶顯示模塊設計
當數據位為“1”時(shí),對應色點(diǎn)為亮;為“0”時(shí),對應色點(diǎn)為暗。通過(guò)RGB三原色組合而得到的8種顏色代碼如下:
例1:若X 、Y坐標為(7,0)
SRAM = 0EFH ×100H + 0 = 0EF00H
余數為7 ,則 RAM = 0EF00H + 2 = 0EF02H
若此點(diǎn)為紅色,則送入0EF02H 內存單元里的數據為[ 0EF02H] 11111000B + 00000100B
例2 :若X 、Y坐標為(15,5)
SRAM = (5 - 1) ×100H + 1 ×3 = 403H
余數為5 ,則 RAM1 = 403H + 1 = 404H
RAM2 = 403H + 2 = 405H
若此點(diǎn)為白色,則送入這兩個(gè)單元的數據為
[ 404H] 11111110B + 00000001B
[ 405H] 00111111B + 11000000B
4.2.2 畫(huà)點(diǎn)函數的具體實(shí)現
從例1和例2可以看出,要只顯示一個(gè)色點(diǎn),就必須知道該點(diǎn)對應的內存中的數據,而前面提到過(guò)內存中的數據是不能讀出的,所以要將寫(xiě)入內存中的數據先保存起來(lái),即在向YD2502的顯示緩沖區里寫(xiě)數據之前,應先將此數據寫(xiě)入61LV5128 。若在坐標(X,Y)處畫(huà)顏色為color的點(diǎn),其具體函數如下:
以上只給出了余數是0的情況,其他的情況可依此類(lèi)推。計算內存地址的LCD_pixeladdr函數可根據給出的內存地址計算方法編寫(xiě),讀寫(xiě)61LV5128的read_exram函數和write_exram函數可根據具體的硬件設計編寫(xiě),這里不再給出。
4.3 顯示漢字和其他功能的實(shí)現
在屏幕上顯示16×16點(diǎn)陣漢字的基本步驟是:首先取得該漢字的32個(gè)字節的點(diǎn)陣數據,再確定屏幕上顯示的位置,利用畫(huà)點(diǎn)函數即可顯示該漢字。因本模塊使用了硬件漢字庫技術(shù),所以漢字的點(diǎn)陣數據是從漢字庫中獲取的。
評論