在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

    
    
    <address id="vxupu"><td id="vxupu"></td></address>

      <pre id="vxupu"><small id="vxupu"></small></pre>
      <dfn id="vxupu"></dfn>
      <div id="vxupu"><small id="vxupu"></small></div>
    1. 新聞中心

      EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > PIC單片機(jī)驅(qū)動(dòng)LCD1602液晶顯示字符串程序

      PIC單片機(jī)驅(qū)動(dòng)LCD1602液晶顯示字符串程序

      作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò) 收藏
      /***************************************************************************

      *** 功能:LCD1602的使用
      *** 實(shí)驗(yàn)內(nèi)容:LCD顯示本站網(wǎng)址和電話
      ***開發(fā)板連接方法: 調(diào)節(jié)1602電位器,使LCD對(duì)比度最好,裝1602時(shí)不要裝錯(cuò)了,否測(cè)會(huì)燒掉。
      ***************************************************************************/
      #include

      本文引用地址:http://www.biyoush.com/article/201612/324699.htm

      __CONFIG(0xFF32);
      //芯片配置字,看門狗關(guān),上電延時(shí)開,掉電檢測(cè)關(guān),低壓編程關(guān),加密,4M晶體HS振蕩

      //LCD控制線宏定義
      #define rs RA5
      #define rw RA4
      #define e RA3

      //顯示公司web地址
      char web[ ] = {"***.*********.***"};

      //顯示公司電話號(hào)碼
      char tel[ ] = {" 110 " };

      void init(); //申明I/O口初始化函數(shù)
      void lcd_init(); //申明LCD初始化函數(shù)
      void write(char x); //申明顯示1字節(jié)數(shù)據(jù)函數(shù)
      void lcd_enable(); //申明LCD顯示設(shè)置函數(shù)
      void delay(); //申明延時(shí)函數(shù)
      void writelcd(char *pt); //聲明LCD寫字符串函數(shù)

      /****************************************************************************
      * 名 稱:main()
      * 功 能:主函數(shù)
      * 入口參數(shù):
      * 出口參數(shù):
      * 說(shuō) 明:
      * 備 注:
      ****************************************************************************/
      void main()
      {
      init(); //調(diào)用I/O口初始化函數(shù)
      lcd_init(); //調(diào)用LCD初始化函數(shù)
      while (1)
      {
      writelcd(web); //調(diào)用顯示公司web地址函數(shù)
      PORTD = 0XC0; //設(shè)置第2行顯示地址
      lcd_enable(); //調(diào)用LCD顯示設(shè)置函數(shù)
      writelcd(tel); //調(diào)用顯示公司tel函數(shù)
      }
      }

      /****************************************************************************
      * 名 稱:init()
      * 功 能:I/O口初始化
      * 入口參數(shù):
      * 出口參數(shù):
      * 說(shuō) 明:
      * 備 注:
      ****************************************************************************/
      void init()
      {
      ADCON1 = 0X07; //設(shè)置A口為普通I/O口
      RA1=1;
      TRISA = 0X00; //設(shè)置A口為輸出
      TRISD = 0X00; //設(shè)置D口為輸出
      }

      /****************************************************************************
      * 名 稱:lcd_init()
      * 功 能:LCD初始化
      * 入口參數(shù):
      * 出口參數(shù):
      * 說(shuō) 明:
      * 備 注:
      ****************************************************************************/
      void lcd_init()
      {
      PORTD = 0X1; //清除顯示
      lcd_enable();
      PORTD = 0X38; //8位2行5*7點(diǎn)陣
      lcd_enable();
      PORTD = 0X0e; //顯示開,光標(biāo)開,閃爍
      lcd_enable();
      PORTD = 0X06; //文字不動(dòng),光標(biāo)右移
      lcd_enable();
      PORTD = 0X80; //公司web顯示地址
      lcd_enable();
      }

      /****************************************************************************
      * 名 稱:write()
      * 功 能:寫一個(gè)字節(jié)數(shù)據(jù)到LCD
      * 入口參數(shù):char x 字符
      * 出口參數(shù):
      * 說(shuō) 明:
      * 備 注:
      ****************************************************************************/
      void write(char x)
      {
      PORTD = x; //待顯示數(shù)據(jù)送PORTD口
      rs = 1; //該字節(jié)數(shù)據(jù)為數(shù)據(jù),而不是命令
      rw = 0; //此次操作為寫,而不是讀
      e = 0; //拉低使能信號(hào)
      delay(); //保持使能信號(hào)為低一段時(shí)間
      e = 1; //拉高使能信號(hào),建立LCD操作所需要的上升沿
      }

      /****************************************************************************
      * 名 稱:lcd_enable()
      * 功 能:LCD顯示設(shè)置
      * 入口參數(shù):
      * 出口參數(shù):
      * 說(shuō) 明:
      * 備 注:
      ****************************************************************************/
      voidlcd_enable()
      {
      rs = 0; //該字節(jié)數(shù)據(jù)為命令,而不是數(shù)據(jù)
      rw = 0; //此次操作為寫,而不是讀
      e = 0; //拉低使能信號(hào)
      delay(); //保持使能信號(hào)為低一段時(shí)間
      e = 1; //拉高使能信號(hào),建立LCD操作所需要的上升沿
      }

      /****************************************************************************
      * 名 稱:delay()
      * 功 能:延時(shí)
      * 入口參數(shù):
      * 出口參數(shù):
      * 說(shuō) 明:
      * 備 注:
      ****************************************************************************/
      void delay()
      {
      int i;
      for (i = 0;i < 5000;i++);
      }

      /****************************************************************************
      * 名 稱: writelcd()
      * 功 能: 在LCD上顯示字符串
      * 入口參數(shù):char *pt 字符串的首地址
      * 出口參數(shù):
      * 說(shuō) 明:
      * 備 注:
      ****************************************************************************/
      void writelcd(char *pt)
      {
      while(*pt)
      write(*pt++);
      }



      評(píng)論


      技術(shù)專區(qū)

      關(guān)閉