📄 共阴led和共阳led的应用.c
字号:
/****************************************************************************
共阴LED和共阳LED的应用
***************************************************************************/
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar j;
uchar t;
uint n;
const uchar tab1[]={0X3F,0X06,0X5B,0X4F,0X66, /*共阴0~9*/
0X6D,0X7D,0X07,0X7F,0X6F,};
const uchar tab2[]={0Xc0,0Xf9,0Xa4,0Xb0,0X99, /*共阳0~9*/
0X92,0X82,0Xf8,0X80,0X90,};
/*************************延时函数*****************************************/
void delay(uint n)
{ uint i;
for(i=0;i<n;i++);
for(i=0;i<n;i++);
for(i=0;i<n;i++);
for(i=0;i<n;i++);
}
/***************************外部中断0函数***********************************/
void Int0_server_(void) interrupt 0
{
uchar a;
a=tab2[j];
P1=a;
}
/****************************外部中断1函数*******************************/
void Int1_server_(void) interrupt 2
{
P1=0x00; // 清除数码管2显示的值
}
/****************中断初始化******************************************/
void Init_Int(void)
{
EX0=1; //打开外部中断0
IT0=1; //下降沿触发中断INT0
EX1=1; //打开外部中断1
IT1=0; //低电平触发中断INT1
EA=1; //全局中断允许
}
/***************************主函数*******************************************/
void main(void)
{
P1=0x00;
Init_Int(); // 中断初始化
while(1)
{
for(j=0;j<10;j++)
{
P2=tab1[j];//数码管快速循环从0显示到9
delay(9000); //延时
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -