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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于CPLD的LCD1602顯示系統(tǒng)設(shè)計與實現(xiàn)

          基于CPLD的LCD1602顯示系統(tǒng)設(shè)計與實現(xiàn)

          作者: 時間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          h.jpg

          由clk_div時鐘信號獲取lcd_en及l(fā)cd_flag兩個時鐘信號,具體如下:

          i.jpg

          至此,只需捕獲clk_flag的上升沿,并在該跳變沿處送入指令或數(shù)據(jù)即可。而狀態(tài)之間的轉(zhuǎn)移關(guān)系則需按初始化的正確步驟進行,完成初始化后,指定DDRAM的地址,并向lcd_dat送數(shù)據(jù)即可實現(xiàn)數(shù)據(jù)的寫入操作。

          4 仿真結(jié)果及實現(xiàn)效果

          軟件仿真借助了第三方的仿真軟件Modelsim,在QuartusII當(dāng)中利用Test Bench Template Writer建立仿真模板文件,并在模板當(dāng)中給出激勵條件,編譯后即可生成用于仿真測試的vt文件了。初始化部分的仿真結(jié)果如圖3所示。

          j.jpg

          上圖信號從上到下依次為:clk,rst_n,lcd_dat,lcd_en,lcd_rs,lcd_rw。由圖3可知,由于系統(tǒng)時鐘頻率較高,clk已顯示為一條粗線,rst_n僅延時10個仿真單位,即被拉高為高電平,lcd_dat中出線一段藍色線條,占lcd_en的3個周期,即實現(xiàn)了15ms的延時,緊接著的四個周期連續(xù)寫入8’h38,然后8’h01等,直到8’h0c完成對的初始化。圖4為初始化后向寫入的數(shù)據(jù),由于顯示內(nèi)容的編碼與ASCII碼基本一致,可將其設(shè)置為ASCII進行觀察。

          將Verilog HDL編寫的程序進行編譯,并將生的目標(biāo)代碼下載至EPM240T100C5,最終顯示的效果如圖5所示。

          k.jpg

          5 結(jié)束語

          通過對進行詳細(xì)分析,本文實現(xiàn)了用CPLD驅(qū)動LCD1602顯示模塊工作的目的。通過仿真及硬件驗證,均說明了設(shè)計的合理性與正確性。另外,采用模塊化設(shè)計,也為后續(xù)系統(tǒng)的大規(guī)?;涂蓴U展性提供了很大方便。相比單片機實現(xiàn)過程,利用CPLD實現(xiàn)顯得更加簡單、方便。另外,CPLD管腳的可配置特點也為CPLD的使用帶來了極大的靈活性。隨著CPLD及FPGA技術(shù)的發(fā)展,數(shù)字系統(tǒng)設(shè)計也必將發(fā)展到一個新的階段。


          上一頁 1 2 下一頁

          評論


          相關(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); })();