1.单个数码管的静态显示
/*--------------------------
功能:一个数码管的静态显示
Author: Zhang Kaizhou
Date: 2019-5-16 21:18:17
--------------------------*/
#include <reg52.h>
sbit duan_address = P2^6; // 定义段地址为位寻址类型的变量
sbit wei_address = P2^7; // 定义位地址为位寻址类型的变量
void main()
{
wei_address = 1; // 打开位锁存器
P0 = 0xfe; // 输出数码管所在的位置
wei_address = 0; // 关闭位锁存器
duan_address = 1; // 打开段锁存器
P0 = 0x7d; // 输出共阴极数码管的段码(6)
duan_address = 0; // 关闭段锁存器
while(1);
}
2.数码管的动态循环显示
/*-----------------------------------
功能:在数码管上循环显示0~F 16个字符
Author: Zhang Kaizhou
Date: 2019-5-16 21:41:50
-----------------------------------*/
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit wei_address = P2^7; // 定义可位寻址类型的变量wei_address
sbit duan_address = P2^6; // 定义可位寻址的变量daun_address
uchar num; // 定义无符号字符变量num
uchar code table[] = {0x3f, 0x06, 0x5b, 0x