基于单片机的打铃器硬件设计.docx
- 文档编号:17699378
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:32
- 大小:966.49KB
基于单片机的打铃器硬件设计.docx
《基于单片机的打铃器硬件设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的打铃器硬件设计.docx(32页珍藏版)》请在冰豆网上搜索。
基于单片机的打铃器硬件设计
CHANGZHOUINSTITUTEOFTECHNOLOGY
科研实践
题目:
基于单片机的打铃器设计
二级学院(直属学部):
延陵学院
专业:
电气工程及其自动化
班级:
10电Y3
学生姓名:
学号:
指导教师姓名:
范力旻
职称:
副教授
2013年12月30日至2014年1月10日
摘要
单片机自1976年由Inter公司推出MCG-48开始,迄今已有二十多年了。
由于单片机集成度高、功能强、可靠性高、体积小、功耗低、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。
单片机的应用领域已经从面相工业控制、通讯、交通。
智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。
按照内部数据通道的宽度,单片机可分为4位、8位、16位及32位等。
单片机的中央处理器(CPU)和通用微处理器基本相同,只是增设了“面向控制”的处理功能。
例如:
位处理、查表、多种地址询问方式、多种跳转、乘除法运算、状态监控、中断处理器,强了实时性。
本设计以AT89S52芯片为核心,利用DS1302作时钟芯片,具有实时显示当前时间,按设定时间报时,能修改当前时钟等功能。
关键词:
定时打铃;DS1302时钟;LCD1602液晶显示
目录
第一章绪论4
1.1选题背景及研究意义4
1.2课题研究的主要内容4
第二章打铃器总体设计5
2.1系统设计要求5
2.2系统的主要功能5
第三章打铃器各部分组成及功能6
3.1单片机模块6
3.2按键模块7
3.3时钟模块7
3.4显示模块8
第四章硬件设计8
4.1总体设计结构图8
4.2最小系统电路设计9
4.2.1时钟脉冲电路的设计9
4.2.2复位电路图设计9
4.3输入电路设计10
4.3.1功能键系统设计10
4.3.2电源的设计10
4.4输出电路设计11
4.4.1蜂鸣器的设计11
4.4.2LCD液晶显示设计12
第五章硬件的仿真与调试13
5.1proteus软件的介绍13
5.1打铃器proteus软件的仿真13
第六章实物的制作15
6.1电路板焊接15
6.2电路板调试16
第七章总结和展望16
7.1科研实践总结16
7.2对未来的展望17
附录18
1.参考文献18
2.元器件清单19
3.原理图20
4.程序代码(C语言)20
5.实物图29
第一章绪论
1.1选题背景及研究意义
随着科技的不断发展,各种芯片都得到了很好的发展,89S52同样如此,从开始的无人问津到现在的随处可见,红绿灯,记分牌,电子秒表,遥控器,电饭煲, 电视等只要是电子产品,都会和芯片有关,其实芯片并不是什么神秘的高科技,它只是里面装了一些己编好的程序而己.而自动打铃系统是用汇编语言来编程的一个系统,它能够让一个学校或企业集团实现打铃自动化,总之,一个需要时间系统的机构实现自动提醒功能。
当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未有的速度被单片机智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。
对于本课题的研究与发展来说,不管是国内或者国外都已经发展的很成熟了,毕竟相对于单片机的飞速发展来说,自动打铃系统的设计并不算什么太难,而且可以算是很基本的东西,目前市场上各种类型的自动打铃系统层出不穷,大部分的打铃系统都是基于单片机开发的,而且是结合各种设备的综合应用系统,能实现的功能更强大也更便捷,例如基于校园网的自动打铃系统,自动广播打铃系统,音乐打铃系统等等,但是基本功能都相差不大,区别在于表现的形式有所不同。
不过就目前而言打铃系统的功能由单一型发展成多功能多花样的通用型,而且核心技术不再局限于单片机,这更好的刺激了单片机行业的进步和革新,要想不被时代的脚步所抛弃就必须不断研究出新的东西,保持自身的优势。
1.2课题研究的主要内容
本设计就是利用Atmel公司生产的单片机AT89S52,芯片DS1302用作时钟芯片(具有实时显示当前时间,按设定时间用蜂鸣器报时,能修改当前时钟(闹钟)等功能)。
在以单片机为核心的基础上加上其外围设备实现的小的系统——自动打铃系统。
所谓的单片机小系统从系统的角度来定义就是完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。
硬件设计部分分别从各个功能电路进行阐述,包括电源电路、复位电路、时钟电路及显示电路。
软件部分分成了四个模块:
初始化模块、时间显示模块、蜂鸣器模块、以及定时打铃模块。
初始化模块主要是p对定时计数器的方式及初值的设定,时间显示模块负责正确的显示当前时间,按键设定模块主要是对时间的校准及设定,定时打铃模块负责到时响铃功能。
也就是说系统的功能是由硬件和软件两大部分共同合作完成。
第二章打铃器总体设计
2.1系统设计要求
系统设计主要包括硬件和软件两大部分,根据控制系统的工作原理和技术性能,将硬件和软件分开设计。
硬件设计部分包括电路原理图、合理选择元器件、绘制线路图,然后对硬件进行调试、测试,达到设计要求。
硬件电路采用结构化系统设计方法,该方法保证设计电路的标准化、模块化。
硬件电路的设计最重要的选择用于控制的单片机,并确定与之配套的外围芯片,使设计的系统既经济又高性能。
硬件电路设计包括输入射出接口设计,画出详细电路图,标出芯片的信号、器件参数值,根据电路图在仿真机上进行调试、修改,最终达到设计要求。
2.2系统的主要功能
a、时钟功能:
能显示年、月、日、时、分、秒。
b、键盘功能:
能校正年份、日期、时间。
c、打铃功能:
按指定时间打铃即播放音乐。
多功能校园打铃控制系统是由微处理器单片机、键盘模块、时钟模块、复位电路、打铃电路和时间显示模块组成。
本系统采用AT89S52作为中央处理单元来自动控制蜂鸣器自动响铃,控制时间显示。
采用DS1302时钟芯片来为系统提供可靠的时间,尽量减少时间积累误差。
时间显示模块采用LCD1602来实时显示当前的年、月、日、时、分、秒时间,系统还设有输入键盘,可以校正实时时钟。
复位电路使CPU及系统各部件处于确定的初始状态,并从初态开始工作。
系统总体设计图如图2.1所示。
图2.1系统总体设计图
第三章打铃器各部分组成及功能
3.1单片机模块
AT89S52单片机是ATLEM公司推出的一种高速、低功耗、超强抗外界干扰微型单片机处理器,其编译的指令代码和C语言源程序完全兼容传统8051单片机,其为40引脚的双列直插封装形式的8位通用微型计算机处理器,采用工业上规定的标准的C51内核处理器,在其内部的功能及其引脚排布上与现在市场上或者工业上通用的8xc51是相同,其主要功能包括对会聚主IC内部的寄存器、数据的RAM及外部接口等功能部件的初始化,支持会聚调整控制,支持会聚测试图的有效控制,可以进行红外遥控信号IR的接收解码及与计算机主板CPU的通信等。
如果采用AT89C2051芯片,它具有体积小、功耗小。
含有中断、定时/计数器。
本次设计需要非常大的编程量,虽然其价钱相对便宜,但IO口数和存储空间相对较少,所以此芯片不利于系统的工作和系统功能的扩展。
如果采用AT89C51芯片,它具有AT89C2051芯片的所有功能,且IO口数相对较多,价钱相对也比较便宜,但存储空间不是非常大,而本次的设计需要大量的存储空间。
如果采用AT89S52芯片,它具有AT89C2051和AT89C51芯片的所有功能,且IO口数非常多,比AT89C2051和AT89C51多。
价钱虽然比AT89C2051和AT89C51昂贵,但存储空间非常大,可以到达8K。
而本次的设计正需要此容量的空间。
综上所述,我选择AT89S52芯片作为本次设计的主控芯片。
3.2按键模块
6个按键,分别对应年、月、日、时、分、秒。
功能:
确认信号是否输入。
3.3时钟模块
在通过各种的考虑后,时钟芯片我选用的是DS1302,DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。
实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。
工作电压宽达2.5~5.5V。
采用双电源供电(主电源和备用电源),可设置备用电源充电方式。
功能:
对年、月、日、时、分、秒进行计时。
3.4显示模块
在日常生活中,我们对液晶显示器并不陌生。
液晶显示模块已作为很多电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。
在单片机系统中应用晶液显示器作为输出器件有显示质量高、数字式接口、体积小、重量、轻、功耗低等优点。
液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。
液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。
功能:
显示时间数值。
第四章硬件设计
4.1总体设计结构图
打铃器的总体设计结构见图4-1:
图4-1打铃器总体结构图
4.2最小系统电路设计
4.2.1时钟脉冲电路的设计
AT89S52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端。
石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器。
石英晶振:
(利用12MHZ晶振)C1,C2=30PF。
陶瓷谐振器C1,C2=40PF。
XTAL1:
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:
振荡器反相放大器的输出端。
时钟脉冲电路见图4-2:
图4-2时钟脉冲电路图
4.2.2复位电路图设计
AT89S52的复位引脚(RESET)是第9脚,当此引脚连接高电平超过2个机器周期,即可产生复位的动作。
以12MHz的时钟脉冲为例,每个时钟脉冲为1μS,两个机器周期为2µS,因此,在第9脚上连接一个2μS的高电平脉冲,即可产生复位动作。
最简单的就是只有一个电阻跟一个电容就可组成一个可靠复位的电路,电阻一般选择10K,电容一般选择10µF,复杂一点的就加个按键,可以进行手动复位。
复位电路见图4-3所示:
图4-3复位电路图
4.3输入电路设计
4.3.1功能键系统设计
在单片机应用中键盘用得最多的形式是独立键盘及矩阵键盘。
由于使用独立式键盘编程相较于矩阵键盘比较简易,所以本实验我们采用的是独立式键盘,一个按键占用单独的一个I/O口,图中K1至K6分别代表年、月、日、时、分、秒。
按键电路图见图4-4:
图4-4按键电路图
4.3.2电源的设计
7805三端稳压集成电路,顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。
用7805三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。
7805三端稳压IC中的78后面的数字代表该三端集成稳压电路的输出电压,如7805表示输出电压为正5V。
如图4-5电源电路图所示将220V交流电压经过调压、整流、滤波以后变成5V直流电压。
外接220V电源接口,经过TRAN1变压成为9V电源。
9V的直流电源经过7805稳压电路调节和滤波电路后输出稳定的+5v直流电源。
图4-5电源电路图
4.4输出电路设计
4.4.1蜂鸣器的设计
系统蜂鸣器的工作原理如下:
当单片机端口输出高电平时,三极管B极处于高电平,三极管不导通,蜂鸣器不响。
当单片机端口输出低电平时,三极管B极处于低电平,三极管导通,蜂鸣器鸣响。
在本系统中如果要运用到实际中的话本来是要把单片机端口P3.4口接上继电器再控制220V电源的电铃的,但由于各种原因,在这次设计中我是用蜂鸣器来显示出打铃的效果。
其蜂鸣器发声电路如图4-5所示:
图4-5蜂鸣器发声电路图:
4.4.2LCD液晶显示设计
LCD1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:
阿拉伯数字、英文字母的大小写、常用的符号等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。
LCD2402液晶模块用LCD显示一个字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。
这样一来就组成某个字符。
但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。
因为LCD1602型液晶中存储有所需要显示日期和时间阿拉伯数字和英文字母,并且可以显示16*2个字符,足够显示本设计中要显示的字符。
所以,综上所诉,我选择LCD1602作为本设计的显示模块。
在我的LCD1602液晶显示屏上第一行显示的是年、月、日,第二行显示的是时、分、秒。
其电路如图4-6所示:
图4-6LCD1602实际应用电路图
第五章硬件的仿真与调试
5.1proteus软件的介绍
Proteus软件是LabcenterElectronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。
Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如按键、LED、数码管等等。
通过Proteus仿真软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。
我使用的Protues软件是7.10版本的,仿真时只需在AT89S52单片机中加载Keil软件生成的.HEX格式文件,即可启动仿真。
5.1打铃器proteus软件的仿真
绘制抢答器的软件仿真图步骤分一下四步:
(1)查找所需要的元器件;
(2)根据电路图进行连线;
(3)加载所写完的C程序生成的.HEX文件即可以仿真。
通过以上步骤,来实现打铃器设计的仿真实现,仿真如下图所示:
仿真开始时的仿真如图5-1:
图5-1开始时的proteus仿真图
调时初始状态下的仿真如图5-2:
5-2调时初始状态下的仿真图
打铃时的仿真如图5-3:
5-3打铃时的仿真图
复位时的仿真如图5-4:
5-4复位时的仿真图
第六章实物的制作
6.1电路板焊接
(1)焊接材料:
尖嘴钳,斜口钳,平头钳,电烙铁,吸锡器,螺丝起子,镊子。
(2)焊接方法:
①右手持电烙铁。
左手用手或镊子夹持元件或导线。
焊接前,电烙铁要充分预热。
烙铁头刃面上要吃锡,即带上一定量焊锡。
②将烙铁头刃面紧贴在焊点处。
电烙铁与水平面大约成60°角。
以便于熔化的锡从烙铁头上流到焊点上。
烙铁头在焊点处停留的时间控制在2~3秒钟。
③抬开烙铁头。
左手仍持元件不动。
待焊点处的锡冷却凝固后,才可松开左手。
④用镊子转动引线,确认不松动,然后可用偏口钳剪去多余的引线。
(3)焊接注意事项:
①防止触电,勿要烫伤人、电源线及衣物等。
②电烙铁的温度和焊接的时间要适当,焊锡量要适中,不要过多。
③烙铁头要同时接触元件脚和线路板,使二者在短时间内同时受热达到焊接温度,以防止虚焊。
④不可将烙铁头在焊点上来回移动。
也不能用烙铁头向焊接脚上刷锡。
⑤焊接二极管、三极管等怕热元件时应用镊子夹住元件脚,使热量通过镊子散热,不至于损坏元件。
⑥焊接集成电路时,一定等技术熟练后方可进行,注意时间要短,同时在焊接电路板的时候要断开烙铁电源。
板子和元件腿应该先处理干净,再涂一层松香酒精溶液,烙铁应该接地。
烙铁温度不应过高(最好采用恒温烙铁),每个腿的焊接时间应该控制2秒之内,以防止高温烧坏元器件和使铜箔脱离,焊点应小、圆而且有光泽,注意不要使相邻两焊点之间短路。
焊接完毕用硬刷子刷一遍板子,以防止有锡粒掉落在板子上,再用万用表电阻档检查电源接入端及单片机电源和地之间有无短路,最好用放大镜仔细检查一遍板子,看看有无因焊点过大而使相邻焊点短路。
6.2电路板调试
最小系统的电路不工作,首先应该确认电源电压是否正常。
用电压表测量接地引脚跟电源引脚之间的电压,看是否符合电源电压,常用的是5V左右。
接下来就是检测复位引脚的电压是否正常,EA引脚的电压要正常为5V左右。
如果补焊电源后最小系统还是不能工作,有可能是AT89C52单片机坏掉了,重新选择一个AT89C52单片机焊接。
如果是工作但是不能按需要的功能执行,也可用更换AT89C52单片机方法调试,但在此之前可以选择检查对应的模块是否有焊接问题,若没有再进行更换。
第七章总结和展望
7.1科研实践总结
过这次的实习我发现,只有理论水平提高了,才能够将课本知识与实践相结合,理论知识服务于教学实践,以增强自己的动手能力。
这次实习十分有意义,这次实习我们知道了理论和实践的距离,也知道了理论和实践相结合的重要性。
回顾起此次课程设计,感觉受益匪浅,从拿到题目到完成整个编程,从理论到实践,学到很多很多的课堂理论中没学到过的东西,不仅对键盘的识别技术这一章节的知识点有了深刻的认识,而且对这学期开设的单片机这门课程有了更全面的了解。
通过这次单片机课程设计,还使我懂得了实践的重要性。
同时在调试的过程中提高自己的发现问题、解决问题、实际动手和独立思考的能力。
这次课程设计能顺利的完成,除了我们的努力外,当然也离不开指导老师申老师的辛勤指导,致使我在设计的过程中学到了很多实用性的知识。
同时,对给过我帮助的所有同学和指导老师表示忠心的感谢。
7.2对未来的展望
经过两周的科研实践,我深刻明白了理论知识与社会实践相结合的道理,也得到了以前书本知识所不曾得到的知识,更加明白了如今信息时代电子技能知识的重要性。
本设计增强了我对单片机、C语言等技能方面的认识,掌握了分析、处理问题的方法、逻辑思维能力等基本技能的训练,具有了一定程度的实际工作能力。
面对如此激烈的市场竞争体系,只有努力掌握好单片机知识方可在竞争中立于不败之地,我对从事电子设计、C语言编程和研究产生了浓厚的兴趣。
希望自己以后能通过自己的不懈努力取得更大的进步。
附录
1.参考文献
[1]沈建华,杨艳琴,MSP430系列16位超低功耗单片机原理与实践[M].北京:
航空航天大学出版社,2008.7
[2]李广弟,朱月琴,王秀山,单片机基础[M]。
北京:
航空航天大学出版社,2005
[3]康华光,陈大钦,电子技术基础模拟部分[M]。
武汉:
高等教育出版社,2004
[4]谢自美,电子线路设计•测试(第二版)[M].武汉:
华中理工出版社,2006
[5]戴佳,戴卫恒,51单片机,C语言应用程序设计实例精讲[M]。
北京:
电子工业出版社,2003
[6]徐爱钧,彭秀华。
KeilCx51V7.0单片机高级语言编程与μVision2应用实践[M]。
北京:
东安子工业出版社,2002
[7]褚振勇,翁木云.FPGA设计及应用[M].西安:
西安电子科技大学出版社,2002:
7.
[8]赵立民,于海雁,胡庆,庞杰.可编程逻辑器件[M].北京:
机械工业出版社,2003:
4~5.
[9]白中英,主编数字逻辑与数字系统[M].科学出版社,2007[10]雷波主编,电子控制及仿真[D].武汉理工大学,2008.
[11]李士雄、丁康源主编,数字集成电子技术教程[M].北京,高等教育出版社,1993
[12]彭杰华主编,电子技术指导[M].北京,高等教育出版社,1997
[13]李振声主编,电子技术基础教程[M].北京,国防工业出版社,2001
2.元器件清单
序号
文字标号
名称
数量
规格型号
备注
1
U1
单片机
1
AT89S52
2
LS1
蜂鸣器
1
GPC1407YB
3
U2
时钟芯片
1
DS1302
4
LCD
液晶显示器
1
LCD1602
5
R1
电阻
1
10K
6
C1、C2
电容
2
104
7
X1
晶振
1
12MHZ
8
C3、C4
电容
2
30P
9
7805
稳压芯片
1
L7805CV
10
NPN
三极管
1
SS8550
11
C5
电容
1
470uf
12
C6
电容
1
220uf
13
C7
电容
1
10uf
14
SW1-SW7
按钮
7
TD-03B
15
KEY1
开关
1
控制电源
16
万用板
1
90*15
17
电池盒
1
18
VCC
电源
1
5V
19
焊锡丝
若干
3.原理图
4.程序代码(C语言)
#include
#include"ds1302.h"
#include"lcd1602.h"
#include"lingsheng.h"
ucharline;
ucharcode*datasong;
ucharcodeyin[30]={0xFF,0xFF,0xFB,0x90,0xFC,0x0C,0xFC,0x44,0xFC,0xAC,0xFD,0x09,0xFD,0x34,0xFD,0x82,0xFD,0xC8,0xFE,0x06,0xFE,0x22,0xFA,0X15,0XFB,0x04,0xFA,0x67,0xFE,0x85};
ucharcodesong1[46]={0x12,0x52,0x52,0x52,0x56,0x42,//<<兰花草>>
0x32,0x42,0x32,0x22,0x18,
0x82,0x82,0x82,0x82,0x86,0x72,
0xB2,0x72,0x72,0x62,0x58,
0x52,0x82,0x82,0x72,0x56,0x42,
0x32,0x42,0x32,0x22,0x16,0xB2,
0xB2,0x32,0x32,0x22,0x16,0x52,
0x42,0x32,0x22,0xC2,0x88,
0xFF};
externuchardisp[14];
sbitkey_duishi=P0^0;
sbitkey_miao=P0^1;
sbitkey_fen=P0^2;
sbitkey_shi=P0^3;
sb
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 打铃 硬件 设计