《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 看單片機如何控制LCD模塊
看單片機如何控制LCD模塊
摘要: 一般來說,LCD模塊的控制都是通過MCU對LCD模塊的內部寄存器、顯存進行操作來最終完成的;在此我們設計了三個基本的時序控制程序,分別是:寫寄存器函數(LCD_RegWrite)數據寫函數(LCD_DataWrite)數據讀
關鍵詞: 51單片機 LCD 單片機
Abstract:
Key words :

一般來說,LCD 模塊的控制都是通過 MCU 對 LCD 模塊的內部寄存器、顯存進行操作來最終完成的;在此我們設計了三個基本的時序控制程序,分別是:
寫寄存器函數(LCD_RegWrite)
數據寫函數(LCD_DataWrite)
數據讀函數(LCD_DataRead)
這三個函數需要嚴格的按照 LCD 所要求的時序來編寫,下面可以看看 MzL02 模塊時序圖:
 

圖 3.2 MzL02 模塊的 6800 時序示意
注意:上圖是該模塊的控制 IC 資料中的原版時序圖,其實有些示意不是太穩妥(少標出了RW 線信號的要求),或者說是不太嚴謹,不過這些不作討論,請看分析即可;而 EP 的有效觸發沿在圖中很有可能示意有誤,實測為上升沿。圖中 CS1B(CS2)的信號即為片選 CS,RS 即為數據/寄存器的選擇端口 A0 信號,E 為 EP;當作寫入寄存器數據操作時,首先要將 A0 置低,以通知 LCD 模塊即將進行的是對寄存器的操作;而 RW 線需要置低,以示即將要進行的是寫入的操作;然后片選 CS 信號置低,裝載數據至總線,然后在 EP 線上產生一個上升沿以觸發 LCD 模塊將總線上的數據最終載入;在前面的操作完成后一般都會將各個信號線的狀態恢復。而數據(顯存)寫入、數據讀出的操作時序也比較類似,這里就不多作介紹,直接參考例程即可。
//=======================================================
// 函數: void LCD_RegWrite(unsigned char Command)
// 描述: 寫一個字節的數據至 LCD 中的控制寄存器當中
// 參數: Command 寫入的數據,低八位有效(byte)
// 返回: 無
//======================================================
void LCD_RegWrite(unsigned char Command)
{
LCD_A0 = 0; //A0 置低,示意進行寄存器操作
LCD_RW = 0; //RW 置低,示意進行寫入操作
LCD_EP = 0; //EP 先置低,以便后面產生跳變沿
LCD_CS = 0; //片選 CS 置低
DAT_PORT = Command; //裝載數據置總線
LCD_EP = 1; //產生有效的跳變沿
LCD_CS = 1; //片選置高
}
數據寫入以及讀出的函數源碼如下:
//==========================================================
// 函數: void LCD_DataWrite(unsigned char Dat)
// 描述: 寫一個字節的顯示數據至 LCD 中的顯示緩沖 RAM 當中
// 參數: Data 寫入的數據
// 返回: 無
//==========================================================
void LCD_DataWrite(unsigned char Dat)
{
LCD_A0 = 1; //A0 置高,示意進行顯存數據操作
LCD_RW = 0; //RW 置低,示意進行寫入操作
LCD_EP = 0; //EP 先置低,以便后面產生跳變沿
LCD_CS = 0; //片選 CS 置低
DAT_PORT = Dat; //裝載數據置總線
LCD_EP = 1; //產生有效的跳變沿
LCD_CS = 1; //片選置高
}
//=========================================================
// 函數: unsigned char LCD_DataRead(void)
// 描述: 從 LCD 中的顯示緩沖 RAM 當中讀一個字節的顯示數據
// 參數: 無
// 返回: 讀出的數據,
//==========================================================
unsigned char LCD_DataRead(void)
{
unsigned char Read_Data;
DAT_PORT = 0xff; //51 的端口想要輸入前,要先給端口全置 1
LCD_A0 = 1; //A0 置高,示意進行顯存數據操作
LCD_RW = 1; //RW 置高,示意進行讀出操作
LCD_EP = 0; //EP 先置低,以便后面產生跳變沿
LCD_CS = 0; //片選 CS 置低
LCD_EP = 1; //產生有效的跳變沿
LCD_EP = 0;
Read_Data = DAT_PORT; //讀出數據
LCD_CS = 1; //片選置高
return Read_Data; //返回讀到的數據
}
以上便是要介紹的最基本的時序操作程序,它們幾乎是整個 LCD 驅動程序當中與底層硬件打交道的代碼了,這樣的話,當要改變驅動 LCD 的 MCU 端口時或者換用別的 MCU 來驅動 LCD 時,基本上只需要在這些代碼里作一下修改即可。
關于讀 LCD 狀態
而在一般的 LCD 模塊當中,還有一個功能同樣重要,就是讀 LCD 狀態;可以通過此操作獲取當前 LCD 模塊的忙狀態以及一些相關的狀態信息,當 LCD 模塊正處于忙狀態時,則不宜對它進行數據的寫入或讀出操作(有很多較老式的 LCD 控制器規定在忙的狀態下時不允許寫入或讀出數據)。
所以在很多 LCD 的驅動程序當中,會在寄存器寫入、數據寫入/讀出的操作前加入讀取 LCD狀態并判別忙狀態的代碼;這點可以參考網上流傳的很多 LCD 驅動程序。不過,對于 MzL02這樣的較新出的 LCD 控制器來說,已經對忙狀態不是很在乎了,或者說影響已經很小甚至沒有了;所以我們在前面的代碼當中并沒有加入這樣的代碼。至于有沒有必要加讀狀態判忙的代碼,要視具體的 LCD 控制器而定。
關于時序的時間要求
時序的一個非常重要的數據就是類似上圖中標出的tAS88之類的時間長短要求,只是上圖中并沒有標出它們的具體最大最小值要求而已;但在編寫這類的時序接口程序時它們還是非常重要的,當然還要看 MCU 的端口操作速度以及 MCU 的指令執行速度。打個比方,有的時序里就會有要求某些信號的電平保持最小寬度,而如果 MCU 的指令執行速度以及端口操作速度非常快的話,就需要酌情在連續操作端口的代碼之間加入適量的延時(通用用空操作來代替,具體多少個多少時長視具體的 MCU 以及 LCD 控制器而定)以保證該信號的脈沖寬度滿足要求。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          校园春色国产精品| 亚洲午夜女主播在线直播| 亚洲全黄一级网站| 欧美成人一区二区三区片免费| 性欧美8khd高清极品| 亚洲精品一区二区在线观看| 亚洲美女免费视频| 久久久久久久久久久成人| 国产精品乱码| 欧美日韩综合另类| 亚洲欧洲一区二区在线观看| 夜夜嗨网站十八久久| 免费久久99精品国产自在现线| 欧美一区网站| 亚洲在线成人精品| 国产日产高清欧美一区二区三区| 国产亚洲精品bv在线观看| 久久精品日产第一区二区| 欧美在线播放高清精品| 亚洲一区二区精品在线| 久久久999精品视频| 老司机午夜精品视频在线观看| 亚洲视频观看| 在线免费观看日本欧美| 亚洲视频axxx| 亚洲福利视频免费观看| 亚洲欧美成人一区二区在线电影| 午夜欧美精品| 欧美日韩亚洲综合| 亚洲韩国精品一区| 亚洲一区二区三| 国产欧美精品久久| 欧美国产欧美综合| 日韩一区二区免费高清| 久久精品国产91精品亚洲| 欧美成人精品一区二区| 欧美一区二区三区四区高清| 在线观看日韩精品| 欧美激情在线有限公司| 狠狠狠色丁香婷婷综合激情| 久久亚洲视频| 亚洲高清视频中文字幕| 欧美专区一区二区三区| 另类专区欧美制服同性| 国产精品丝袜xxxxxxx| 狠狠色狠狠色综合日日小说| 欧美日韩国产免费| 久久久久一区二区三区| 日韩视频在线你懂得| 久久婷婷一区| 亚洲制服欧美中文字幕中文字幕| 欧美视频精品在线| 精品成人一区二区三区| 亚洲日本国产| 男女av一区三区二区色多| 久久综合色影院| 国产主播喷水一区二区| 久久久精品2019中文字幕神马| 国产精品va在线| 久久先锋影音av| 欧美久久久久中文字幕| 男同欧美伦乱| 国产精品高精视频免费| 在线观看视频一区二区欧美日韩| 亚洲欧美在线观看| 午夜精品久久久久久久久久久久久| 欧美不卡激情三级在线观看| 国产精品永久免费在线| 99视频在线观看一区三区| 一区二区三区视频免费在线观看| 日韩视频亚洲视频| 亚洲欧美日韩在线播放| 亚洲综合欧美| 国模大胆一区二区三区| 国产精品影视天天线| 国产亚洲精品久久久久婷婷瑜伽| 欧美久久久久久| 欧美日韩中文字幕| 欧美成人一品| 欧美在线你懂的| 国产一区二区三区丝袜| 激情六月婷婷久久| 亚洲最新色图| 欧美日韩一区二区国产| 欧美日韩一卡| 亚洲午夜精品久久久久久app| 欧美视频手机在线| 久久精品中文字幕一区二区三区| 亚洲国内高清视频| 亚洲一区美女视频在线观看免费| 欧美精品一区二| 国产精品一区二区三区四区| 欧美日韩精品免费观看视频完整| 欧美日韩一区二区在线播放| 欧美色一级片| 免费影视亚洲| 一区二区高清视频在线观看| 亚洲在线观看视频| 国产精品日韩一区二区三区| 国产精品久久一卡二卡| 欧美三级韩国三级日本三斤| 国产视频精品xxxx| 欧美日韩在线不卡一区| 久久www成人_看片免费不卡| 午夜精品久久久久久久| 欧美极品在线观看| 国语精品一区| 亚洲欧洲日本国产| 亚洲激情在线激情| 亚洲欧美一区二区精品久久久| 国产精品久久久久av免费| 一区二区视频在线观看| 国产农村妇女精品一二区| 一本色道久久加勒比88综合| 欧美影院在线| 亚洲欧美日韩在线观看a三区| 亚洲欧美日韩视频二区| 美女国内精品自产拍在线播放| 久久久人人人| 久久男人av资源网站| 久久高清福利视频| 开心色5月久久精品| 国产精品视频网| 亚洲国产高清一区二区三区| 激情久久中文字幕| 亚洲国产裸拍裸体视频在线观看乱了| 国产亚洲午夜| 亚洲盗摄视频| 99精品视频免费观看| 激情伊人五月天久久综合| 欧美精品九九99久久| 亚洲激情校园春色| 日韩亚洲国产欧美| 亚洲老司机av| 国产精品入口麻豆原神| 欧美日韩亚洲精品内裤| 欧美夫妇交换俱乐部在线观看| 久久久久国产一区二区三区| 亚洲成人原创| 国产日本欧美在线观看| 一区二区三区欧美视频| 久久久久久久成人| 亚洲日产国产精品| 亚洲国内在线| 久久久av水蜜桃| 午夜一级在线看亚洲| 欧美极品欧美精品欧美视频| 欧美国产综合视频| 亚洲人成毛片在线播放女女| 欧美视频久久| 国产一区久久| 国产婷婷精品| 国产乱码精品一区二区三区av| 美女脱光内衣内裤视频久久网站| 在线观看视频一区二区| 亚洲免费一在线| 91久久精品国产91性色tv| 激情文学一区| 欧美成人免费全部观看天天性色| 欧美有码在线视频| 欧美日韩mp4| 在线亚洲伦理| 亚洲欧美制服另类日韩| 国产精品色在线| 国产农村妇女精品| 欧美日韩国产不卡在线看| 国产在线拍揄自揄视频不卡99| 国产精品久久二区二区| 亚洲一区精品电影| 亚洲高清不卡一区| 老色鬼久久亚洲一区二区| 国产欧美精品一区二区三区介绍| 国产精品99久久久久久有的能看| 国产视频在线观看一区二区三区| 久久精品久久99精品久久| 麻豆视频一区二区| 亚洲日本免费电影| 亚洲高清av在线| 国产伦一区二区三区色一情| 久久综合伊人77777麻豆| 国产精品日韩在线观看| 国产精品美女视频网站| 在线免费观看日本欧美| 久久综合综合久久综合| 欧美欧美天天天天操| 欧美成人国产| 欧美国产日韩在线观看| 欧美日韩黄色大片| 欧美日韩在线第一页| 性欧美超级视频| 国产毛片精品国产一区二区三区| 欧美中在线观看| 久久精品欧美日韩| 久久久久久自在自线| 韩国一区二区在线观看| 狠狠久久综合婷婷不卡| 亚洲欧洲综合另类在线| 国产精品v日韩精品v欧美精品网站| 亚洲精品视频二区| 91久久国产精品91久久性色| 蜜臀av性久久久久蜜臀aⅴ四虎| 91久久精品网| 红桃视频国产一区| 亚洲伊人第一页| 亚洲精品国产精品国产自| 亚洲色无码播放| 欧美黄网免费在线观看| 欧美伊人影院| 久久九九免费| 亚洲激情一区二区三区| 久久精品一本| 午夜综合激情| 美女国内精品自产拍在线播放| 久久久国产91| 久久国产精品久久久久久久久久| 国产精品久久一区主播| 久久久久久久久久久久久女国产乱| 久久久www| 国模叶桐国产精品一区| 国产精品免费福利| 国产精品一区2区| 亚洲精品久久久久久久久久久| 久久蜜桃香蕉精品一区二区三区| 久久久噜噜噜久久狠狠50岁| 国产精品成人一区二区网站软件| 欧美日韩免费观看一区二区三区| 国产精品麻豆成人av电影艾秋| 国产精品一区二区在线| 在线色欧美三级视频| 亚洲一区二区伦理| 一区二区三区在线视频免费观看| 亚洲在线观看免费视频| 欧美日韩国产精品专区| 久久精品免费电影| 性伦欧美刺激片在线观看| 国产精品久久久久毛片软件| 欧美激情综合色综合啪啪| 亚洲视频一区二区免费在线观看| 亚洲激情欧美激情| 午夜一区不卡| 欧美日韩在线播放一区| 欧美精品在线视频观看| 亚洲免费激情| 国产综合色产在线精品| 亚洲精品视频啊美女在线直播| 亚洲激情在线观看视频免费| 久久免费视频网站| 先锋影音久久久| 韩国一区二区在线观看| 亚洲国产精品一区二区www在线| 亚洲图片欧美日产| 欧美性猛交xxxx乱大交蜜桃| 在线观看中文字幕不卡| 国产精品国内视频| 一本色道综合亚洲| 国产亚洲毛片| 一区二区日韩欧美| 欧美一级视频免费在线观看| 性高湖久久久久久久久| 久久一区免费| 1024精品一区二区三区| 国产精品久久久久91| 欧美精品自拍偷拍动漫精品| 黄色精品网站| 欧美激情一区二区久久久| 亚洲欧洲三级| 亚洲国产天堂久久国产91| 宅男66日本亚洲欧美视频| 国产精品久久久久久久电影| 午夜在线电影亚洲一区| 国产一区香蕉久久| 久热精品视频在线观看一区| 午夜免费日韩视频| 一区二区在线观看视频在线观看| 99国产一区| 国产欧美日本在线| 国色天香一区二区| 亚洲天天影视| 日韩午夜中文字幕| 亚洲免费在线看| 麻豆久久久9性大片| 日韩视频在线你懂得| 国产精品久久久久久久一区探花| 欧美精品一区三区在线观看| 亚洲国产精品999| 久久中文欧美| 久久精品亚洲一区二区三区浴池| 国产精品久久久久久影院8一贰佰| 欧美一区二区三区喷汁尤物| 一区二区毛片| 另类成人小视频在线| 国产精品视频大全| 欧美成年人视频| 欧美一区日本一区韩国一区| 日韩视频欧美视频| 日韩午夜电影在线观看| 亚洲精品乱码久久久久久久久| 国产精品亚洲一区二区三区在线| 亚洲一二三区在线观看| 欧美日韩亚洲综合一区| 亚洲国产成人不卡| 欧美成人网在线| 一区二区三区日韩欧美| 国产三级欧美三级日产三级99| 国产精品日本精品| 国内视频精品| 亚洲在线观看免费视频| 国内久久精品| 欧美一级视频免费在线观看| 国产精品系列在线播放| 一本大道久久精品懂色aⅴ| 浪潮色综合久久天堂| 久久久之久亚州精品露出| 欧美一区二视频在线免费观看| 亚洲国产精品一区二区三区| 欧美成年网站| 国产亚洲欧美aaaa| 欧美高清在线精品一区| 亚洲免费电影在线| 99在线精品免费视频九九视| 国内伊人久久久久久网站视频| 在线不卡a资源高清| 国产精品午夜在线观看| 亚洲综合99| 亚洲一区二区三区高清| 国产一区二区黄色| 欧美日韩一区高清| 亚洲三级影院|