加入收藏
设为首页
联系站长

网站首页 | 自动化学科知识 | 自动化考研 | 自动化设计应用 | 学习经验 | 自动化就业 | 新生入学 | 大学校园 | 高校自动化论坛
当前位置:中国高校自动化网 >> 自动化学科知识 >> 单片机 >> 浏览文章
单片机入门制作专辑--4.用武之地
[ 来源:本站原创 | 作者: | 时间:2008年02月11日 | 浏览:
  

2402LCD电子钟

  今天算是和电子钟较上劲了,一连 3个电子钟是不是感觉有点腻?可是要注意它们所用的模块和功能都是不同的,每款都有自己的独到之处。这一款主要是具有强大的定时功能,而且它还有再开发的空间。不久后我将增加此电子钟的远程家电控制功能,这又会增加它的实用性。也许你还有更好的想法想实现,苦于不懂程序开发,这并没有多大关系。我总认为懂硬件、懂编程没什么了不起,有一点基础的人看一段时间也都可以学会,关键还是要看设计者的思路和创意。这就好像一部小说,语言也只不过是一种表达方式,妙语连珠是很好,可是小说看重的还是内容精彩。我想多花一些时间研究有趣的创意会让单片机爱好者玩的更精彩。2402LCD电子钟外观如图 7所示。

点此在新窗口浏览图片
图 7实物图

功能特点

  • 25路掉电不丢失数据的用户定时功能,定时生活方方面面。
  •  采用首创的忽略定时新概念。可以设置定时某项为忽略值,再配合 25路定时项目使定时内容自由发挥、千变万化。
  • SAA3010红外遥控器输入控制,数字键输入数据,方便快捷。
  • 精准温度显示,全息时间显示,定时器使用量显示。所有数据一目了然。
  • 全程帮助提示和独立的帮助菜单,易学易用。
  • 数字键输入设置内容,不只是用上/下键笨笨的调时了。
  • 人性化软件设计,设计时考虑到许多使用细节。

表 3
点此在新窗口浏览图片

采购时间

  表 3所示是这个设计中所用到的元器件。单片机依然选用 AT89S52,只是屏幕变成了 24列 2行的字符型 LCD显示屏。了解过单片机的朋友可能都听说过 1602LCD显示屏,好像这已经成为单片机学习的必备之物。无论是杂志、网络、图书,只要是涉及单片机学习的都有 1602显示屏介绍的部分。因为它是 LCD显示屏模块中较常用而易学习的一款,再加上价格相对便宜,吸引了不少初学者购买。现在随便在网上搜索都可以找到许多卖屏的商家,而却鲜有关于 1602LCD显示屏精致、实用的制作。我这里选择的 2402LCD显示屏是完全兼容 1602LCD显示屏的产品,区别只是多了 8列显示。用 2402LCD显示屏学习单片机也有同功之妙,现在市场上出售的 2402LCD的内部驱动芯片和 1602也都是一种,这是很容易买到的,不用完全对应型号,只要是 2402LCD显示屏都可以实现本制作,现在 2402LCD显示屏的市场价在 30元左右,买屏的时候别忘了索要显示屏的技术资料,这同属于产品的一部分。

  遥控器是采用现在单片机爱好者学习时最常用的 SAA3010型遥控器,除了现在用在本制作中,同时还可以用在红外遥控器解码之类的单片机实验内容中。随便一个卖电视机遥控器的摊位都有卖的,只要型号是 SAA3010就都可以用于本制作。 SAA3010遥控器的外观如图 8所示,市场价在 6元左右。

点此在新窗口浏览图片
图 8 SAA3010遥控器

  型号是 TSOP1738的家伙是一种红外一体接收芯片,它可以接收并放大红外遥控器发出的信号,最后将数据发送给单片机处理。它和 SAA3010遥控器是天作之合,谁也离不开谁,它们也是学习单片机对红外信号处理不可缺少的组合。虽然红外遥控器和红外接收芯片是一对黄金搭档,可是通常它们并不会出现在同一柜台。TSOP1738还得再到主营电子元器件的地方购买,市场价在 3元左右。

  这台电子钟是具有 25路掉电不丢失数据的定时功能,这种掉电不丢失来源于一片 EEPROM芯片:AT24C02,这是一款可以擦写 100万次、保存数据近百年、拥有 256字节的存储芯片。它采用 I2C通信接口,一般的单片机学习教程里也会讲到它,而我在这里就已经实际应用了。参考本制作的电路连接方法和源程序中对 AT24C02的驱动部分,比从书本上理论地研究更容易理解,这也是“实践出真知”的道理。一片 AT24C02的价格在 2元左右。

制作过程

  图 9所示是 2402LCD电子钟的电路图,你可能会发现这次单片机和 LCD显示屏之间的连接线比上一个制作多一些。没错,这次我们采用的是 LCD显示屏的并行连接,实际上这种连接是最为常见的,我们用两个制作分别介绍了 LCD的两种连接方法,也提供了这两种连接的驱动程序。到这里我说不下去了,我已经黔驴技穷了。制作时要注意的地方前文早就介绍完了,我实在想不到还能注意什么,如果这几个制作独立成文的话我想我可以写得更多,现在只能说点无关紧要的东西拖延时间了。烙铁烧热的时候不能用手摸!这种级别的事情大家还是注意一下好。

点此在新窗口浏览图片
图 9

工作原理

  嗯,算一算这个 2402LCD电子钟的功能很强大了,红外遥控器操作,25路独立定时闹钟,而且还是存放在 EEPROM中,但这些功能并不会让单片机系统的工作原理显得很复杂。通电后依然先显示开机画面,5秒之后进入时间显示状态,之前也会检查时钟芯片的数据是不是已经丢失,如果丢失则自动完成初始化程序。在时间显示状态,单片机会不断从 DS1302中读取时间数据、从 DS18B20中读取温度数据、从 AT24C02中读取闹钟数据并将它们一起送入 LCD显示屏显示,和 3208LED电子钟一样,闹钟数据也是不断地与时间数据比对的,如果相同则启动闹钟到时鸣响。每秒钟单片机将重复多次这样的工作。这个制作独特的地方是单片机不去读红外接收芯片的状态,是单片机不在乎用户对红外遥控器的操作吗?不是。其实是有更好玩的东西监视红外接收芯片状态,这就是中断控制器。我好像从来没有提过有这回事,只是它还是默默存在的。中断控制器是存在于单片机内部的,故名思意中断控制器是中断单片机正在运行的工作而让它干一点别的事情。正如你可以在看书,突然电话响了,你就会中断看书而先接电话,当电话挂断后你又回过神来继续看书。单片机的正常工作就是读一堆数据送入 LCD显示屏显示,而中断就是红外一体接收芯片发给单片机的一个低电平信号。单片机接到这个中断信号后就会先处理红外遥控器发来的操作,看看用户想干什么。用户操作完成了还回到时间显示状态读数据送显示。中断的应用是比较广泛的,简单的可以用在像上述的事件中断场合,复杂的可以用在操作系统程序的多任务切换。先了解一下,日后中断的学习足够你享受的。

使用说明

  控制项(Controller00~99)为 00时定时器为长达 30秒的闹钟鸣响,为 01时定时器为单音鸣响,其它控制项(02~ 99)为预留功能,就是留着为以后的开发做准备。定时器的启动是由每个定时器组的“秒”设置项来决定开启或关闭的。当秒项被设置为忽略,则无论其它数据如何此定时项被认为关闭。当秒项被设置成 00到 59时则此定时器项为开启状态。即如果使用某定时器项则该项秒值不能为忽略。

  “!AL*”是定时器总开关,它显示在主菜单上,总有 4种选择:

!AL0:关闭所有定时器(只是关闭,定时器数据不会被删除)。
!AL1:开启闹钟定时器。
!AL2:预留功能,不要选择此项。
!AL3:开启闹钟定时器。

  采用忽略功能的定时器可以有多种样式的组合功能(?表示忽略定时的项):

1-:设置单一次定时闹钟: 2007/05/19 [?] 12:00.00 _00 (只在 2007年 5月 19日 12时闹钟响一次。注意: _00是控制项数据)
2-:设置每日定时闹钟:?/?/?[?] 12:00.00 _00(在每天的 12时闹钟响一次)
3-:设置某月定时闹钟:?/05/?[?] 12:00.00 _00(每年 5月份的 12时闹钟响一次)
4-:设置星期定时闹钟:?/?/?[五] 12:00.00 _00(每周五的 12:00.00闹钟响一次)

  忽略定时功能是不是给了你更多的想象呢!这是实用、有趣、千变万化的,还有更多的定时方式等着你去挖掘,没想到定时也可以这么拽。而关于遥控器键盘功能可以在电子钟工作时按“MUTE”键查看帮助菜单,连续按“MUTE”键查看下一页帮助信息,各按键的功能上面写得很清楚。时间设置什么的功能就不介绍了,因为比较简单,玩一玩就明白了。

练武场

  定时闹钟是 2402电子钟的特长,可是生活中可能用不到这么多的闹钟。用不到的闹钟放着很浪费资源又污染环境。怎么把它们利用起来变废为宝呢?我们发现单片机的 I/O口还有一些没有用到的,如果在这些 I/O口上扩展一些控制电路来用定时功能控制家用电器定时不是很好吗!研究下源程序,不难实现。

上一页      下一页
本文共 4 页,第  [1]  [2]  [3]  [4]  页

 

上一篇:单片机入门制作专辑--1.白手起家
下一篇:单片机入门制作专辑--2.十八般兵器

相关文章
  • 暂无相关链接
  •  
    栏目导航
    相关搜索
    本周点击排行
    网站赞助商