wuyueseqing,仙府之缘txt下载,老师上课没戴奶罩看到奶头,菊内留香TXL金银花段小庄

您好!歡迎光臨烜芯微科技品牌官網(wǎng)!

深圳市烜芯微科技有限公司

ShenZhen XuanXinWei Technoligy Co.,Ltd
二極管、三極管、MOS管、橋堆

全國服務熱線:18923864027

  • 熱門關(guān)鍵詞:
  • 橋堆
  • 場效應管
  • 三極管
  • 二極管
  • 數(shù)碼管的基本構(gòu)造,顯示原理與驅(qū)動方式解析
    • 發(fā)布時間:2024-08-22 16:56:22
    • 來源:
    • 閱讀次數(shù):
    數(shù)碼管的基本構(gòu)造,顯示原理與驅(qū)動方式解析
    一. 什么是數(shù)碼管
    LED數(shù)碼管(LED Segment Displays)是由8個發(fā)光二極管構(gòu)成,并按照一定的圖形及排列封裝在一起的顯示器件。 其中7個LED構(gòu)成7筆字形,1個LED構(gòu)成小數(shù)點(也被稱為為八段數(shù)碼管)。
    常用的數(shù)碼管位數(shù)有1,2,3,4,5,6,8,10位等等,顏色有紅,綠,藍,黃等幾種。 了解LED的這些特性,對編程是很重要的,因為不同類型的數(shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。
    二. 數(shù)碼管基本構(gòu)造
    LED數(shù)碼管有兩大類,一類是共陰極接法,另一類是共陽極接法,共陰極就是8段的顯示字碼共用一個電源的負極,是高電平點亮,共陽極就是7段的顯示字碼共用一個電源的正極,是低電平點亮。 只要控制其中各段LED的亮滅即可顯示相應的數(shù)字、字母或符號。
    共陰和共陽極數(shù)碼管的內(nèi)部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已,共陰為所有的LED負極接在一起,共陽為為所有的LED正極接在一起。 如下圖為1位數(shù)碼管的共陰極和共陽極原理圖:
    數(shù)碼管構(gòu)造 顯示原理 驅(qū)動方式
    三、數(shù)碼管顯示原理
    要是數(shù)碼管顯示數(shù)字,有兩個條件:1.是要在VT端加合適的電源(一般每顆LED還需串上合適的電阻,起限流作用); 2.要使(a,b,c,d,e,f,g,dp)端接低電平或“0”電平。 這樣才能顯示的。
    例如下圖的共陰極數(shù)碼管,須在VT端接上地端,(a,b,c,d,e,f,g,dp)端接到單片機的引腳上; 如果要使其中一個LED亮時,對應的單片機引腳輸出高電平,即可點亮LED燈。
    數(shù)碼管構(gòu)造 顯示原理 驅(qū)動方式
    共陰極LED數(shù)碼管的內(nèi)部結(jié)構(gòu)原理圖
    能夠點亮數(shù)碼管后,就可以通過單片機控制數(shù)碼管顯示數(shù)字或字母。 為了控制方便,我們將數(shù)碼管的a~dp引腳依次連接單片機的P10-P17引腳,如圖:
    數(shù)碼管構(gòu)造 顯示原理 驅(qū)動方式
    我們對數(shù)碼管所要顯示的每個數(shù)字和字母進行編碼,然后在編程時,將編碼放在一個數(shù)組上,需要顯示什么數(shù)字或者字母,從數(shù)組里面提取相應的編碼就可顯示所要顯示的字符了。
    如圖,要顯示數(shù)字“5”時,編碼為0x6D。 如果數(shù)碼管為共陽極,只需要對共陰極的編碼做一個取反操作即可。
    數(shù)碼管構(gòu)造 顯示原理 驅(qū)動方式
    四. 數(shù)碼管驅(qū)動方式
    根據(jù)LED數(shù)碼管的驅(qū)動方式的不同,可以分為靜態(tài)式和動態(tài)式兩類。
    1.靜態(tài)驅(qū)動方式
    led靜態(tài)顯示時,其公共端接地(共陰極)或接電源(共陽極),各段選線分別與I/O口接線相連。 要顯示字符,直接在I/O線發(fā)送相應的字段碼。
    優(yōu)點: 靜態(tài)顯示結(jié)構(gòu)簡單,顯示方便,要顯示某個字符直接在IO線上發(fā)送相應的字段碼
    缺點: 一根數(shù)碼管需要8根IO線,數(shù)碼管比較多時候,非常占用IO線。
    2.動態(tài)驅(qū)動方式
    動態(tài)驅(qū)動方式是將所有的數(shù)碼管的段選線并接在一起,用一個IO接口控制,公共端并不是直接接地(共陰極)或者電源(共陽極),而是通過相應的IO接口控制。
    以共陽極為例假設(shè)4個數(shù)碼管工作過程為,如圖:
    數(shù)碼管構(gòu)造 顯示原理 驅(qū)動方式
    四位數(shù)碼管動態(tài)驅(qū)動方式連接圖
    每個數(shù)碼管的公共端與單片機的一個IO相連,第一步使最右邊一個數(shù)碼管的公共端為1(P21),其余數(shù)碼管公共端為0,同時在(a,b,c,d,e,f,g,dp)P0端上發(fā)送右邊第一個數(shù)碼管的字段碼,這時候只有右邊的第一個數(shù)碼管顯示,其余不顯示;
    第二步使右邊第二個數(shù)碼管的公共端(P23)為1,其余的公共端為0,同時在(a,b,c,d,e,f,g,dp)P0端上發(fā)送右邊第二個數(shù)碼管的字段碼,這時候,只有右邊第二個數(shù)碼管顯示,其余不顯示;
    以此類推,直到最后一個,這樣子4個數(shù)碼管輪流顯示相應的信息,一遍顯示完畢,隔一段時間,又這樣循環(huán)顯示。
    從計算機角度,每個數(shù)碼管隔一段時間才顯示一次,但是由于人的視覺暫留效應,只要隔離時間足夠短,循環(huán)的周期足夠長,美妙達到24次以上,看起來數(shù)碼管就一直穩(wěn)定顯示了,這就是動態(tài)顯示原理。
    五. 八位數(shù)碼管動態(tài)驅(qū)動例程
    以八位共陰極數(shù)碼管,動態(tài)驅(qū)動的方式為例:
    #include<reg51.h>
     
     
     
     
    //--定義使用的IO口--//
    #define GPIO_DIG   P0  //段選
    #define GPIO_PLACE P1  //位選
     
     
     
     
    //--定義全局變量--//
    unsigned char code DIG_PLACE[8] = {
    0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//位選控制   查表的方法控制
    unsigned char code DIG_CODE[17] = {
    0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
    0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
    //0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的顯示碼
    unsigned char DisplayData[8];
    //用來存放要顯示的8位數(shù)的值
     
     
     
     
    //--聲明全局函數(shù)--//
    void DigDisplay(); //動態(tài)顯示函數(shù)
    /*******************************************************************************
    * 函 數(shù) 名         : main
    * 函數(shù)功能       : 主函數(shù)
    * 輸    入         : 無
    * 輸    出         : 無
    *******************************************************************************/
    void main(void)
    {
      unsigned char i;
     
     
     
     
      for(i=0; i<8; i++)
      {
        DisplayData[i] = DIG_CODE[i];  
      }
      while(1)
      {
        DigDisplay();
      }        
    }
     
     
     
     
    /*******************************************************************************
    * 函 數(shù) 名         : DigDisplay
    * 函數(shù)功能       : 使用數(shù)碼管顯示
    * 輸    入         : 無
    * 輸    出         : 無
    *******************************************************************************/
    void DigDisplay()
    {
      unsigned char i;
      unsigned int j;
     
     
     
     
      for(i=0; i<8; i++)
      {
        GPIO_PLACE = DIG_PLACE[i];   //發(fā)送位選
        GPIO_DIG = DisplayData[i];     //發(fā)送段碼
        j = 10;             //掃描間隔時間設(shè)定
        while(j--);  
        GPIO_DIG = 0x00;//消隱
      }
     
    〈烜芯微/XXW〉專業(yè)制造二極管,三極管,MOS管,橋堆等,20年,工廠直銷省20%,上萬家電路電器生產(chǎn)企業(yè)選用,專業(yè)的工程師幫您穩(wěn)定好每一批產(chǎn)品,如果您有遇到什么需要幫助解決的,可以直接聯(lián)系下方的聯(lián)系號碼或加QQ/微信,由我們的銷售經(jīng)理給您精準的報價以及產(chǎn)品介紹
     
    聯(lián)系號碼:18923864027(同微信)
    QQ:709211280
    相關(guān)閱讀