超级大爆乳奶牛被调教出奶水,真人裸交试看120秒,无码毛片AAA在线,亚洲最大天堂无码精品区

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

收藏網(wǎng)站 在線留言 網(wǎng)站地圖

晶拓液晶屏

晶拓 —— 14年專注LCD液晶屏定制服務(wù)段碼液晶屏設(shè)計(jì)及生產(chǎn)服務(wù)商

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

新聞資訊-聚焦行業(yè),創(chuàng)新服務(wù),晶拓品牌長遠(yuǎn)發(fā)展

HT1621B驅(qū)動(dòng)段碼液晶屏參考程序

作者: 晶拓小編 編輯: 晶晶 來源: 晶拓液晶學(xué)堂 發(fā)布日期: 2018.09.30
信息摘要:
段碼液晶屏往往應(yīng)用在出貨量比較大的家用消費(fèi)類電子,比如空調(diào)遙控器,小時(shí)候帶的電子手表等,都是段碼屏。段碼屏是非標(biāo)屏,都是客戶定做的,開模費(fèi)便…

(1)    段碼屏的驅(qū)動(dòng)程序跟數(shù)碼管的靜態(tài)驅(qū)動(dòng)程序一樣,只要我們弄懂了怎樣顯示一個(gè)基本單位,根據(jù)此基本單位編寫一個(gè)字庫表,然后   用與(&)和或(|)這兩種位運(yùn)算符就可以隨心所欲編寫我們要顯示的數(shù)字或者形狀。有兩種常用的驅(qū)動(dòng)方案:

第一種:如果單片機(jī)內(nèi)部集成了seg和com引腳的液晶驅(qū)動(dòng)模塊,直接用單片機(jī)驅(qū)動(dòng)。

第二種:單片機(jī)用3個(gè)IO口跟HT1621進(jìn)行通訊,用 HT1621驅(qū)動(dòng)段碼屏

這節(jié)我重點(diǎn)介紹第二種。HT1621有4個(gè)COM,分別是com3,com2,com1,com0。有32個(gè)SEG,分別是SEG0,SEG1….SEG31。

什么是COM,什么是SEG?用鴻哥的思路來解釋,COM就是橫向上的X坐標(biāo),SEG就是縱向上的Y坐標(biāo)。X坐標(biāo)與Y坐標(biāo)組合成一張表格,每格代表一個(gè)顯示點(diǎn)。比如HT1621,有4個(gè)COM,32個(gè)SEG,組成一個(gè)32行,每行裝4個(gè)點(diǎn)的表格,一共有128個(gè)點(diǎn),也就是最多可以顯示128個(gè)點(diǎn),用數(shù)碼管的思路,最多可以顯示128個(gè)LED燈。因?yàn)榭v向上有32行,因此Y軸的地址范圍是0到31。每一行X軸上的4個(gè)點(diǎn),我們用一個(gè)字節(jié)來表示。一個(gè)字節(jié)有8位,高4位分別代表這個(gè)4個(gè)點(diǎn),低4位為空。比如第一行(SEG0行)的第1個(gè)(COM3)要顯示,第2個(gè)(COM2)要顯示,第3個(gè)(COM1)不要顯示,第4個(gè)(COM0)不要顯示,那么用一個(gè)字節(jié)來表示就是十六進(jìn)制的0xc0.要把這兩個(gè)點(diǎn)點(diǎn)亮,只要把X軸的數(shù)據(jù)設(shè)置成0xc0,Y軸的數(shù)據(jù)設(shè)置成0x00,然后放到鴻哥精心研制的seg_display(unsigned char col, unsigned char pag)驅(qū)動(dòng)程序里就可以了.

(2)功能需求:

            在COM和SEG組成的4X32表格中,顯示第二行的第3和第4兩個(gè)點(diǎn)。

(3)        硬件原理:

用單片機(jī)的3個(gè)IO口分別跟HT1621的CS,WR,DATA連接。

(4)源碼適合的單片機(jī):STC11F04E,晶振為11.0592MHz。

(5)源代碼講解如下:

#include "REG52.H"

#include "absacc.h"

#include "intrins.h"

#include "stdio.h"

#define     BIAS         0X52   //此處千萬小心,在上個(gè)月的一個(gè)項(xiàng)目中就是在這里被卡了7天。

                               //必須跟硬件電路的COM匹配。1個(gè)或者2個(gè)COM:0x42。3個(gè)COM:0x4A。4個(gè)COM:0x52

#define     RC256        0X30            

#define     SYSTEN       0X02            

#define     SYSDIS       0X00            

#define     LCDON        0X06            

void SendBitToHT1621(unsigned char nbit,unsigned char n);//發(fā)送一個(gè)字節(jié)中的N位到HT1621里,驅(qū)動(dòng)程序的最底層部分  

