<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單片機(七)——LCD1602液晶顯示模塊

跟我學(xué)51單片機(七)——LCD1602液晶顯示模塊

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

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

  void LCD_init(void)

  {

  delaylcd_nms(5);

  LCD_en_com_nobusy(DATA_MODE);

  // 延時(shí)5ms, 寫(xiě)指令,不檢測忙信號

  delaylcd_nms(5);

  LCD_en_com_nobusy(DATA_MODE);

  // 延時(shí)5ms, 寫(xiě)指令,不檢測忙信號

  delaylcd_nms(5);

  LCD_en_com_nobusy(DATA_MODE);

  // 延時(shí)5ms, 寫(xiě)指令,不檢測忙信號

  LCD_en_com(DATA_MODE);

  // 設置為8位數據傳送模式

  delaylcd_nms(5);

  LCD_en_com(OPEN_SCREEN); // 開(kāi)顯示

  LCD_en_com(DISPLAY_ADDRESS); // 設置顯示地址

  CLEARSCREEN; // 清屏

  }

  設置顯示坐標函數:設置字符的顯示位置,行、列坐標

  參數: x -列坐標,y -行坐標

  void LCD_set_xy( unsigned char x, unsigned char y )

  {

  unsigned char address;

  if (y == LINE1) // 判斷行

  address = LINE1_HEAD + x; // 設置列坐標

  else

  address = LINE2_HEAD + x;

  LCD_en_command(address); // 將地址寫(xiě)入寄存器

  }

  寫(xiě)字符函數:向液晶寫(xiě)一個(gè)字符

  參數:x -列坐標,y -行坐標,dat -將要顯示的字符數據

  void LCD_write_char( unsigned x,unsigned char y,unsigned char dat)

  {

  LCD_set_xy( x, y ); // 首先設置顯示坐標

  LCD_en_dat(dat); // 寫(xiě)數據

  }

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

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

  void LCD_write_string(unsigned char x,unsigned char y,unsigned

  char *s)

  {

  LCD_set_xy( x, y ); // 首先設置顯示坐標

  while (*s) // 判斷是否結束

  {

  LCDIO=*s;// 循環(huán)調用寫(xiě)數據函數

  LCD_en_dat(*s);

  s ++;

  }

  }

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

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

跟我學(xué)51單片機(七)——LCD1602液晶顯示模塊

圖5 1602界面

  調試時(shí)應注意的是,因為液晶的內部顯示操作需要一定的時(shí)間,因此如果單片機在對1602 液晶寫(xiě)操作時(shí)不進(jìn)行讀忙操作,就應該延時(shí)足夠的時(shí)間(可用延時(shí)函數)以讓液晶內部能夠接收命令或數據,否則會(huì )讓液晶無(wú)法工作或者工作不正常。此外對于V0 管腳,作為器對比度調整端,接正電源時(shí)對比度最弱,接地電源時(shí)對比度最高,對比度過(guò)高時(shí)會(huì )產(chǎn)生“鬼影”,因此可通過(guò)一個(gè)電位器實(shí)現對其的電壓調整,前文提到,將其調節到0.3~0.4V 時(shí)對比度效果最好。

  五、總結

  本講介紹了字符型液晶1602 的工作原理并給出了實(shí)例,通過(guò)該講,讀者可以了解和掌握51 單片機驅動(dòng)1602 液晶的方法。下講將講述單片機驅動(dòng)帶字庫的128X64 液晶,敬請期待。

紅外遙控器相關(guān)文章:紅外遙控器原理

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

關(guān)鍵詞: 51單片機 LCD1602 液晶顯示

評論


相關(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>