码迷,mamicode.com
首页 > 其他好文 > 详细

C51 静态数码管

时间:2018-11-05 11:14:37      阅读:275      评论:0      收藏:0      [点我收藏+]

标签:char   uid   info   table   lcd   reg   src   play   tab   

显示器介绍

单片机系统中常用的显示器有:

  • LED(Light Emitting Diode):发光二极管显示器
  • LCD(Liquid Crystal Display)液晶显示器
  • TFT 液晶显示器等。

LED显示器有两种显示结构:

  • 段显示(7段、米字型等)
  • 点阵显示(5×8、8×8点阵等)

我们这里用八段led数码管,静态数码管
LED数码管根据LED的不同接法可以分为2类

  • 共阴
  • 共阳

技术分享图片

显示数字和字母表

共阳

0 1 2 3 4 5 6 7 8 9 A B C D E F 无显示
0xC0 0xF9 0xA4 0xB0 0x99 0x92 0x82 0xF8 0x80 0x90 0x88 0x83 0xC6 0xA1 0x86 0x8E 0xFF

共阴

0 1 2 3 4 5 6 7 8 9 A B C D E F 无显示
0x3f 0x06 0x5b 0x4f 0x66 0x6d 0x7d 0x07 0x7f 0x6f 0x77 0x7c 0x39 0x5e 0x79 0x71 0x00

代码

#include <reg51.h>
#define u16 int
#define u8 unsigned char
#define delaytime 50000000
#define led P0
 
//这里用的静态数码管是共阴的

 //RAM 占用少,存在flash 里面:code
 //共阳的表,main中取反用
u8 code ledSegment  [16] = {    0x3f,   0x06,   0x5b,   0x4f,   0x66,   0x6d,
                        0x7d,   0x07,   0x7f,   0x6f,   0x77,
                        0x7c,   0x39,   0x5e,   0x79,   0x71};
void delay(u16 i)
{
    while(i--);
}


void main(void)
{
    int i=0;
    while(1)
    {
        led = ~ledSegment[i];
        delay(delaytime);
        i = (i+1)%16;
    }
}

C51 静态数码管

标签:char   uid   info   table   lcd   reg   src   play   tab   

原文地址:https://www.cnblogs.com/YuQiao0303/p/9907614.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!