#include<reg52.h>
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
unsigned char code LedChar[]={
0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,
0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E
};
unsigned char LedBuff[6]={
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
};
unsigned char flagls = 0;
unsigned int cnt = 0;
unsigned char i = 0;
void main()
{
unsigned long sec = 0;
ENLED = 0;
ADDR3 = 1;
TMOD = 0x01;
TH0 = 0xFC;
TL0 = 0x67;
TR0 = 1;
while(1)
{
if(flagls == 1)
{
flagls = 0;
sec++;
LedBuff[0] = LedChar[sec%10];
LedBuff[1] = LedChar[sec/10%10];
LedBuff[2] = LedChar[sec/100%10];
LedBuff[3] = LedChar[sec/1000%10];
LedBuff[4] = LedChar[sec/10000%10];
LedBuff[5] = LedChar[sec/100000%10];
}
}
void time0() interrupt 1
{
TH0 = 0xFC;
TL0 = 0x67;
cnt++;
if(cnt >= 1000)
{
cnt = 0;
flagls = 1;
}
P0 = 0xFF;
switch(i)
{
case 0:ADDR2=0;ADDR1=0;ADDR0=0;i++; P0=LedBuff[0];break;
case 1:ADDR2=0;ADDR1=0;ADDR0=1;i++; P0=LedBuff[1];break;
case 2:ADDR2=0;ADDR1=1;ADDR0=0;i++; P0=LedBuff[2];break;
case 3:ADDR2=0;ADDR1=1;ADDR0=1;i++; P0=LedBuff[3];break;
case 4:ADDR2=1;ADDR1=0;ADDR0=0;i++; P0=LedBuff[4];break;
case 5:ADDR2=1;ADDR1=0;ADDR0=1;i=0; P0=LedBuff[5];break;
default:break;
}
}
中断3 - 副本.rar
版权申诉
120 浏览量
2023-02-26
09:47:01
上传
评论
收藏 21KB RAR 举报
金枝玉叶9
- 粉丝: 125
- 资源: 7640
最新资源
- 基于matlab实现用有限元法计算电磁场的Matlab工具 .rar
- 基于matlab实现有限元算法 计算电磁场问题 边界条件包括第一类边界和第二类边界.rar
- 基于matlab实现用于计算不同车重下的电动汽车动力性和经济性.rar
- 基于matlab实现遗传算法求解多车场车辆路径问题 有多组算例可以用.rar
- 浏览器.apk
- 基于matlab实现是一个matlab中的power system 中搭建的一个模型
- 基于JSP毕业设计-教学管理系统(源代码+论文).zip
- 基于JSP毕业设计-家政管理系统-毕业设计.zip
- 基于Python实现淘宝商品评论采集(含逆向)源代码
- 基于matlab实现多目标进化算法NSGAⅡ&Matlab讲解.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