数码管动态显示数字的四个实例程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
delay();
P2=0xf7; //P2.3引脚输出低电平,DS3点亮
P0=0x99; //数字4的段码
delay();
P2=0xff;
}
}
数码管慢速动态扫描显示1234
#include<reg51.h> //包含51单片机寄存器定义的头文件
void delay(void) //延时函数,延时一段时间
void main(void)
{
unsigned char i;
unsigned char code Tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
//数码管显示0~9的段码表,程序运行中当数组值不发生变化时,
//前面加关键字code,可以大大节约单片机的存储空间
uchar code DIS_BIT[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
/****************************/
void delay(uint k)
{
uint data i,j;
for(i=0;i<k;i++)
{for(j=0;j<121;j++)
P0=0xff;
}
}
}
数码管快速动态扫描显示1234
#include<reg51.h> //包含51单片机寄存器定义的头文件
void delay(void) //延时函数,延时约0.6毫秒
{
unsigned char i;
for(i=0;i<200;i++)
;
}
void main(void)
{
while(1) //无限循环
P0=0xa4; //数字2的段码
delay();
P2=0xfb; //P2.2引脚输出低电平,DS2点亮
P0=0xb0; //数字3的段码
delay();
P2=0xf7; //P2.3引脚输出低电平,DS3点亮
P0=0x99; //数字4的段码
delay();
P2=0xff;
}
}
数码管循环显示0-9*************************/
void main(void)
{
uchar cnt;
while(1)
{
for(cnt=0;cnt<8;cnt++)
{P0=DIS_SEG7[cnt+1];
P2=DIS_BIT[cnt];
delay(1);
P2=0xff;
{
P2=0xfe; //P2.0引脚输出低电平,DS0点亮
P0=0xf9; //数字1的段码
delay();
P2=0xfd ; //P2.1引脚输出低电平,DS1点亮
P0=0xa4; //数字2的段码
delay();
P2=0xfb; //P2.2引脚输出低电平,DS2点亮
P0=0xb0; //数字3的段码
#include<reg51.h> //包含51单片机寄存器定义的头文件
/**************************************************
函数功能:延时函数,延时一段时间
***************************************************/
P2=0x7f; //P2.7引脚输出低电平,数码显示器第7位接通电源工作
while(1) //无限循环
{
for(i=0;i<10;i++)
{
P0=Tab[i]; //让P0口输出数字的段码92H
delay(); //调用延时函数
}
}
}
{
unsigned char i,j;
for(i=0;i<250;i++)
for(j=0;j<250;j++)
;
}
void main(void)
{
while(1) //无限循环
{
P2=0xfe; //P2.0引脚输出低电平,DS0点亮
P0=0xf9; //数字1的段码
delay();
P2=0xfd ; //P2.1引脚输出低电平,DS1点亮
数码管显示09的段码表程序运行中当数组值不发生变化时前面加关键字code可以大大节约单片机的存储空间p20x7f
数码管动态扫描显示12345678
#include <REG51.H>
#define uint unsigned int
#define uchar unsigned char
uchar code DIS_SEG7[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
void delay(void)
{
unsigned char i,j;
for(i=0;i<255;i++)
for(j=0;j<255;j++)
;
}
/**************************************************
函数功能:主函数
***************************************************/
相关文档
最新文档