• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

MCS51单片机芯片1片,、8位LED数码管怎么编码

chenxing940122 2017-12-09 浏览量:849
MCS51单片机芯片1片,、8位LED数码管怎么编码
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • #include <reg52.h>
    #define uint unsigned int
    #define uchar unsigned char
    sbit dula=P2^7;
    sbit wela=P2^6;
    uchar num[] = {1, 2, 3, 4, 5, 6, 7, 8};
    uchar code table[] = {
        0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
        0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
    
    void delayms()
    {
        uchar i, j;
        for(i = 150; i > 0; i--) for(j = 150; j > 0; j--);
    }
    void display()
    {
        uchar i, wei = 1;
        for(i = 0; i < 8; i++) {
          P0 = ~table[num[i]];  dula = 1;  dula = 0;
          P0 = wei;  wela = 1;  wela = 0;
          wei *= 2;    delayms();
          P0 = 0;  wela = 1;  wela = 0;
        }
    }
    
    void main()
    {
        while(1)  {
          display();
        }
    }
    • 发布于 2017-12-09
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了 :错料 回复

其他答案 数量:1
  • 8位数码管肯定是动态数码管,有段选和位选两段,楼主需要掌握动态扫描方面的知识就可以驱动动态数码管。

    • 发布于2018-01-30
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

MCS51单片机芯片1片,、8位LED数码管怎么编码