单片机的自动打铃系统的设计

目 录
引言 1
一.元器件选择 1
(一)AT89S52单片机 1
(二)DS1302时钟 2
(三)LCD1602显示器 2
二.硬件设计 4
(一 )硬件设计原理 4
(二) 单片机最小系统 4
(三) 键盘电路 5
(四) LCD液晶屏表现电路 5
(五) 喇叭驱动电路 6
(六) 时钟电路 6
三.系统软件的设计 7
(一)主程序 7
(二)时钟读取流程 7
(三)液晶屏显示流程图 7
(四)按键扫描流程 7
(五)音乐播放流程图 11
四.调试 11
总结 13
致谢 15
参考文献 16
附录一:程序 17
附录二:电路图 33
附录三:仿真图 34
附录四:PCB图 35
引言
打铃器所能实现的基本功能就是到点提醒,这和闹钟还不一样,打铃器一般需要设置多个时间提醒点,在过去,很多时候都是以人工的方式进行到点打铃提醒,这样非常地浪费人力,后来就慢慢出现了自动打铃器,能够实现到点自动打铃的功能,时间到的时候,打铃器会发出“铃铃”的声音,这种打铃器目前在各个学校非常的多见,作为学生对这种打铃器是再熟悉不过的,但是这种“铃铃”的声音没有一点美感可言,而且有时候会有一种非常刺耳的感觉。本次的计划重点在于实现自动打铃体系的基本功能以外,首先的将这类传统的铃音替换以美好的音乐,并且若是必需要召开紧急会议等时,设置强制打铃按键 ,可以不受内部时钟 *好棒文|www.hbsrm.com +Q: ^3^5^1^9^1^6^0^7^2^* 
的节制,因而对这个课题的钻研不论是对我自身仍是对此项目在科技方面的长远发展都是有很首要的意义。
这个计划实现的基本功能描述以下:
a、时钟功效:在液晶屏上表现时间信息。
b、键盘功效:能校正年份、日期、时间。
c、打铃功效:达到设置的时间点时,音乐响起。
d、若是必要暂时打铃,可按下手动打铃按键,若是打铃过错,可按下截止打铃。
e、作息时间安排
6:10起床 6:40 ~7:25早自习 8:00 ~ 8:45 第一节课
8:55~ 9:40第二节课 10:00~ 10:45第三节课 10:55~11:40第四节课
12:30 ~ 13:30午休 14:00~14:45第五节课 14:55~15:40第六节课
16:00~16:45第七节课 16:55~17:40第八节课 19:00~ 19:45第一节晚自习
19:55~20:40第二节晚自习 10:30就寝
一.元器件选择
(一)AT89S52单片机
AT89S52单片机是一种低功耗、高性能的CMOS ?8位微控制器,其具有8K 系统可编程Flash存储器 。使用了Atmel 公司特有的高密度非易失性存储器 技术所制造,其芯片的产品指令及引脚功能能完全兼容于工业的80C51芯片。片上Flash允许程序存储器 在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。近年来由于社会对单片机系统的需求的日益增加,运用单片机技术创造的产品也随之高速的成长,这就使得其竞争压力有所提升。从而为了能更好的使用单片机让它进入到大众的平台,其生产支出成本不升反降。因为性能好、成本低而且被普遍的运用。因此受到众多编程者和各行各业企业家的热捧。
AT89S52的处理位数为8位,属于未处理范畴。内置了标准的51内核,其实现功能引脚的定义与分布和51单片机相近。下面对其部分重要引脚功能进行说明:
图1 单片机引脚图
(二)DS1302时钟
这个时钟芯片从问世开始就以价格低,精度高,耗电低而著称,受到了电子行业工程师的喜爱,它的生产厂商为美国的DALLAS公司。它的工作电压范围是2.5-5.5V,一般给它的供电电压是5V。它实现的主要功能便是计时,并且时间可以存储在内部的RAM中,外部芯片,好比单片机可以将时间数今后存储器内读出。并且这个芯片具备有闰年抵偿功效,不需要用手动去校准。这个芯片是双电源供电,一个是主电源,一个是备用电源,一般使用电池进行供电,作用是主电源断电时可以采用辅电源供电,保证时钟数据不丢失。
它引脚说明如下图所示:
图2 DS1302引脚图
(三)LCD1602显示器
LCD1602型液晶屏广泛应用于数据显示,因为它的价格相对便宜,如果数据量不是很大的话它是非常好的选择,这种液晶屏可以显示两行数据,每一行为16个字符,这种液晶屏目前主要有两种封装形式,即16个引脚或者14个引脚。但是两块液晶屏的内部结构及其工作原理基本上如出一辙,没有比较大的出入。
图3 LCD1602液晶显示屏 图4 LCD1602显示电路
表1 1602LCD引脚功效
液晶屏内部存储器内存储了一些经常使用的字符,然后每一个字符对应一个8位的编码,数据表现时,向液晶屏输入对应字符的编码,则液晶屏上就会表现为该编码对应的字符了。液晶屏内部存储的字符主要为数字,和时常使用的一些字符,英文字母等。
下面介绍下对1602液晶屏ASCII码表的读取方法,每一个字符的码值是由16位二进制组成的,首先读取最上面的行上的数值,然后再读取最左侧列上的数值,组合在一起就是对应字符的码值。
液晶屏设置了8个数据I/O口,经由过程这8个数据口与单片机进行数据通讯。
显示模式设置: (初始化)
[0x38]表示界说1602液晶屏显示模式为16×2,5×7点阵,数据端口为8位;
显示开关及光标设置: (初始化)
二.硬件设计
(一 )硬件设计原理
要想实现这个计划体系的所有的功效,我将这个系统非为了几个模块,一是单片机控制体系模块,第一步就要实现整个体系的控制功效,一个是键盘模块,实现时间值的校准,另有便是液晶屏显示部分,用来变现为时间信息,喇叭电路用于声音的播放,时钟电路用于生成准确的时钟信息。其原理框图如图5所示。
图10 时钟电路
三. 系统软件的设计
图19 日期时间校正图
总结
在我的不懈努力和老师同窗的帮忙下,我的论文《基于单片机的自动打铃系统》最终完成了。经由最终的调试及测试基本完成了最初计划的功效。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/txgc/1876.html

好棒文