资源简介
简易的LCD电子时钟,可调可改,欢迎下载。

代码片段和文件信息
/********************************************/
// 电子时钟
//实现功能: 显示欢迎界面,显示时间,修改时间
// 一键秒清零 一键时分秒清零
// 完成日期: 2016.12.24
// 运行后 出现开机界面,按下display显示欢迎界面,
// 按下TIME键显示 时间日期界面 此时+-清零开关均屏蔽
// 按下MODIFY键进入修改模式,此时DISPLAY 与TIME键
// 被屏蔽
/*********************************************/
#include
#include
sbit modify = P2^7; //修改模式
sbit add = P3^2; //+
sbit minus = P3^3; //-
sbit clearSecond = P3^0; //秒清0
sbit clearTime = P3^1; //时分秒清0
int num = 0; //光标闪烁的位置
uchar count = 0; //中断的计数
void displayTime(){ //显示时间函数
uchar i;
write_com(0x80); //显示第一行
for(i=0;i<6;i++)write_data(head1[i]); //显示Time:
write_data(table[(hour/16)]); //显示小时 十位
write_data(table[(hour%16)]); //个位
write_data(‘:‘);
write_data(table[(minute/16)]); //显示minute十位
write_data(table[(minute%16)]); //个位
write_data(‘:‘);
write_data(table[(second/16)]); //显示second 十位
write_data(table[(second%16)]); //个位
write_com(0xc0); //显示第二行
for(i=0;i<6;i++)write_data(head2[i]); //显示Date:
write_data(table[(year/16)]); //显示year 十位
write_data(table[(year%16)]); //个位
write_data(‘-‘);
write_data(table[(month/16)]); //显示month十位
write_data(table[(month%16)]); //个位
write_data(‘-‘);
write_data(table[(day/16)]); //显示day 十位
write_data(table[(day%16)]); //个位
second = second/16*10+second%16; //转为十进制
minute = minute/16*10+minute%16;
hour = hour/16*10+hour%16;
day = (day/16)*10+day%16;
month = month/16*10+month%16;
year = year/16*10+year%16;
}
void showNowTime(){ //显示目前的系统时间
read_register();
displayTime();
}
void updateTime(uchar addruchar dat){ //更新时间函数,
uchar sg;
s=dat/10;
g=dat%10;
write_com(0x80+addr);
write_data(0x30+s);
write_data(0x30+g);
}
void oneSecond()interrupt 1{
TH0=0X3C; //t0 定时方式1
TL0=0XB0;
count++;
if(count == 20)
{ //过了1s更新时间
count = 0;
second++;
updateTime(0x0csecond);
if(second >= 60)
{
minute++;
second = 0;
updateTime(0x09minute); //更新分钟
if(minute >= 60)
{
minute = 0;
hour++;
updateTime(0x06hour); //更新小时
if(hour >= 24)
{
hour = 0;
day++;
updateTime((0x40+0x4c)day); //更新天数
if(day >= 30)
{
day = 0;
month++;
updateTime((0x40+0x49)month); //更新月份
if(month >= 12)
{
month = 0;
year++;
updateTime((0x40+0x46)year); //更新年
}
}
}
}
}
}
}
void modifyModel(){ //修改时间模式
if(modify == 0){
TR0 = 0;
num++;
while(!modi
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8 2016-12-28 22:05 electricClock_QG\debug.h
文件 8066 2016-12-31 13:27 electricClock_QG\elecClock.c
文件 27332 2016-12-31 13:28 electricClock_QG\elecClock.LST
文件 21354 2016-12-31 13:28 electricClock_QG\elecClock.OBJ
文件 18446 2016-12-31 13:28 electricClock_QG\electricClock
文件 4672 2016-12-31 13:28 electricClock_QG\electricClock.hex
文件 55 2016-12-31 13:28 electricClock_QG\electricClock.lnp
文件 23529 2016-12-31 13:28 electricClock_QG\electricClock.M51
文件 18438 2016-12-31 13:22 electricClock_QG\electricClock.omf
文件 2873 2016-12-31 13:28 electricClock_QG\electricClock.omf.plg
文件 7060 2016-12-16 21:09 electricClock_QG\electricClock.plg
....... 59674 2016-12-31 13:28 electricClock_QG\electricClock.uvopt
....... 13572 2016-12-31 13:28 electricClock_QG\electricClock.uvproj
....... 59160 2016-12-30 12:50 electricClock_QG\electricClock_uvopt.bak
....... 13576 2016-12-28 22:53 electricClock_QG\electricClock_uvproj.bak
文件 99015 2016-12-31 13:28 electricClock_QG\finished.DSN
文件 1062 2016-12-31 13:28 electricClock_QG\finished.PWI
文件 99014 2016-12-29 20:21 electricClock_QG\Last Loaded finished.DBK
文件 115916 2016-12-28 22:53 electricClock_QG\Last Loaded unfinished -测试.DBK
文件 110174 2016-12-29 11:10 electricClock_QG\Last Loaded unfinished.DBK
文件 1215 2016-12-29 11:09 electricClock_QG\screen.h
文件 6376 2009-05-07 14:37 electricClock_QG\STARTUP.A51
文件 14093 2016-12-31 13:28 electricClock_QG\STARTUP.LST
文件 749 2016-12-31 13:28 electricClock_QG\STARTUP.OBJ
文件 1073 2016-12-29 10:21 electricClock_QG\U2.h
文件 909 2016-12-29 12:04 electricClock_QG\unfinished -测试.PWI
文件 1290 2016-12-29 11:14 electricClock_QG\unfinished.PWI
目录 0 2016-12-31 13:28 electricClock_QG
----------- --------- ---------- ----- ----
728701 28
............此处省略1个文件信息
- 上一篇:轮式移动机器人FastSLAM算法研
- 下一篇:uCGUI&emWin位图转换工具
相关资源
- FTP课程设计(服务端+客户端)
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 高频电子线路课程设计报告收音机
- 直流稳压电源的课程设计、安装及调
- EDA课程设计_密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 数据结构课程设计 6 1 彩票系统
- 单片机与温度传感器DS18B20的程序设计
- 端口扫描课程设计详细的报告
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
- 步进电机课程设计(个人设计)
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 校园网络规划与设计课程设计
评论
共有 条评论