[资料分享] 数字时钟综合分析(一)数字时钟的设计

EEWORLD社区   2012-5-2 17:16 楼主

文章节选自:《ARM Cortex-M0从这里开始》 作者:zhaojun_xf   https://bbs.eeworld.com.cn/thread-324656-1-1.html

 

1  概述
       数字时钟是一种用数字电路技术实现年、月、日、时、分、秒、星期等计时的装置。与机械式时钟相比具有更高的准备性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。
2  数字时钟功能实现
       本章设计的数字时钟功能非常简单,只实现了基本的时钟显示和时钟设置功能。不过由于时钟采用TFT彩屏和专业字体的显示,使得时钟简洁、漂亮、大方。
1. 时钟显示
       时钟显示分为三行,第1行显示年月日,第2行显示时间,第3行显示星期,具体格式如图8-1所示。时钟采用多种字体显示,而彩屏并不带字库,所以下面会介绍怎样制作字库和使用字库显示。

                                   未命名3.jpg

2. 时钟设置
    时钟设置采用两种方式:一种是按键输入;另一种是红外遥控输入。
(1)按键输入
    按键输入采用6个按键实现,其功能设置如下:
 K1(KEY_OK):首次按下此键,进入时钟设置状态,再次按下此键,完成设置功能,并更新时间;
 K2(KEY_VOLM):设置项值减一;
 K3(KEY_VOLP):设置项值加一;
 K4(KEY_UP) : 向前移动设置选项;
 K5(KEY_DOWN):向后移动设置选项;
 K6(KEY_EXIT):在设置状态下,按下此键,退出设置状态,放弃更改设置值。
(2)红外遥控
    红外遥控使用的是频率为38KHz载波,实现的功能与按键是一一对应的。如图8-2所示为数字时钟使用的红外遥控。

                                               未命名4.jpg

       表8-1所示为红外遥控对应的解码值,表中值都是采用十六进制表示。

                                                     未命名5.jpg

       要获取遥控的解码值非常简单,只需要在程序中的调用红外解码函数IrDecode()。并且在如图8-3所示的地方打上断点,然后按下遥控按键,当程序运行到断点时,就可以在irCom数组中获取按键解码值了。需要注意的是,数值irCom[2]才是真正的按键解码值。

                      未命名6.jpg

3  数字时钟结构框图
    数字时钟主要是由LPC1114主控、电源模块、数字时钟、按键输入、SD卡、红外遥控和TFT显示模块等七个部分组成,如图8-4所示。LPC1114主控、电源模块、TFT显示以及SD卡部分在前面已经介绍,在这一章中将不再累述,读者可以参阅第7章中的内容。下面将分别介绍数字时钟、按键和红外遥控。

                        未命名7.jpg

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复