📄 ex.c
字号:
//****************Copyright (c)*************
// 成都麟鑫科技有限责任公司
// http://www.linxinpro.com
//******************************************
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar code tab1[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0~9字形代码
uint counter1=0,counter2=0,counter3=0,counter4=0;time=100; //计数器变量初始化
sbit P1_0=P1^0;
sbit P1_1=P1^1;
sbit P1_2=P1^2;
sbit P1_3=P1^3;
void delay(uint tx);//延时程序
void show(uint tx1,uint tx2,uint tx3,uint tx4);
void main()
{
P1_3=1;//初始化数码管控制位
P1_2=1;
P1_1=1;
P1_0=1;
EA=1; //开中断
IT0=1; //外部中断0低电平触发
EX0=1; //外部中断0允许
while(1)
show(counter1,counter2,counter3,counter4);
}
/*中断服务程序*/
void interrupt0() interrupt 0 using 2
{
counter1++;
if(counter1>9)
{
counter1=0;
counter2++;
};
if(counter2>9)
{
counter2=0;
counter3++;
};
if(counter3>9)
{
counter3=0;
counter4++;
};
if(counter4>9)
counter4=0;
}
/*延时子程序*/
void delay(uint tx)
{
uint x=tx;
do
x--;
while(x>1);
}
/*显示计数次数*/
void show(uint tx1,uint tx2,uint tx3,uint tx4)
{
P2=tab1[tx1];
P1_0=0;
delay(time);
P1_0=1;
P2=tab1[tx2];
P1_1=0;
delay(time);
P1_1=1;
P2=tab1[tx3];
P1_2=0;
delay(time);
P1_2=1;
P2=tab1[tx4];
P1_3=0;
delay(time);
P1_3=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -