A片视频免费看不卡视频/爽灬爽灬好深灬免费视频/色色网站五月天/国产99视频精品免视看7 - 午夜福利三级理论电影

歡迎光臨蘇州啟普微電子有限公司!

收藏網站 在線留言 網站地圖

晶拓液晶屏

晶拓 —— 14年專注LCD液晶屏定制服務段碼液晶屏設計及生產服務商

LCD液晶屏全國訂制熱線:13862038982

新聞資訊-聚焦行業,創新服務,晶拓品牌長遠發展

Ht1621液晶顯示詳細驅動使用說明以及程序

作者: 晶拓小編 編輯: 晶拓液晶屏 來源: 晶拓液晶屏工廠 發布日期: 2018.09.17
信息摘要:
HT1621是128點內存映象和多功能的LCD驅動器,HT1621的軟件配置特性使它適用于多種LCD應用場合,包括LCD模塊和顯示子系統。用…

1. 概述
HT1621是128點內存映象和多功能的LCD驅動器,HT1621的軟件配置特性使它適用于多種LCD應用場合,包括LCD模塊和顯示子系統。用于連接主控制器和HT1621的管腳只有4或5條,HT1621還有一個節電命令用于降低系統功耗。
在虎風所做的這個系統中ht1621用于驅動一個靜態的LCD液晶顯示器。液晶顯示的方式分為靜態顯示和動態顯示。靜態與動態的區別在于靜態顯示是持續供電的,而動態顯示是利用人的視覺停留效果,快速掃描數碼管各個段,讓人在視覺上感覺到數碼管是同時顯示的。
2. HT1621接線原理圖

Ht1621-1

3. 靜態LCD結構圖

Ht1621-2

4. 幾個曾經糾結的概念
Time base:時基,即時間基準,可以用來輸出,作為外部時鐘的時間基準。
占空比:將所有公共電極(COM)各施加一次掃描電壓的時間叫一幀,單位時間內掃描多少幀的頻率叫幀頻,將掃描公共電極(COM)選通的時間與幀周期之比叫占空比。通常占空比等于公共電極數N的倒數,即1/N。這就是說假如你要驅動4個液晶,就需要4個COM,那么你的占空比就要設定為1/4。
偏壓比:指的是液晶的偏壓系數,可以看看專業技術文章,偏壓目的是克服交叉效應,通過把半選擇點與非選擇點的電壓平均,適度提高非選擇點的電壓來抵消半選擇點上的一部分電壓,使半選擇點上的電壓下降,從而提高顯示對比度;后來行半選擇點和非選擇點上的電壓均為顯示電壓的1/a,1/a就稱為偏壓系數,也稱為偏壓。此方法稱為1/a偏壓的平均電壓法,簡稱為1/a偏壓法。
VLCD(LCD驅動電壓): LCD的驅動電壓為加在點亮部分的段電壓與公共電壓之差(峰-峰值)。
5. 關于RAM地址映射的概念
為了這個問題困擾了很久,虎風太愚鈍啦……
Ht1621有一個32*4的LCD驅動,映射到32*4的RAM地址。

Ht1621-3

上圖中寫命令101后面跟6位RAM地址,那么這個地址是如何確定的呢?其實說白了也很簡單,RAM地址就是SEG的序號。我們要點亮一段液晶管需要給他提供一個電平,而這個電平是由SEG管腳提供的,SEG管腳電平的輸出又取決于對應RAM地址中的值。
驅動一個8段數碼管的順序是A,B,C,D,E,F,G,DP,我們認為前面LCD結構圖中的數碼管3為我們要顯示的低位,那么連接原理圖中A3的是SEG12,我們就說此時的RAM地址為0b001100,連接B3的是SEG11,對應的RAM地址為0b001011,依次類推,首位數碼管的所有地址為:
0b001100,0b001011,0b001010,0b001001,0b001000,0b001101,0b001110,0b000111//DP2;
其余地址類似,在此不再解釋。
6. 程序
Unsigned char LCD_ADD[]={0b00001100,0b00110100,0b00010100,0b00100100,0b00000100,0b00101100,0b00011100,0b00111000,0b00000010,

0b00111100,0b00011000,0b00101000,0b00001000,0b00100010,0b00010010,0b00110000,0b00001010,0b00110010,

0b00010000,0b00100000,0b00000000,0b00101010,0b00011010};

