<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 跟我學(xué)51單片機(八)——圖型帶字庫液晶128×64

跟我學(xué)51單片機(八)——圖型帶字庫液晶128×64

作者: 時(shí)間:2013-01-26 來(lái)源:網(wǎng)絡(luò ) 收藏
要使液晶能正常工作和操作方便,除了寫(xiě)數據和命令函數外,還需要進(jìn)行初始化等操作,先將本講中所用到的操作液晶的主要函數設計如下。

  液晶初始化函數:初始化液晶,設置液晶的工作方式等。

  void LCD_init(void)

  {

  RST=0;

  //RST管腳置低,復位液晶

  LCD_delay();

  //延時(shí)一段時(shí)間,以完全復位

  RST=1;

  //RST管腳置高,復位完成

  PSB=1;

  //PSB管腳置高,并行工作模式

  LCD_en_command(0x30);

  //設置8位并數據格式

  LCD_en_command(0x0c);

  //開(kāi)顯示器

  LCD_en_command(0x80);

  //顯示起始地址

  CLEARSCREEN();

  //對液晶進(jìn)行清屏

  }

  /*設置顯示地址函數:

  參數:x取值范圍:0~7;y取值范圍:1~4 */

  void LCD_set_xy( uchar x, uchar y )

  {

  switch(y) //判斷是哪一行顯示

  {

  case 1:LCD_en_command(0x80 + x);break;

  //如果是第一行,地址加0x80

  case 2:LCD_en_command(0x90 + x);break;

  //如果是第二行,地址加0x90

  case 3:LCD_en_command(0x88 + x);break;

  //如果是第三行,地址加0x88

  case 4:LCD_en_command(0x98 + x);break;

  //如果是第四行,地址加0x98

  default:break; //否則退出

  }

  }

  /*寫(xiě)字符串函數:向液晶寫(xiě)入字符串

  參數:x-列坐標,y-行坐標,*s-將要顯示的字符串數

  據*/

  void LCD_write_string(uchar x, uchar y, uchar *s)

  {

  LCD_set_xy( x, y );

  //先設置要顯示的地址

  while (*s) //如果當前字符沒(méi)有結束

  {

  LCD_en_dat(*s); //顯示當前字符

  s ++; //指向下一個(gè)字符

  }

  }

  四、調試要點(diǎn)與實(shí)驗現象

  接好硬件(特別是連接好液晶),通過(guò)冷啟動(dòng)方式將程序所生成的。hex文件下載到單片機運行后,復位單片機,然后就可在學(xué)習板上看到12864液晶上顯示的“128×64液晶測試”等字符。

  調試128×64液晶時(shí)應注意的是,對于液晶的讀忙函數如果用一段延時(shí)代替的話(huà),一定要足夠長(cháng),不同128×64液晶的所需要的時(shí)間可能稍許不同,這也是導致液晶無(wú)顯示,出亂碼等的常見(jiàn)原因。此外,與前講介紹的1602液晶相似,對于128×64液晶上的V0管腳,作為液晶顯示器對比度調整端,其接正電源時(shí)對比度最弱,接地電源時(shí)對比度最高,對比度過(guò)高時(shí)會(huì )產(chǎn)生“鬼影”,因此可通過(guò)一個(gè)電位器實(shí)現對其的電壓調整,前文提到,將其調節到3.6~3.7V 時(shí)對比度效果最好。

  五、總結

  本講簡(jiǎn)要介紹了帶字庫128×64液晶的工作原理并給出了驅動(dòng)實(shí)例,在液晶的操作時(shí)序一定要嚴格,需參考其數據手冊或規格書(shū)。

  對于128×64液晶,如果在實(shí)際應用中僅使用并口或串口通信模式,可將PSB(第15腳)接固定電平,并口時(shí)接高電平;串口時(shí)接低電平,從而節省控制管腳。

  128×64液晶的內部接有上電復位電路,因此可以將RESET(第17腳)懸空或者接到電源正上,以節省控制管腳。

  128×64液晶內部帶有豐富的DDRAM(文本顯示RAM)和GDRAM(繪圖RAM),本文只是對其驅動(dòng)方法經(jīng)行了介紹,但具體如何實(shí)現等需要讀者自己實(shí)踐。

  液晶的顯示對后續程序的輔助作業(yè)很大,可以用它來(lái)顯示一些調試信息或者測量數據等非常方便,下講就將結合液晶顯示來(lái)實(shí)現一個(gè)單片機的簡(jiǎn)易頻率計,敬請期待。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>