新闻中心

EEPW首页>嵌入式系统>设计应用> 单片机--数码管显示模块(C51)

单片机--数码管显示模块(C51)

作者: 时间:2016-11-22 来源:网络 收藏
下面是51单片机数码管显示模块的代码,具体说明在注释里表达得比较清楚。

本文引用地址://m.amcfsurvey.com/article/201611/319590.htm

#include < reg52.h >

#define uchar unsigned char

#defind uintunsigned int

sbit seg_oe=P1^3;//数码管显示使能端,低电平有效

sbit duanxuan=P1^4;//数码管的段选端

sbit weixuan=P1^5;//数码管的位选端

uchar code smg_duan[30]={//数码管段选码表,我们的数码管是共阴极数码管

0x3F,0x06,0x5B,0x4F,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71, }; //这是共阴极数码管0-E的显示码表

uchar code smg_wei[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//选择亮哪一个数码管,也就是数码管的位选信号

void seg_disp(uchar wei,uchar duan)//单个数码管的显示

{

weixuan=1;

P0=smg_wei[wei];

weixuan=0;

duanxuan=1;

P0=smg_duan[duan];

duanxuan=0;

seg_oe=0;

delay10ms();

seg_oe=1;

}

void delay10ms() //延时子程序

{

uchari,j;

for(i=1;i<40;i++)

for(j=1;j<40;j--);

}



评论


技术专区

关闭