四位加减计数器(C语言写)

来源:本站
导读:目前正在解读《四位加减计数器(C语言写)》的相关信息,《四位加减计数器(C语言写)》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《四位加减计数器(C语言写)》的详细说明。
简介:本文章是关于C语言编写四位加减计数器。

/*四位数码管的加减计数器程序,陈永飞同志于2007-11-10写,采用AT89C2051单片机,4位共阳数码管显示*/

#include<reg51.h>

#define leddata P1 //数码管的段码输出

#define uchar unsigned char

#define uint unsigned int

uint shu;

sbit jia=P3^0; //加一按键

sbit jian=P3^1; //减一按键

sbit qw=P3^2; //数码管的千位

sbit bw=P3^3; //数码管的百位

sbit sw=P3^4; //数码管的十位

sbit gw=P3^5; //数码管的个位

uchar code tab[]={ 0xC0,/*0*/

0xF9,/*1*/

0xA4,/*2*/

0xB0,/*3*/

0x99,/*4*/

0x92,/*5*/

0x82,/*6*/

0xF8,/*7*/

0x80,/*8*/

0x90,/*9*/

};

void desplay();

void delay(uchar a) //延时函数

{

uchar x,y;

for(x=0;x<a;x++)

for(y=0;y<200;y++);

}

void key() //按键扫描函数

{

if(jia==0)

{

delay(50);

if(jia==0)

{

while(!jia)desplay();

if(shu==9999)shu=0;

else shu++;

}

}

if(jian==0)

{

delay(50);

if(jian==0)

{

while(!jian)desplay();

if(shu==0)shu=9999;

else shu--;

}

}

}

void desplay() //显示函数

{

leddata=tab[shu/1000]; qw=0;delay(200);qw=1;

leddata=tab[shu%1000/100];bw=0;delay(200);bw=1;

leddata=tab[shu%100/10];sw=0;delay(200);sw=1;

leddata=tab[shu%10];gw=0;delay(200);gw=1;

}

void main() //主函数

{

while(1)

{

key();

desplay();

}

}

提醒:《四位加减计数器(C语言写)》最后刷新时间 2024-03-14 01:00:54,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《四位加减计数器(C语言写)》该内容的真实性请自行鉴别。