<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AVR單片機(jī)的VRAM型彩色液晶顯示模塊設(shè)計(jì)

          基于AVR單片機(jī)的VRAM型彩色液晶顯示模塊設(shè)計(jì)

          作者: 時(shí)間:2012-04-09 來(lái)源:網(wǎng)絡(luò) 收藏

          當(dāng)數(shù)據(jù)位為“1”時(shí),對(duì)應(yīng)色點(diǎn)為亮;為“0”時(shí),對(duì)應(yīng)色點(diǎn)為暗。通過(guò)RGB三原色組合而得到的8種顏色代碼如下:

          基于AVR單片機(jī)的VRAM型彩色液晶顯示模塊設(shè)計(jì)

          例1:若X 、Y坐標(biāo)為(7,0)

          SRAM = 0EFH ×100H + 0 = 0EF00H

          余數(shù)為7 ,則 RAM = 0EF00H + 2 = 0EF02H

          若此點(diǎn)為紅色,則送入0EF02H 內(nèi)存單元里的數(shù)據(jù)為[ 0EF02H] 11111000B + 00000100B

          例2 :若X 、Y坐標(biāo)為(15,5)

          SRAM = (5 - 1) ×100H + 1 ×3 = 403H

          余數(shù)為5 ,則 RAM1 = 403H + 1 = 404H

          RAM2 = 403H + 2 = 405H

          若此點(diǎn)為白色,則送入這兩個(gè)單元的數(shù)據(jù)為

          [ 404H] 11111110B + 00000001B

          [ 405H] 00111111B + 11000000B

          4.2.2 畫(huà)點(diǎn)函數(shù)的具體實(shí)現(xiàn)

          從例1和例2可以看出,要只顯示一個(gè)色點(diǎn),就必須知道該點(diǎn)對(duì)應(yīng)的內(nèi)存中的數(shù)據(jù),而前面提到過(guò)內(nèi)存中的數(shù)據(jù)是不能讀出的,所以要將寫(xiě)入內(nèi)存中的數(shù)據(jù)先保存起來(lái),即在向YD2502的顯示緩沖區(qū)里寫(xiě)數(shù)據(jù)之前,應(yīng)先將此數(shù)據(jù)寫(xiě)入61LV5128 。若在坐標(biāo)(X,Y)處畫(huà)顏色為color的點(diǎn),其具體函數(shù)如下:

          基于AVR單片機(jī)的VRAM型彩色液晶顯示模塊設(shè)計(jì)

          以上只給出了余數(shù)是0的情況,其他的情況可依此類推。計(jì)算內(nèi)存地址的LCD_pixeladdr函數(shù)可根據(jù)給出的內(nèi)存地址計(jì)算方法編寫(xiě),讀寫(xiě)61LV5128的read_exram函數(shù)和write_exram函數(shù)可根據(jù)具體的硬件設(shè)計(jì)編寫(xiě),這里不再給出。

          4.3 顯示漢字和其他功能的實(shí)現(xiàn)

          在屏幕上顯示16×16點(diǎn)陣漢字的基本步驟是:首先取得該漢字的32個(gè)字節(jié)的點(diǎn)陣數(shù)據(jù),再確定屏幕上顯示的位置,利用畫(huà)點(diǎn)函數(shù)即可顯示該漢字。因本模塊使用了硬件漢字庫(kù)技術(shù),所以漢字的點(diǎn)陣數(shù)據(jù)是從漢字庫(kù)中獲取的。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();