资源简介
本科期间使用protues和keil联合仿真的C51单片机八段LED静态显示电子时钟,内含protues图及MCS-51源码
代码片段和文件信息
#include
unsigned char code table[11]={0x800xF20x480x600x320x240x040xF00x000x200xFF};//0~9黑
unsigned char secondminutehourdatemonthksmh[8]dmy[8]move_sign=0;
unsigned int year;
sbit P1_0=P1^0;
sbit P1_1=P1^1;
sbit P1_2=P1^2;
sbit P1_3=P1^3;
sbit P1_4=P1^4;
sbit P1_5=P1^5;
sbit P1_6=P1^6;
sbit P3_2=P3^2;
void show()
{ unsigned char sbi;
P1_0=1;
if(P1_1==0)
{ for(i=0;i<8;i++)
{
sb=*(table+dmy[i]);
SBUF=sb;
TI=0;
while(!TI);
}
}
else
{ for(i=0;i<8;i++)
{
sb=*(table+smh[i]);
SBUF=sb;
TI=0;
while(!TI);
}
}
P1_0=0;
}
void runtime_0()
{
second++;
if(second==60) {second=0;minute++;}
if(minute==60) {minute=0;hour++;}
if(hour==24)
{
hour=0;date++;
switch(month)
{ case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if(date==32)
{ date=1;
month++;
}
if(month==13)
{
month=1;
year++;
}
break;
case 4:
case 6:
case 9:
case 11:
if(date==31)
{
date=1;
month++;
}
break;
case 2:
if(year%4==0&&year%100!=0||year%400==0)
{
if(date==30)
{
date=1;
month++;
}
}
else if (date==29)
{
date=1;
month++;
}
break;
}
}
if(year==10000)year=1;
}
void div()
{
smh[0]=second%10;
smh[1]=second/10;
smh[2]=minute%10;
smh[3]=minute/10;
smh[4]=hour%10;
smh[5]=hour/10;
dmy[0]=date%10;
dmy[1]=date/10;
dmy[2]=month%10;
dmy[3]=month/10;
dmy[4]=year%10;
dmy[5]=year/10%10;
dmy[6]=year/100%10;
dmy[7]=year/1000;
}
void timer0() interrupt 1 using 1 //T0为第1中断,INT0为第0中断
{
TH0=0x63;
TL0=0x1f;
k++;
if(k==50)
{ k=0;
runtime_0();
div();
show();
}
}
void delay(unsigned char timeiunsigned char timej)
{
unsigned char i;
unsigned int j;
for(i=0;i for(j=0;j {;}
}
void inc(unsigned char move_sign)
{
if(P1_1==0)
{
if(move_sign==1)
{
year++;
if(year==9999)
year=1;
}
if(move_sign==2)
{
month++;
if(month==13)
month=1;
}
if(move_sign==3)
{
date++;
switch(date)
{
case 29:
if(month==2&&!(year%4==0&&year%100!=0||year%400==0))
date=1;
break;
case 30:
if(month==2&&year%4==0&&year%100!=0||year%400==0)
date=1;
break;
case 31:
switch(month)
{
case 4:
case 6:
case 9:
case 11:date=1;
}
break;
case 32:
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2113 2007-12-17 22:16 time.Uv2
文件 154709 2006-09-22 21:22 八位.DSN
文件 5817 2007-07-25 00:08 静态显示.c
文件 11300 2007-12-17 22:16 time
文件 334 2007-12-17 22:16 time.plg
文件 4374 2007-12-17 22:16 time.hex
文件 41 2007-12-17 22:16 time.lnp
文件 19562 2007-12-17 22:16 time.M51
文件 1315 2007-12-17 22:16 time.Opt
----------- --------- ---------- ----- ----
199565 9
- 上一篇:SAMPLE语言的词法分析器
- 下一篇:linux0.12内核源码
相关资源
- flash透明时钟140个
- MCS-51单片机定时器和计数器区别的理
- actel fpga外部输入时钟毛刺问题排查与
- STM32F407实时时钟_DS1302实时时钟模块和
- 基于STM32F103的实时时钟程序,采用D
- 51单片机_DS1302时钟芯片_共阴数码管
- Qt时钟Demo,在原来基础上添加了秒针
- DS1302时钟带可调时间显示
- Lcd12864大时钟万年历 农历生肖温度
- 基于FFMPEG_SDL2_音视频播放_参考音频时
- Qt 日历可显示阴历生宵和时钟基于Q
- MSP430F5438 UCS 时钟操作实验
- MCS-51单片机定时器/计数器常见习题解
- 51单片机7种常见时钟电路图
- AVR多功能实验箱DS1302时钟实验源码资
- 畅学STM32多功能实验箱DS1302时钟芯片源
- “回收利用”数字系统中的时钟
- 基于单片机的电子时钟设计
- ESP8266+OLED屏实现天气预报+温度显示
- labview程序设计的电子时钟
- STM32指针式时钟工程项目
- 基于ISE的基本数字时钟工程
- stm32f103和时钟芯片ds1302
- 基于stm32辉光管时钟pcb
- 基于STC89C52单片机的数字时钟
- 基于单片机的数字时钟系统设计
- 可调电子时钟proteus_仿真+PCB+程序
- 完整版 VHDL设计数字电子时钟
- 高仿番茄时钟APP demo
- STM32+RTCDS1302实时时钟设计,整个工程
评论
共有 条评论