void write_com(unsigned char cmdcode);  //寫命令到LCD

void init_lcd();  //--初始化LCD屏

void seg_display(unsigned char col, unsigned char pag); //顯示基本單位點(diǎn)                  

void screen_clear ();  //清空屏幕的內(nèi)容

//補(bǔ)充說明:程序風(fēng)格是這樣的,凡是輸出IO后綴都是_dr,凡是輸入的//IO后綴都//是_sr

sbit ht162x_data_dr=P3^1;

sbit ht162x_cs_dr=P3^6;

sbit ht162x_wr_dr=P3^0;

main()

 {

  init_lcd();   //初始化液晶屏

  screen_clear ();//清空整屏顯示內(nèi)容

  seg_display(0x30,1);   //在COM和SEG組成的4X32表格中,顯示第二行的第3和第4兩個(gè)點(diǎn)。

  while(1)

  {

     ;   

  }

}

//發(fā)送一個(gè)字節(jié)中的N位到HT1621里,驅(qū)動(dòng)程序的最底層部分

void SendBitToHT1621(unsigned char nbit,unsigned char n)  

{

 unsigned char i;

 for(i=0;i

 {

   ht162x_wr_dr=0;

   if(nbit>=0x80)      //判斷最高位  

     ht162x_data_dr=1;

   else

     ht162x_data_dr=0;

   _nop_();

   _nop_();

   _nop_();

   ht162x_wr_dr=1;

   _nop_();

   _nop_();

   _nop_();          

   nbit<<=1;

 }

}

//------------------寫命令到LCD,,驅(qū)動(dòng)液晶程序的一部分------------------------------

void write_com(unsigned char cmdcode)

{

 ht162x_cs_dr=0;         //選通HT1621

 _nop_();

 _nop_();

 SendBitToHT1621(0x80,4);

 SendBitToHT1621(cmdcode,8);

 _nop_();

 _nop_();

 ht162x_cs_dr=1;

 _nop_();

 _nop_();

 _nop_();

}

//*------------------初始化LCD屏--------------------------*/

void init_lcd()

{          

  write_com(SYSTEN);    //Turn on system oscillator

  write_com(RC256);     //啟動(dòng)內(nèi)部256KRC 振蕩器

  write_com(BIAS);      // 1/3 bais . 4 duty  

  write_com(LCDON);     //開啟LCD

}

//顯示基本單位點(diǎn),本節(jié)的核心內(nèi)容。col代表X軸,X軸的數(shù)據(jù)用位來表示,一個(gè)字節(jié)中的高4位來表示。pag代表Y軸

void seg_display(unsigned char col, unsigned char pag)                  

{

 pag<<=2;

 ht162x_cs_dr=0;         //選通HT1621

 _nop_();

 _nop_();

 SendBitToHT1621(0xA0,3);    //發(fā)送寫數(shù)據(jù)模式101

 SendBitToHT1621(pag,6);     //發(fā)送Y軸數(shù)據(jù)

  SendBitToHT1621(col,4);    //發(fā)送X軸數(shù)據(jù)

 ht162x_cs_dr=1;  

 _nop_();

 _nop_();

}

//*------------------清空屏幕的內(nèi)容---------------*/

void screen_clear ()

{

 unsigned char i;

 unsigned char y=0;

 for(i=0;i<32;i++)

    {

      seg_display(0x00,y);  

      y=y+1;

    }


}

(6)小結(jié):

因?yàn)槎未a屏是需要定制的,每種屏的邏輯表都不一樣,因此我在這里只列出最核心的驅(qū)動(dòng)程序,上層的應(yīng)用程序大家以后根據(jù)項(xiàng)目自己編寫,只要多利用查表,與(&)和或(|)這兩種位運(yùn)算符來處理,不難。軟件設(shè)置初始化HT1621的配置參數(shù)時(shí),要特別注意實(shí)際電路上用了多少個(gè)COM,然后設(shè)置相等的COM配置,否則,應(yīng)用在大段碼顯示屏的項(xiàng)目時(shí),有可能因?yàn)轵?qū)動(dòng)力不夠,會(huì)顯示亂碼。

推薦資訊
背光板

液晶屏背光板的分類及知識(shí)點(diǎn)

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

?VA彩屏液晶屏應(yīng)用眼部按摩儀

眼部按摩儀液晶顯示屏,VA屏,集美觀、實(shí)用于一體...
2019-04-19
VA彩屏液晶屏應(yīng)用于電動(dòng)車儀表

VA彩屏液晶屏應(yīng)用于電動(dòng)車儀表

電動(dòng)車儀表盤,VA彩屏,集美觀、實(shí)用于一體...
2019-04-19

咨詢熱線

13862038982