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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > LCD1602學(xué)習(xí)體會(huì)

          LCD1602學(xué)習(xí)體會(huì)

          作者: 時(shí)間:2016-11-10 來源:網(wǎng)絡(luò) 收藏
          液晶顯示屏中,1602型算是比較簡單的一種,據(jù)說和12864還是全兼容的。這兩天學(xué)習(xí)的結(jié)果如下。

          一、1602里的存儲(chǔ)器有三種:CGROM、CGRAM、DDRAM。CGROM保存了廠家生產(chǎn)時(shí)固化在LCM中的點(diǎn)陣型顯示數(shù)據(jù),CGRAM是留給用戶自己定義點(diǎn)陣型顯示數(shù)據(jù)的,DDRAM則是和顯示屏的內(nèi)容對應(yīng)的。1602內(nèi)部的DDRAM有80字節(jié),而顯示屏上只有2行 ×16列,共32個(gè)字符,所以兩者不完全一一對應(yīng)。默認(rèn)情況下,顯示屏上第一行的內(nèi)容對應(yīng)DDRAM中80H到8FH的內(nèi)容,第二行的內(nèi)容對應(yīng)DDRAM 中C0H到CFH的內(nèi)容。DDRAM中90H到A7H、D0H到E7H的內(nèi)容是不顯示在顯示屏上的,但是在滾動(dòng)屏幕的情況下,這些內(nèi)容就可能被滾動(dòng)顯示出來了。注:這里列舉的DDRAM的地址準(zhǔn)確來說應(yīng)該是DDRAM地址+80H之后的值,因?yàn)樵谙驍?shù)據(jù)總線寫數(shù)據(jù)的時(shí)候,命令字的最高位總是為1。

          本文引用地址:http://www.ex-cimer.com/article/201611/317268.htm

          二、1602使用三條控制線:EN、RW、RS。其中EN起到類似片選和時(shí)鐘線的作用,RW和RS指示了讀、寫的方向和內(nèi)容。在讀數(shù)據(jù)(或者Busy標(biāo)志)期間,EN線必須保持高電平;而在寫指令(或者數(shù)據(jù))過程中,EN線上必須送出一個(gè)正脈沖。RW、RS的組合一共有四種情況,分別對應(yīng)四種操作:

          RS=0、RW=0——表示向LCM寫入指令
          RS=0、RW=1——表示讀取Busy標(biāo)志
          RS=1、RW=0——表示向LCM寫入數(shù)據(jù)
          RS=1、RW=1——表示從LCM讀取數(shù)據(jù)

          三、LCD在使用的過程中,可以在RS=0、RW=0的情況下,向LCM寫入一個(gè)字節(jié)的控制指令。使用的控制指令一共八個(gè)類別。有的類別又有幾條不同的指令。具體的情況羅列在下:

          ①01H:清除DDRAM的所有單元,光標(biāo)被移動(dòng)到屏幕左上角。
          ②02H:DDRAM所有單元的內(nèi)容不變,光標(biāo)移至左上角。
          ③輸入方式設(shè)置(EnterModeSet),這些指令規(guī)定了兩個(gè)方面:一是寫入一個(gè)DDRAM單元后,地址指針如何改變(加一還是減一);二是屏幕上的內(nèi)容是否滾動(dòng)。
          04H:寫入DDRAM后,地址指針減一,比如第一個(gè)字符寫入8FH,則下一個(gè)字符會(huì)寫入8EH;屏幕上的內(nèi)容不滾動(dòng)。
          05H:寫入DDRAM后,地址指針減一,同上一種情況;每一個(gè)字符寫入以后,屏幕上的內(nèi)容向右滾動(dòng)一個(gè)字符位。
          06H:寫入DDRAM后,地址指針加一,比如第一個(gè)字符寫入80H,則下一個(gè)字符會(huì)寫入81H;屏幕上的內(nèi)容也是不滾動(dòng)。這應(yīng)該是最常用的一種顯示方式。
          07H:寫入DDRAM后,地址指針加一,同上一種情況;每一個(gè)字符寫入以后,屏幕上的內(nèi)容向左滾動(dòng)一個(gè)字符位。
          ④屏幕開關(guān)、光標(biāo)開關(guān)、閃爍開關(guān)。
          08H、09H、0AH、0BH:關(guān)閉顯示屏,實(shí)質(zhì)上是不把DDRAM中的內(nèi)容對應(yīng)顯示在屏幕上,對DDRAM的操作還是在進(jìn)行的,執(zhí)行這條指令,接著對 DDRAM進(jìn)行寫入,屏幕上沒有任何內(nèi)容,但是接著執(zhí)行下面的某條指令,就能看到剛才屏幕關(guān)閉期間,對DDRAM操作的效果了。
          0cH:打開顯示屏,不顯示光標(biāo),光標(biāo)所在位置的字符不閃爍。
          0dH:打開顯示屏,不顯示光標(biāo),光標(biāo)所在位置的字符閃爍。
          0eH:打開顯示屏,顯示光標(biāo),光標(biāo)所在位置的字符不閃爍。
          0fH:打開顯示屏,顯示光標(biāo),光標(biāo)所在位置的字符閃爍。
          關(guān)于光標(biāo)的位置:光標(biāo)所在的位置指示了下一個(gè)被寫入的字符所處的位置,加入在寫入下一個(gè)字符前沒有通過指令設(shè)置DDRAM的地址,那么這個(gè)字符就應(yīng)該顯示在光標(biāo)指定的地方。
          ⑤設(shè)置光標(biāo)移動(dòng)(本質(zhì)就是AC的增加還是減少)、整體畫面是否滾動(dòng)。
          10H:每輸入一次該指令,AC就減一,對應(yīng)了光標(biāo)向左移動(dòng)一格。整體的畫面不滾動(dòng)。
          14H:每輸入一次該指令,AC就加一,對應(yīng)了光標(biāo)向右移動(dòng)一格。整體的畫面不滾動(dòng)。
          18H:每輸入一次該指令,整體的畫面就向左滾動(dòng)一個(gè)字符位。
          1CH:每輸入一次該指令,整體的畫面就向右滾動(dòng)一個(gè)字符位。畫面在滾動(dòng)的時(shí)候,每行的首尾是連在一起的,也就是每行的第一個(gè)字符,若左移25次,就會(huì)顯示在該行的最后一格。在畫面滾動(dòng)的過程中,AC的值也是變化的。⑥顯示模式設(shè)定指令,設(shè)定了顯示幾行,顯示什么樣的點(diǎn)陣字符,數(shù)據(jù)總線占用幾位。
          20H:4位總線,單行顯示,顯示5×7的點(diǎn)陣字符。
          24H:4位總線,單行顯示,顯示5×10的點(diǎn)陣字符。
          28H:4位總線,雙行顯示,顯示5×7的點(diǎn)陣字符。
          2CH:4位總線,雙行顯示,顯示5×10的點(diǎn)陣字符。
          30H:8位總線,單行顯示,顯示5×7的點(diǎn)陣字符。
          34H:8位總線,單行顯示,顯示5×10的點(diǎn)陣字符。
          38H:8位總線,雙行顯示,顯示5×7的點(diǎn)陣字符。這是最常用的一種模式。3CH:8位總線,雙行顯示,顯示5×10的點(diǎn)陣字符。



          關(guān)鍵詞: LCD1602學(xué)習(xí)體

          評(píng)論


          技術(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); })();