请看最后效果图,时钟集合就如桌面背景一样,十分方便了解所关心地区的时间:
1.不用下载其他软件,在window 7 系统程序里自带的桌面小工具库里就有这样的时间,如下图所示:
2,请左键双击一下时钟图标,在你的桌面右上角就会出现一个时钟;
3,请将鼠标自然放于时钟的右上角就会出现一个小扳手的工具,点击一下,就进入了设置页面(如下图所示),可以有8个不同样式的时钟可以选择更换,时区也可以修改,时钟的名称也可以在里面命名;
4,很好的一点,就是可以重复的添加时钟到桌面,
请各位看一下我的时钟效果,这就是我要的效果如下图:
~
说个思路吧,程序大概分这几个部分1 显示部分,六位数码管,置于连接方式可以选择动态扫描、串行静态显示、并行静态显示
2 rtc时钟,时钟芯片可以选择ds1302,这个最常用了用于保存时间,连接上备用电源,掉电数据不丢失
3 按键部分,这个是整个程序的精髓,按键处理不好这个系统也就没什么意思了,按键扫描可以使用状态机的方式
4 系统时钟,这个需要占用一个定时器,用于刷新显示,扫描按键,以及处理各种状态(这个可能不是很好理解仔细琢磨一下吧)
5 蜂鸣器报时部分,这个需要占用一个定时器,或者直接与系统时钟揉在一起,如果处理的好也可以播放音乐
*6 这个系统理论上应该搞一个flash用来存储定闹的时间,不然每次重开机都要重新设定闹钟,当然ds1302里面有个ram,不知道备用电池的情况下数据会不会丢失,如果不丢,那flash就可以省了。
大概就这几个部分,时间设置,闹钟设置,都属按键处理,置于显示六个时区时间也就是差整数个小时的问题,显示部分和按键处理部分要协调好,这个是整个系统的难点,除此之外也就没什么了
总结一下,这里用到的知识有数码管扫描,ds1302控制(i2c总线),按键处理,51定时器使用,51中断使用,51IO引脚控制,如果考虑蜂鸣器播放音乐这里还有PWM脉冲的相关知识。
代码估计不大可能会有人给你写,交给你个思路也让你有点方向,没有不劳而获的好事,没有free beer。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)