• <tt id="8kbxa"><span id="8kbxa"></span></tt>
      <video id="8kbxa"></video>
    1. <rt id="8kbxa"></rt>

      <cite id="8kbxa"><span id="8kbxa"></span></cite>
    2. <ruby id="8kbxa"></ruby>
    3. <strong id="8kbxa"><noscript id="8kbxa"></noscript></strong>
      <cite id="8kbxa"></cite>
      <cite id="8kbxa"><noscript id="8kbxa"></noscript></cite>

        <b id="8kbxa"><noscript id="8kbxa"></noscript></b>
        國內銷售專線:0755-83404646 / 0755-83570678 / 13923751240
        產品類別
        • 聯系方式
        • 在線QQ咨詢:在線QQ咨詢
          撥打銷售專線
          0755-83404646 / 0755-83570678
          聯系郵箱
          xyhlcd02@xyhlcd.com、service01@xyhlcd.com

        1621驅動段碼液晶屏詳解

        發布來源:www.health4life.net   發布時間:2022-3-27

        一、我們來了解1621段碼液晶屏的特性
        * 工作電壓 2.4 --5.2V * 內嵌 256KHz RC 振蕩器
        * 可外接 32KHz 晶片或 256KHz 頻率源輸入
        * 可選 1/2bais 或 1/3bais 偏壓和 1/2duty 、1/3duty、1/4duty 的占空比
        * 片內時基頻率源
        * 蜂鳴器可選擇兩種頻率
        * 內嵌時基發生器和看門狗定時器 WDT
        * 時基或看門狗定時器溢出輸出
        * 八個時基/看門狗定時器時鐘源
        * 一個 32segX 4com 的 LCD 驅動器,內部嵌有的 32X 4 位顯示 RAM 內存
        * 四線串行接口 /CS, DATA, WR, RD,一般情況下RD不用
        * 片內 LCD 驅動頻率不可調64HZ
        * 軟件配置特征: 數據模式和命令模式 兩種指令
        * 提供 VLCD 管腳用于調整 LCD 操作電壓(對比度調節)

        二、LCD 邏輯表對應關系
         1621驅動段碼液晶屏邏輯表
        1621的RAM 和上圖的邏輯表是對應的,
        這樣可以很好的理解了吧

        1621對應32個地址   每個地址對應4個com數據
        例如:0地址寫入0X08 對應SGE0的T1亮 
                      寫入0X01 對應SGE0的1F亮
        寫入0X02 對應SGE0的1G亮
        寫入0X07 對應SGE0的1E,1G,1F,三個一起亮    
        寫入0X0F 對應SGE0的1E,1G,1F,T1四個全部亮 
          
        1621可以連續寫,最好做的事一次寫入兩個地址,這樣好做table表,寫起來簡單。
         例如:前兩個地址寫入0XF7對應SGE0,SEG1的1E,1G,1F,1D,1C,1B,1A全部亮這樣就顯示了一個完整“8”字            
         

        要想使液晶屏顯示,IC的初始化中這幾個指令必須要寫。

        首先了解一下什么是指令,什么是數據
        1  0  0                  C8 C7 C6 C5 C4 C3 C2 C1 C0
        前三位100是指令的標志位,后面的9位是指令值
        1  0  1                  C7 C6 C5 C4 C3 C2 C1 C0
        前三位101是數據的標志位,后面的8位是數據
        也就是說看到前三位100 就代表指令,看到前三位101 就代表數據

         以下這4個指令要寫入初始化函數的
        1、SYS EN   100    0000 - 0001- X  指令 0X01   (打開閉系統振蕩器)X: Don't care   
        2、BIAS     100    0010 - abXc - X  指令 
        這里解釋一下:C=1為LCD1/3 bias ;C=0為LCD1/2 bias 
        ab=00:    2 COM
        ab=01:    3 COM
        ab=10:    4 COM
        3、RC256    100     0001-1000 - X   指令 0X01   (內部時鐘)X: Don't care
        4、LCDON    100    0000 - 0011 - X   指令 0X01 (打開LCD顯示)X: Don't care
                   
        下面是興宇合電子有限公司的程序C代碼詮釋
        /********************************************************
        公司:深圳市興宇合電子有限公司www.health4life.net
        功能描述: HT1621芯片測試程序
        人:Zheng Qiu Sheng
        本:1.0
        完成時間:2022年3月13日
        ********************************************************/
        #include  <reg51.h>
        #include  <intrins.h>
        #define uchar unsigned char
        #define uint unsigned int
        #define _Nop() _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_()
        #define BIAS    0x29   //0b100 - 0010 -1001 - 0    1/3duty 4com
        #define SYSDIS   0X00   //0b100 - 0000 - 0000 - 0       關振系統蕩器和LCD偏壓發生器
        #define SYSEN    0X01  //0b100 - 0000 - 0001 - 0     打開系統振蕩器
        #define LCDOFF   0X04   //0b100 - 0000- 0010 - 0       關LCD顯示
        #define LCDON   0X03  //0b100 - 0000 - 0011 - 0      打開LCD顯示
        #define XTAL    0x14   //0b100 - 0001- 0100 - 0     外部接時鐘
        #define RC256    0X18  //0b100 - 0001 - 1000 - 0       內部時鐘
        #define TONEOFF 0X10   //0b1000 0001 0000     關閉聲音輸出
        #define WDTDIS  0X0A   //0b1000 0000 1010       禁止看門狗
        //HT1621控制位(液晶模塊接口定義,根據自已的需要更改)
        sbit DAT=P1^0; 
        sbit wr=P1^1;   
        sbit CS1=P1^2; 
        uchar code table[10]={0xFA,0x0A,0xD6,0x9E,0x2E,0xBC,0xFC,0x1A,0xFE,0xBE}; //0---9的table表
        //////////    延時函數1    delay us///////
        void Delay(uint us)  
        {
        while(--us);
        }
        ///////////////  延時函數2  ///////////////////
        void DelayMS(uint iMs)
        {
         uint i,j;
          for(i=0;i<iMs;i++)
          for(j=0;j<65;j++)
             ;
        }
        /******************************************************
        函數名稱: void Ht1621Wr_Data(uchar Data,uchar cnt)
        寫數據函數,cnt為傳送數據位數,數據傳送為高位在前
        *******************************************************/
        void Ht1621Wr_Data(uchar Data,uchar cnt)
        {
           uchar i;
          for (i=0;i<cnt;i++)
           {  
               wr=0;
        if (Data&0x80)
                    DAT=1;          
        else 
                    DAT=0;
                 wr=1;
               Data<<=1;
          }
        }
        /********************************************************
        函數名稱:void Ht1621WrCmd(uchar Cmd)
        明:寫入指令  
        ********************************************************/
        void Ht1621WrCmd(uchar Cmd)
        {
          CS1=0;                   //片選CS低有效
          _Nop();
          Ht1621Wr_Data(0x80,3);    //寫入指令標志100
          Ht1621Wr_Data(Cmd,9);  //寫入指令數據
          CS1=1;                   //片選CS高關閉
          _Nop();
        }
        /********************************************************
        函數名稱:void Ht1621WrOneData(uchar Addr,uchar Data) 
        寫一個數據,
        1、先寫101數據的標識位
        2、再寫地址
        3、最后寫要顯示的數據
        ********************************************************/
        void Ht1621WrOneData(uchar Addr,uchar Data)
        {
           CS1=0;
          Ht1621Wr_Data(0xa0,3); //寫入數據標志101
          Ht1621Wr_Data(Addr<<2,6); //寫入地址數據
          Ht1621Wr_Data(Data,8); //寫入數據這里是兩個地址一起寫得8bit
          CS1=1;
        /********************************************************
        函數名稱:void Ht1621WrAllData(uchar Addr,uchar p)
        明:HT1621的數據位4位位一個地址,
        上面我們講過可以一次寫兩位 ,數據為8位。
        高四位----對應高地址   第四位-----對應低地址。
        ********************************************************/
        void Ht1621WrAllData(uchar Addr,uchar p)
        {
          uchar i;
          CS1=0;
          Ht1621Wr_Data(0xa0,3); //寫入數據標志101
          Ht1621Wr_Data(Addr<<2,6); //寫入地址數據
          for (i=0;i<16;i++)
           {
            Ht1621Wr_Data(p,8); //寫入數據  16X8=128bit 
           }
         // for (i=0;i<32;i++)
          / /{//這里是四位四位的寫數據的
          //  Ht1621Wr_Data(p,4); //寫入數據  32X4=128bit 
           //}

           CS1=1;
        }
        /********************************************************
        函數名稱:void Ht1621_Init(void)  www.health4life.net
        明:初始化后,液晶屏才能正常的工作
        ********************************************************/
        void Ht1621_Init(void)
        {
          CS1=1;
          DAT=1;
          DelayMS(200);      //延時使LCD工作電壓穩定
          Ht1621WrCmd(BIAS);      //BIAS的設置
          Ht1621WrCmd(RC256);    //使用內部振蕩器
                  Ht1621WrCmd(SYSEN);  //打開系統振蕩器
          Ht1621WrCmd(LCDON);  //打開LCD顯示   
        }
        /////////////////////////////////////////////////////////////////
        ////函數名:xianshi_1()
        ///客戶可以跟句自己的需求直接填入數據就可以顯示來了
        /////////////////////////////////////////////////////////////////
        void xianshi_1()
         {
         ///////////////////////////
          Ht1621WrOneData( 0, table[0]);       //顯示0
          Ht1621WrOneData( 2, table[1]);       //顯示1     
          Ht1621WrOneData( 4, table[2]|0X08);  //顯示2 +小數點       
          Ht1621WrOneData( 6, table[3]);      //顯示3
              :
              :
                      :
        Ht1621WrOneData( 12, table[8]|0X08);     //顯示8+圖標
                  Ht1621WrOneData( 14, table[9]|0X08);     //顯示9+圖標


        /********************************************************
        公司:深圳市興宇合電子有限公司www.health4life.net
        功能描述: HT1621芯片測試程序
        人:Zheng Qiu Sheng
        本:1.0   
        函數命: 一個筆段一個筆段循環顯示
        完成時間:2022年3月13日
        ********************************************************/
        void XUNHUN_XIANSHI( uchar Lenth ,uchar Time)
        {  
        uchar i,j,t;
        for (i=0;i<Lenth;i=i+2)
            {
              t=0x01;
        for (j=0;j<8;j++)
              {
                Ht1621WrOneData(i,t);
                t<<=1;
        t|=0x01;   
              DelayMS(Time);
              }
           } 
                }





        /********************************************************
        公司:深圳市興宇合電子有限公司www.health4life.net
        功能描述: HT1621芯片測試程序
        人:Zheng Qiu Sheng
        本:1.0   
        函數命: 主函數main()
        完成時間:2022年3月13日
        ********************************************************/
        void main()
        {  
          Ht1621_Init();    //上電初始化LCD
          DelayMS(100); //延時使初始化穩定
        while(1)

        Ht1621WrAllData00(0,0X00);//清除1621寄存器數據為0。
           DelayMS(400);
        Ht1621WrAllData00(0,0XFF);//填充示1621寄存器數據為1。
          DelayMS(800);    
        Ht1621WrAllData00(0,0X00);//清除1621寄存器數據為0。
          DelayMS(400);  
          Xianshi_1();              //此處客戶可以自己定義怎么顯示。
          DelayMS(800);
          XUNHUN_XIANSHI( 32 ,100)/// 一個筆段一個筆段循環顯示32個地址間隔100MS。
          DelayMS(800);
          }

        }

        總結:深圳市深圳市興宇合電子有限公司是一家從事研發,制造液晶顯示屏(LCD)、液晶顯示模組(LCM)、LED背光源以及數碼顯示屏的專業廠家,特別是靜電以及電磁干擾等方面經驗豐富,對客戶的問題能夠提供出快速 、準確 、專業的解答。 

        “質量第一、精益求精、追求卓越”之理念是興宇合公司始終如一的鄭重承諾。對于不明白或者有疑問的問題請撥打電話:

        0755-83404646 / 0755-83570678 / 13923751240


        Copyright© 2001-2021 深圳市興宇合電子有限公司 [擁有20年經驗的LCD顯示屏,液晶屏,液晶模組,液晶模塊,LED背光源,LED數碼管,深圳LCD/LCM液晶模組生產廠家]
        國內銷售專線:0755-83570678 前臺電話:0755-83404646 大客戶專線:13923751240 地址:深圳市寶安區石巖鎮宏發工業園16棟5樓
        粵ICP備11030976號   網站地圖


        分享到:
        国产11一12周岁女毛片
      1. <tt id="8kbxa"><span id="8kbxa"></span></tt>
          <video id="8kbxa"></video>
        1. <rt id="8kbxa"></rt>

          <cite id="8kbxa"><span id="8kbxa"></span></cite>
        2. <ruby id="8kbxa"></ruby>
        3. <strong id="8kbxa"><noscript id="8kbxa"></noscript></strong>
          <cite id="8kbxa"></cite>
          <cite id="8kbxa"><noscript id="8kbxa"></noscript></cite>

            <b id="8kbxa"><noscript id="8kbxa"></noscript></b>