资源简介
本系统是基于单片机AT89S52制作的数字电子钟。根据实验要求,在完成实验所要求的基本功能外,扩展了几个功能。
硬件系统设计方面:
采用六位LED数码管,用切换的方式显示日期或时间和设置的闹钟时间;
可调整日期或时间以及闹钟时间;
具有设置闹钟的功能;
软件系统设计方面:
程序采用汇编语言编写,使自己更加理解硬件语言以及其工作原理。
“时钟”基准时间由单片机内部的定时中断提供用一个计数器对定时中断的次数进行计数,可实现“秒”定时,同理可以进行“分”﹑“时”定时,以及“日”﹑“月”﹑“年”定时,并充分考虑闰年等情况下的日期的差异
采用按键查询功能复用,简化了程序的设计
采用动态扫描法显示6位数码
代码片段和文件信息
#include
#include“def_init.h“
#include“1602.h“
#include“Sys_init.h“
uchar shfmryxlk1k2=0; //时间时分秒 日月年 星期 定时器溢出标志 两按键
uint n=2010;
uchar RshRfRswitchRrRy; //闹铃 日月年 时 分 开关
uint Rn=2010;
extern uchar s1[][5]={“mon ““tue ““wed ““thu ““fri ““sun ““sur “};
extern uchar s2[][10]={“Monday““Tuesday““Wednesday““Thursday““Friday““Saturday““Sunday“ };
extern uchar s3[][10]={“ ““January““February““March““April““may““June““July““August““September““October““November““December“};
extern uchar s0[11]=“0123456789“;
extern void LCD_display(void) // 适时动态显示
{
if(k1==0)
{
if(Rswitch&&Rn==n&&Ry==y&&Rr==r&&Rsh==sh&&Rf==f)
while(Rswitch&&Rf==f)
{
if(l)
{
w_str(00“the time you
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3522 2010-12-02 16:06 万年历带智能闹钟\1602.h
文件 47416 2011-01-10 18:49 万年历带智能闹钟\Calendar.axf
文件 7468 2011-01-10 18:49 万年历带智能闹钟\Calendar.bin
文件 8842 2011-01-10 18:49 万年历带智能闹钟\Calendar.c
文件 188978 2011-01-10 18:49 万年历带智能闹钟\Calendar.crf
文件 2434 2011-01-10 18:49 万年历带智能闹钟\Calendar.d
文件 21058 2011-01-10 18:49 万年历带智能闹钟\Calendar.hex
文件 34945 2011-01-10 18:49 万年历带智能闹钟\Calendar.htm
文件 324 2011-01-10 18:49 万年历带智能闹钟\Calendar.lnp
文件 74437 2011-01-10 18:49 万年历带智能闹钟\Calendar.map
文件 174396 2011-01-10 18:49 万年历带智能闹钟\Calendar.o
文件 4457 2011-01-10 18:50 万年历带智能闹钟\Calendar.plg
文件 479 2010-12-16 20:24 万年历带智能闹钟\Calendar.sct
文件 1073 2011-01-10 18:49 万年历带智能闹钟\Calendar.tra
文件 59097 2011-01-10 18:50 万年历带智能闹钟\Calendar.uvopt
文件 14806 2010-12-16 21:31 万年历带智能闹钟\Calendar.uvproj
文件 479 2010-11-28 11:21 万年历带智能闹钟\Calendar_sct.Bak
文件 3137 2011-01-10 18:49 万年历带智能闹钟\Calendar_Target 1.dep
文件 58243 2010-12-17 13:30 万年历带智能闹钟\Calendar_uvopt.bak
文件 14808 2010-12-08 09:33 万年历带智能闹钟\Calendar_uvproj.bak
文件 7808 2010-12-17 13:22 万年历带智能闹钟\def_init.h
文件 1416192 2010-04-22 10:46 万年历带智能闹钟\DriverLib.lib
文件 26760 2011-01-10 18:49 万年历带智能闹钟\Startup.lst
文件 3452 2011-01-10 18:49 万年历带智能闹钟\Startup.o
文件 10711 2010-12-08 09:31 万年历带智能闹钟\Startup.s
文件 1213 2010-12-29 12:59 万年历带智能闹钟\Sys_init.h
目录 0 2011-01-10 18:51 万年历带智能闹钟
----------- --------- ---------- ----- ----
2186535 27
............此处省略0个文件信息
- 上一篇:IMEI效验位生成器
- 下一篇:用WIN32编码的推箱子
相关资源
- 单片机proteus仿真100例
- 交通灯+RS232+模拟串口通讯 proteus 仿真
- DS18B20+DS1302 显示温度和时间Proteus仿真
- 51单片机 ADC0832 ADC 仿真 proteus LCD160
- TX-1C Proteus仿真板
- Proteus 7 Professional仿真 单片机双积分式
- Proteus STM32 PWM输出仿真.rar
- 汇编-电子时钟 8253+8255+8259.rar
- Proteus8.9 仿真STM32407ZGT6系列008_PWM输出
- Proteus 仿真 数字钟
- 基于LPC2124的温度模糊控制系统Proteu
- ADC0809数字电压表proteus仿真
- 交通灯的proteus仿真和用VHDL实现的代码
- AVR单片机ATmega16L继电器Proteus仿真
- proteus仿真430单片机测直流电压
- 心率计,用proteus 仿真
- 音响放大器仿真图
- 64*32点阵程序+proteus仿真
- 数码管60进制循环proteus仿真.DSN
- proteus仿真PWM控制电动机
- LCD+ADC0832电子秤仿真程序文件 含prot
- LTC1865(16位AD转换器)
- 流水灯程序+proteus仿真
- ADC0809实现数字电压表
- 电压表汇编语言(包含PROTEUS仿真文件
- PROTEUS中使用ARM处理器及uCOS-II仿真实验
- 基于PROTEUS的60秒倒计时实验
- AD转换程序(Proteus仿真)
- 量程自动切换数字电压表Proteus仿真
- PROTEUS VSM 1教程
评论
共有 条评论