void HT1621_Dis_Char(unsigned char d,unsigned char d_loca)
{
    unsigned char j; 
unsigned char seg_cnt=8 ;
if (d_loca==(HT1621_DATA_NUM-1))
     seg_cnt=7;
              //送3位模式碼101及6位首地址000000 0b000000101
    for (j=0; j     { HT1621_PORT&=~_BV(HT1621_CS);
 HT1621_Send_Bits(0x05,3);                  //送寫命令代碼101,高到低
      HT1621_Send_Bits(LCD_ADD[d_loca*8+j],6);   //送每段對應的地址
      HT1621_Send_Bits(d&0x01,4);  //送數據,com0對應的低位,低到高
 d=d>>1;//右移位
 HT1621_PORT|=_BV(HT1621_CS);
    }  
 }

/*=========顯示小數點=========
   輸入參數:Poi_loca,為小數點的位置(0是首位,1是次位)
 */
void HT1621_Pri_Point(unsigned char Poi_loca)
{   
unsigned char seg_cnt=8;
    if (Poi_loca<2)
    { HT1621_PORT&=~_BV(HT1621_CS);
 HT1621_Send_Bits(0x05,3);                  //送寫命令代碼101
      HT1621_Send_Bits(LCD_ADD[Poi_loca*seg_cnt+7],6);   //送點對應的地址
 //送數據
      HT1621_Send_Bits(1,4); 
 HT1621_PORT|=_BV(HT1621_CS);
    }  
}

/********************************************************
=======顯示INT型數據
dat--待顯示數據
********************************************************/
void HT1621_Print_onlyInt(unsigned long dat)
{
    unsigned char i;
    unsigned char data[HT1621_DATA_NUM];
    if (dat>=HT1621_DATA_max)
     dat=dat%HT1621_DATA_max;
for(i=0;i    if(dat<10)  data[0] = LCD_CODE[(unsigned char) (dat)];                                  //個位數
    else if(dat<100) {data[1] =LCD_CODE[(unsigned char) (dat/10)]; 
                 data[0] =LCD_CODE[(unsigned char) (dat%10)] ;}         //十位數
    else {
     data[2] =LCD_CODE[(unsigned char) (dat/100%10)]; 
     data[1] =LCD_CODE[(unsigned char) (dat/10%10)] ; 
     data[0] =LCD_CODE[(unsigned char) (dat%10)];
 }  //百位數
for(i=0;i      HT1621_Dis_Char(data[i],i);      
}

/*********************************************************/
//打印INT型數據
//dat--待顯示數據
//chk--顯示的數據位數: 0--關閉  1~3時,顯示對應的數據;大于3時只顯示3位;(從左到右)
//point_loc--顯示的小數點的位置:0以及大于2時:不顯示小數點;1-顯示首位,2-顯示次位;(從左到右)
/*********************************************************/
void HT1621_Print_Int(unsigned long dat,unsigned char chk,unsigned char point_loc)
{
    unsigned char i;
    unsigned char data[HT1621_DATA_NUM];

   //chk為0,則屏幕不顯示
for(i=0;i
    if(chk>0) {data[0] =  LCD_CODE[(unsigned char) (dat%10)];
           dat=dat/10;    }
    if(chk>1) {data[1] =  LCD_CODE[(unsigned char) (dat%10)];
          dat=dat/10;    }
if(chk>2) {data[2] =  LCD_CODE[(unsigned char) (dat%10)];
           }
  //顯示小數點
if (point_loc==1)
       data[0]|=0x80;
else if (point_loc==2)
  data[1]|=0x80;
  //從低位到高位,調用顯示每個數的函數HT1621_Dis_Char
    for(i=0;i      HT1621_Dis_Char(data[i],i);
  

}

/*********************************************************/
//送d_count位數據d;從低位開始送
/*********************************************************/
void HT1621_Send_Bits(unsigned char d, unsigned char d_count)
{
  unsigned char j;

  for (j=0; j {
        
        HT1621_PORT&=~_BV(HT1621_WR);       //wr置低;
        HT1621_Delay(50);

      if (d & 0x01==1)    //置數據位;
   { HT1621_PORT|=_BV(HT1621_DATA);  //data置0
}
else
{ HT1621_PORT&=~_BV(HT1621_DATA); //data置1
}
   HT1621_PORT|=_BV(HT1621_WR);        //wr置高;
        HT1621_Delay(50);
d =(d>>1);  //右移位
}
}

/*********************************************************/
//HT1621初始化
/*********************************************************/
void HT1621_Init()
{

DDRC  |= _BV(4)|_BV(5)|_BV(7);       //定義端口PC4-PC5-PC7輸出
HT1621_PORT&=~_BV(HT1621_CS);        //CS端清零
    HT1621_Send_Bits(0x01,3);            //送3位命令模式碼100 0x80=0b10000000
HT1621_Send_Bits(0x18,9);            //系統時鐘選用片內RC
HT1621_Send_Bits(0x80,9);            //打開系統振蕩器
HT1621_Send_Bits(0x94,9);            //1/2偏置,2個公共口 1000 0100
    HT1621_Send_Bits(0xc0,9);            //打開LCD偏置發生器
    HT1621_PORT|=_BV(HT1621_CS);         //CS端置1
HT1621_NoPrint( );                   //液晶不顯示
}  
7. 結束
HT1621作為液晶驅動芯片,功能十分靈活,而液晶在我們的學習項目中會經常用到,所以學好它的操作是十分必要的。
如果你看了這篇文章還不明白,就聯系客服咨詢吧,嘎嘎!




 晶拓是蘇州啟普微電子有限公司旗下LCD液晶屏品牌,在儀器、儀表、POS系統、電話、門禁、電腦、通信、電視、智能小家電等領域占有較大的市場份額,公司十年如一日的經營始終秉乘著“以品質求生存,以創新求發展”,誠信為本的經營理念,真誠希望與您共創美好明天。咨詢熱線:13862038982

【責任編輯】: 晶拓液晶

版權所有:http:// www.anthonydavid.net轉載請注明出處,違者本網將依法追究責任。


推薦資訊
背光板

液晶屏背光板的分類及知識點

背光板是提供LCD顯示器產品中一個背面光源的光學組件。由于液晶玻璃本身不具發光特性,因此根據需要會在液晶玻璃后面加上一個發光源,即背光板。應用范圍遍及醫療,美容,儀器儀表,車載設備,工業設備、銀行終端、辦公自動化、通訊、電子玩具及消費...
2019-10-12
?VA彩屏液晶屏應用眼部按摩儀

?VA彩屏液晶屏應用眼部按摩儀

眼部按摩儀液晶顯示屏,VA屏,集美觀、實用于一體...
2019-04-19
VA彩屏液晶屏應用于電動車儀表

VA彩屏液晶屏應用于電動車儀表

電動車儀表盤,VA彩屏,集美觀、實用于一體...
2019-04-19

咨詢熱線

13862038982