找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 2954|回復: 1
收起左側

STC8G1K08T單片機LED數(shù)碼管自動掃描顯示相關程序

[復制鏈接]
ID:935302 發(fā)表于 2021-7-26 11:41 | 顯示全部樓層 |閱讀模式
STC單片機LED應用電路原理圖
51hei.png
  1. /*********************************************************/

  2. #define MAIN_Fosc        11059200L        //定義主時鐘

  3. #include        "..\..\STC8Gxxx.h"

  4. /*************        功能說明        *************

  5. 驅動8個共陰數(shù)碼管自動掃描顯示.

  6. P3.0~P3.7對應SEG0~SEG7(對應LED數(shù)碼管A~G, GP). 這8根SEG線跟LED連接要串聯(lián)限流電阻(建議200歐姆以上).
  7. P1.0 P1.1 P5.4 P1.3~P1.7對應COM0~COM7.

  8. ******************************************/


  9. /*************        本地常量聲明        **************/

  10. /*************        本地變量聲明        **************/

  11. /*************        本地函數(shù)聲明        **************/



  12. /****************  外部函數(shù)聲明和外部變量聲明 *****************/

  13. u8 code t_display[]={                                                //標準字庫
  14. //         0    1    2    3    4    5    6    7    8    9    A    B    C    D    E    F
  15.         0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,};

  16. /**********************************************/
  17. void main(void)
  18. {
  19.         u8        i;
  20.         u8        xdata *px;

  21.         P_SW2 |= 0x80;        //允許訪問XSFR(擴展特殊功能寄存器)
  22. //        XOSCCR = 0xc0;           //啟動外部晶振
  23. //        while (!(XOSCCR & 1));   //等待時鐘穩(wěn)定
  24. //        CLKDIV = 0x00;           //時鐘不分頻
  25. //        CKSEL = 0x01;            //選擇外部晶振

  26.         P1DR = 0x00;        //COM線設置為強電流驅動
  27.         P5DR = 0x00;        //COM線設置為強電流驅動
  28. //        P3DR = 0x00;        //SEG線設置為強電流驅動

  29.         COMEN  = 0xff;        //允許8個COM
  30.         SEGENL = 0xff;        //允許8個SEG
  31.         LEDCTRL = 0x80 + (2<<4) + 0;        //B7=1: ON,  B5 B4: 0共陰, 1共陽, 2共陰共陽, 3保留, B2 B1 B0: 0占空比100%, 1~7占空比7/8~1/8
  32.         LEDCKS = 8;        //1位LED掃描的主頻時鐘數(shù) = 1280*n, 頻率=fosc/(1280*n)

  33.         for(px = &COM0_DCL, i=0; i<8; i++, px++)        *px = t_display[i+1];        //共陰,顯示12345678
  34.         for(px = &COM0_DAL, i=0; i<8; i++, px++)        *px = t_display[8-i];        //共陽,顯示87654321 以示區(qū)分
  35.        
  36. //        P_SW2 &= ~0x80;
  37.        
  38.         while (1)
  39.         {
  40.                 //刷新COM0_DCL~COM7_DCL,即可刷新共陰顯示內容.
  41.                 //刷新COM0_DAL~COM7_DAL,即可刷新共陽顯示內容.
  42.         }
  43. }
  44. /**********************************************/
復制代碼
51hei.png

代碼下載: STC8G1K08T-LED數(shù)碼管自動掃描顯示相關程序.RAR (409.13 KB, 下載次數(shù): 49)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:469787 發(fā)表于 2021-8-20 20:59 | 顯示全部樓層
本帖最后由 在線 于 2021-8-20 21:01 編輯

懂了懂了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表