1、本科毕业设计(论文)题 目 基于单片机的时控打铃设计 专业班级 学 号 学生姓名 指导教师 设计所在单位 基于单片机的时控打铃设计摘要:随着家用电器的越来越普及和人们生活节奏的加快,人们对电器的依赖性进一步提高,对电器的定时需求也进一步增大。定时开关打铃可用于工厂、学校等需要定时打铃的场合。定时开关打铃的使用能够做到节能、安全、方便等。本文介绍了一种基于STC89C52RC单片机的定时开关打铃设计方案。本文首先介绍定时开关打铃设计要实现的功能,接着阐述系统电路的设计及原理说明,包括设计方案选择、关键元器件介绍、电路设计说明(包括电源电路、键盘、单片机控制电路、液晶1602显示、蜂鸣器工作电路)
2、软件设计流程以及系统的测试。最后总结了定时开关打铃设计完成的任务,分析系统的不足并提出了系统的应用展望。关键词:STC89C52RC;定时打铃;1602液晶;键盘 Design of Control Outlet Based on SCMAbstract: with the increasing popularity of household appliances and people life rhythm speeding up, people for the dependence of the electrical appliances to further improve, deman
3、d for electric timing also increases further. Time switch ringing the bell can be used in factories, schools and so on need to regular the occasion of ringing the bell. Time switch the use of ringing the bell can achieve energy saving, safety, convenience, etc. This paper introduces a kind of based
4、on STC89C52RC single-chip microcomputer timer switch design of ringing the bell.This paper introduces the time switch design in order to realize the function of ringing the bell, and then expounds design and principle of the circuit system, including design scheme selection, key components, circuit
5、design specificSTCion (including power circuit, keyboard, 1602 single chip microcomputer control circuit, liquid crystal display, relay circuit) software design process, and system test. Finally summarizes the time switch ringing the bell design task, the shortcoming of the system and put forward th
6、e applicSTCion prospect of the system.Key words:STC89C52RC,Timer switch,LCD 1602,Keyboard目录目录第一章 绪论11.1 选题的目的与意义1第二章 系统设计方案22.1 系统结构与功能22.2 方案框图22.2.1 方案122.2.2 方案222.3 开关的选择32.4 显示方式选择42.5 时钟的实现及单片机的选择42.6 按键控制部分的实现4第三章 主要元器件原理及其应用63.1 单片机STC89C52简介63.1.1 主要特性63.1.2 引脚功能说明73.2 1602工业字符型液晶简介93.2.1 主
7、要特性93.3 蜂鸣器介绍103.3.1 蜂鸣器的继电特性103.3.2 蜂鸣器工作原理及特性103.3.3 蜂鸣器主要产品技术参数113.3.4 蜂鸣器的选用12第四章 硬件电路的设计134.1 单片机最小系统134.2 液晶显示144.3 蜂鸣器驱动电路154.4 键盘电路15第五章 系统软件设计175.1 开发环境175.2 各模块程序设计175.2.1 主程序流程图175.2.2 DS1302计时程序的编写185.2.3 LCD1602显示电路程序编写205.2.4 按键电路程序编写21第六章 系统制作及调试226.1 硬件制作226.2 硬件电路调试226.2.1 独立元件的检测22
8、6.2.2 单片机最小系统的调试226.2.3 显示模块的调试236.2.4 键盘模块的调试236.2.5 蜂鸣器电路的调试236.3 软件调试236.3.1 显示模块调试236.3.2 时钟模块调试236.3.3 键盘模块调试236.3.4 人机界面模块调试23结束语24致谢25参考文献26附录一 系统原理图27附录二 程序清单28第51页西安文理学院本科毕业设计(论文)第一章 绪论1.1 选题的目的与意义电铃广泛应用于学校、机关及工矿企事业单位,可实现作息时间的固定周期打铃,提示人们工作、学习或是休息。本文用单片机STC89S52作为控制芯片,开发了一种新型实用的电铃控制电路。本电铃控制电
9、路的优点:不再使用于电池做备用电源;数据存储时间达十年;平时万年历显示;打铃时显示不中断。电铃控制电路体积小、功耗低、可靠性好、性价比高。随着社会的发展,科学技术水平的日益提高,多种多样性能良好的电子产品逐渐取代了很多旧式的手动器件,比如说这件基于单片机设计的电铃控制器,不仅能够非常准确的预定的时刻响铃,而且还能够设定多个定时点,更方便的是,它还能够直观的显示星期、时、分、秒等信息,为人们的使用带来了很多方便。自动控制在人们的生活中可以说“无孔不入”,小到遥控儿童玩具,大到冰箱空调的智能化,都体现了科学技术的进步。特别是单片机(SingleChip Microcomputer SCM)技术的应
10、用,不但降低了生产成本,同时也方便了消费者,使操作简洁、安全。单片机的应用使许多复杂的事情,都能够简单、方便的实现了。用单片机控制的自动打铃器,充分发挥单片机体积小,价格便宜,功耗低,可靠性好等特点,充分发挥了单片机的控制优势。本打铃器可用于作息时间控制,方便了广大师生。第二章 系统设计方案本章主要讨论了系统的总体方案以及各模块的设计方案,包括了控制核心、开关、显示模块、时钟电路以及键盘电路方案。2.1 系统结构与功能系统总体设计主要实现以下功能:(1)人机交互界面:通过1602液晶显示屏,与独立按键建立起一套完善的人机交互界面。可以用于设置定时的参数。查看定时参数,现实时间。(2)设置定时时
11、间:用户通过人机交互界面,查找到设定时间界面,设置对应的每一组的设置时间。(3)设置现实时间:由于各种外界因素会导致系统现实时间与实际现实时间相异,系统支持修改系统现实时间。用户通过人机交互界面,查找到设定时间界面,设置系统现实时间。(4)报警:当用户设定时间结束时会出现报警提示。2.2 方案框图2.2.1 方案1采用数字电路控制。用以74LS161计数器构成的定时器电路做为智能打铃的核心控制,用拨码开关做为用户设置按键,其中包括了定时时间设定,系统时间初始化设定,开始停止控制时间的设定。通过555定时电路为计数器提供时钟,通过级联74LS161做为倒计时电路,通过与输出时间比较控制触发器从而
12、控制电路的开关。采用数字电路设计的方案需要大量的74LS161芯片以提供较长的定时时间(若定时时钟为1Hz,定时10小时需要36000S,需要四片74LS161),系统结构复杂,成本较高,系统稳定性差,定时时间调整不灵活。故不采用此方案。2.2.2 方案2采用一种以STC89C52为核心的单片机控制方案。选用单片机STC89S52 作为本设计的核心元件,利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,实现基本的定时控制功能。在单片机的外围电路外接输入键盘及1602液晶用于构造人机交互界面以设置各个参数。其原理如下图2.1所示:STC 89C52DS1302计时模块蜂鸣器模块红外接收
13、模块蜂鸣器按键模块5V稳压模块图2.1 硬件电路原理图由此可以看出方案二控制灵活、节约成本和稳定性强的特点,此外还具有扩展功能,根据现实生活的需要此次设计采用此方案。本方案能独立设置20组开启和闭合的时间,同时能够独立设置星期一到星期日每一天的工作方式,如果当前星期被选中同时,当前时间符合开启时间,蜂鸣器闭合,否则蜂鸣器断开。本方案打铃有三种工作方式,即自动工作方式,永久打开方式,永久关闭方式。2.3 开关的选择现代自动控制设备中,都存在一个电子电路电气电路的互相连接的问题,一方面要是电子电路的控制信号能够控制电气电路的执行元件(电动机、电灯、热水器等),另一方面又要为电子线路的电器电路提供良
14、好的电隔离,以保护电子电路和人身的安全。电子蜂鸣器和光耦合器便能起到这一桥梁的作用。下面简要介绍各个方案的特点。方案一:采用蜂鸣器作为控制220V通、断的开关。固态蜂鸣器(SSR)与机电蜂鸣器相比,是一种没有机械运动,不含运动零件的蜂鸣器,但它具有与机电蜂鸣器本质上相同的功能。SSR是一种全部由固态电子元件组成的无触点开关元件,他利用电子元器件的点,磁和光特性来完成输入与输出的可靠隔离,利用大功率三极管,功率场效应管,单项可控硅和双向可控硅等器件的开关特性,来达到无触点,无火花地接通和断开被控电路。选用SRD-05VCD-SL-C蜂鸣器最大电路可达到10A,即蜂鸣器的正常工作范围为0到2200
15、瓦,可以给大部分家用电器供电。方案二:采用光耦合器实现单片机控制开关。耦合器(optical coupler,英文缩写为OC)亦称光电隔离器,简称光耦。光耦合器以光为媒介传输电信号。它对输入、输出电信号有良好的隔离作用,所以,它在各种电路中得到广泛的应用。目前它已成为种类最多、用途最广的光电器件之一。本次设计开关部分可以用蜂鸣器也可以用光耦合器。考虑到本设计蜂鸣器足以满足设计要求,而且蜂鸣器比光耦合器便宜,故选用蜂鸣器。2.4 显示方式选择在模拟电子和数字电子中,常用显示数据的有数码管和液晶显示器。方案一:采用LED数码管显示。虽然功耗低,控制简单,但却只能显示数字和一些简单的字符,而且显示信
16、息少,需要较多位的数码管,占用了较多的单片机I/O口,没有较好的人机界面。方案二:采用LCD液晶显示,可以显示所有字符及自定义字符,并能同时显示多组数据、汉字,字符清晰。由于自身具有控制器,不但可以减轻主单片机的负担,而且可以实现菜单驱动方式的显示效果,达到友好的人机介面。LCD显示能解决LED只能显示数字等几个简单字符的缺点,性能好,效果多,控制方便,显示方式多,且能耗也较少。这次设计中不仅要显示相应的时钟、定时组别、目前运行的模式,而且还要显示出相应的定时开始时间和结束时间,需要显示的信息较多,所以采用方案二,用LCD显示结果。2.5 时钟的实现及单片机的选择时钟的实现可已通过使用时钟芯片
17、或者单片机的定时器实现。下面简要介绍几种方案的特点。单片机仅用于控制蜂鸣器、键盘,实现时钟和定时,用52结构的有STCmel的STC89CXX系列、STC89SXX系列、STC89C20系列(20引脚)或STC的所有单片机都可以实现。根据在学校比较流行的学习单片机是STC89C52系列,而且STC89C52单片机便宜,购买方便,下载方便,故单片机选用STC89C52单片机。方案一:时钟通过使用时钟芯片来实现,控制部分通过使用单片机来实现。时钟芯片种类非常多,有内置晶振及充电电池的,也有外置晶振的,现在流行的时钟芯片有DS1302、 DS1307、PCF8485、SB2068等。使用时钟芯片可以
18、得到准确的时钟走时,可用简单的程序实现定时开关打铃的定时功能。方案二:时钟通过单片机的内部定时器来实现时钟。单片机的内部定时器可实现较为精确的时钟走时,定时50毫秒的误差率极小,可达到定时开关打铃的使用要求。使用单片机内部定时器可简化硬件电路,可以节省开支,但是编程的难度有所提高。本次设采用方案一,使用1302可以得到较为准确的时间信号。2.6 按键控制部分的实现时钟时间和定时时间的设置功能可以通过按键来实现。按键的实现可以通过以下两种方案实现:方案一:单片机的每一个I/O口与一个按键相连,这样就可以根据扫描I/O口的电平变化实现相关功能。这样可以很简单的实现按键的功能。方案二:使用矩阵键盘实
19、现。矩阵键盘可以用较少的I/O口实现多个按键功能,能节省更多的I/O口,利于系统扩展功能。但是编程复杂。根据本定时开关打铃的设置要求,用到6个按键。通过两个方案的对比,方案一的实施办法更符合要求。第三章 主要元器件原理及其应用本章主要讨论了各模块元器件的选择以及元器件的工作原理。3.1 单片机STC89C52简介主CPU电路选用STC89C52RC系列单片机,STC89C52RC是采用8052核的ISP(In System Programming)在系统可编程芯片,最高工作时钟频率为80MHz,片内含8K Bytes的可反复擦写1000次的Flash只读程序存储器,器件兼容标准MCS-52指令
20、系统及80C52引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,具有在系统可编程(ISP)特性,配合PC端的控制程序即可将用户的程序代码下载进单片机内部,省去了购买通用编程器,而且速度更快。STC89C52RC系列单片机是单时钟/ 机器周期(1T)的兼容8052 内核单片机,是高速/ 低功耗的新一代8052 单片机,全新的流水线/ 精简指令集结构,内部集成MAX810 专用复位电路。3.1.1 主要特性(1)增强型1T流水线/精简指令集结构8052CPU(2)工作电压:3.4V-5.5V(5V 单片机)/2.0V-3.8V(3V 单片机)(3)工作频率范围:0-35MHz
21、,相当于普通8052的0420MHz.实际工作频率可达48MHz.(4)用户应用程序空间12K/10K/8K/6K/4K/2K字节(5)片上集成522字节RAM(6)通用I/O口(27/23个),复位后为:准双向口/弱上拉(普通8052传统I/O口)可设置成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏每个I/O口驱动能力均可达到20mA,但整个芯片最大不得超过55mA(7)ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片(8)EEPROM功能(9)看门狗(10)内部集成MAX810专用复位电路(外
22、部晶体20M以下时,可省外部复位电路)(11)时钟源:外部高精度晶体/时钟,内部R/C振荡器。用户在下载用户程序时,可选择是使用内部R/C 振荡器还是外部晶体/时钟。常温下内部R/C振荡器频率为:5.2MHz6.8MHz。精度要求不高时,可选择使用内部时钟,因为有温漂,请选4MHz 8MHz(12)有2个16位定时器/计数器(13)外部中断2路,下降沿中断或低电平触发中断,Power Down 模式可由外部中断低电平触发中断方式唤醒(14)PWM(4路)/PCA(可编程计数器阵列),也可用来再实现4个定时器或4个外部中断(上升沿中断/下降沿中断均可支持)(15)STC89Cc526AD具有AD
23、C功能。10位精度ADC,共8路 (16)通用异步串行口(UART)(17)SPI同步通信口,主模式/从模式 (18)工作温度范围:0-75/-40-+85 (19)封装:PDIP-28,SOP-28,PDIP-20,SOP-20,PLCC-32,TSSOP-20(超小封状,定货)3.1.2 引脚功能说明管脚图如3.1所示。图3.1 STC89C52管脚图P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在fla
24、sh编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个 TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2 的触发输入(P1.1/T2EX),具体如下表所示。 在flash编程和校验时,P1口接收低8位地址字节。引脚号第二功能P1.0 T2(定时器/计数器T2的外部计数输入
25、),时钟输出P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5 MOSI(在线系统编程用)P1.6 MISO(在线系统编程用)P1.7 SCK(在线系统编程用)P2口:P2口是一个具有内部上拉电阻的8 位双向I/O 口,P2输出缓冲器能驱动4个TTL 逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地
26、址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O口,P2输出缓冲器能驱动4个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为STC89C52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。端口引脚第二功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INT
27、O(外中断0)P3.3 INT1(外中断1)P3.4 TO(定时/计数器0)P3.5 T1(定时/计数器1)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器读选通)此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对
28、FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当STC89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),E
29、A端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。3.2 1602工业字符型液晶简介3.2.1 主要特性工业字符型液晶,能够同时显示16x02即32个字符。(16列2行)。1602液晶管脚图如图3.2所示。图3.2 1602液晶管脚图1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的
30、LCD完全一样。1602管脚说明表如表3.1所示。表3.1 1602液晶管脚说明引脚符号功能说明1VSS一般接地2VDD接电源(+5V)3V0液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。4RSRS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。5R/WR/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6EE(或EN)端为使能(enable)端,下降沿使能。7DB0低4位三态、 双向数据总线 0位(最低位)8DB1低4位三态、 双向数据总线 1位9DB2低4位
31、三态、 双向数据总线 2位10DB3低4位三态、 双向数据总线 3位11DB4高4位三态、 双向数据总线 4位12DB5高4位三态、 双向数据总线 5位13DB6高4位三态、 双向数据总线 6位14DB7高4位三态、 双向数据总线 7位(最高位)(也是busy flag)15BLA背光电源正极16BLK背光 电源负极3.3 蜂鸣器介绍蜂鸣器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。3.3.1 蜂鸣器的继电特性蜂鸣器的输入信号x
32、从0连续增加达到衔铁开始吸合时的动作值xx,蜂鸣器的输出信号立刻继续增大,输出信号y将不再起变化。当输入量x从某一大于xx值下降到xf,蜂鸣器开始释放,常开触点断开。我们把蜂鸣器的这种特性叫做继电特性,也叫蜂鸣器的输入-输出特性。释放值xf与动作值xx的比值叫做反馈系数,即Kf=xf/xx。触点上输出的控制功率Pc与线圈吸收的最小功率P0之比叫做蜂鸣器的控制系数,即Kc=Pc/P0。3.3.2 蜂鸣器工作原理及特性(1)电磁蜂鸣器的工作原理和特性电磁式蜂鸣器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的
33、作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)释放。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于蜂鸣器的“常开、常闭”触点,可以这样来区分:蜂鸣器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。(2)热敏干簧蜂鸣器的工作原理和特性热敏干簧蜂鸣器是一种利用热敏磁性材料检测和控制温度的新型热敏开关。它由感温磁环、恒磁环、干簧管、导热安装片、塑料衬底及其他一些附件组成。热敏干簧蜂鸣器不用线圈励磁,而由恒
34、磁环产生的磁力驱动开关动作。恒磁环能否向干簧管提供磁力是由感温磁环的温控特性决定的。(3)固态蜂鸣器(SSR)的工作原理和特性固态蜂鸣器是一种两个接线端为输入端,另外两个接线端为输出端的四端器件,中间采用隔离器件实现输入输出的电隔离。 固态蜂鸣器按负载电源类型可分为交流型和直流型。按开关型式可分为常开型和常闭型。按隔离型式可分为混合型、变压器隔离型和光电隔离型,其中以光电隔离型最多。(4)磁簧蜂鸣器磁簧蜂鸣器是以线圈产生磁场将磁簧管发生动作的蜂鸣器,为一种线圈传感装置。因此磁簧蜂鸣器具有尺寸小、轻量、反应速度快、短跳动时间等特性。 当整块铁磁金属或者其它导磁物质与之靠近的时候发生动作,开通或者
35、闭合电路。由永久磁铁和干簧管组成。永久磁铁、干簧管固定在一个不导磁也不带有磁性的支架上。以永久磁铁的南北极的连线为轴线,这个轴线应该与干簧管的轴线重合或者基本重合。由远及近的调整永久磁铁与干簧管之间的距离,当干簧管刚好发生动作(对于常开的干簧管,变为闭合;对于常闭的干簧管,变为断开)时,将磁铁的位置固定下来。这时,当有整块导磁材料,例如铁板同时靠近磁铁和干簧管时,干簧管会再次发生动作,恢复到没有磁场作用时的状态;当该铁板离开时,干簧管即发生相反方向的动作。磁簧蜂鸣器结构坚固,触点为密封状态,耐用性高,可以作为机械设备的位置限制开关,也可以用以探测铁制门、窗等是否在指定位置。(5)光蜂鸣器光蜂鸣
36、器为AC/DC并用的半导体蜂鸣器,是发光器件和受光器件一体化的器件。输入侧和输出侧电气性绝缘,但信号可以通过光信号传输。 其特点为寿命为半永久性、微小电流驱动信号、高阻抗绝缘耐压、超小型、光传输、无接点等。主要应用于量测设备、通信设备、保全设备、医疗设备等。3.3.3 蜂鸣器主要产品技术参数(1)额定工作电压额定工作电压是指蜂鸣器正常工作时线圈所需要的电压,也就是控制电路的控制电压,根据蜂鸣器的型号不同,可以是交流电压,也可以是直流电压。(2)直流电阻直流电阻是指蜂鸣器中线圈的直流电阻,可以通过万能表测量。 (3)吸合电流吸合电流是指蜂鸣器能够产生吸合动作的最小电流。在正常使用时,给定的电流必
37、须略大于吸合电流,这样蜂鸣器才能稳定地工作。而对于线圈所加的工作电压,一般不要超过额定工作电压的1.5倍,否则会产生较大的电流而把线圈烧毁。 (4)释放电流释放电流是指蜂鸣器产生释放动作的最大电流。当蜂鸣器吸合状态的电流减小到一定程度时,蜂鸣器就会恢复到未通电的释放状态。这时的电流远远小于吸合电流。 (5)触点切换电压和电流触点切换电压和电流是指蜂鸣器允许加载的电压和电流。它决定了蜂鸣器能控制电压和电流的大小,使用时不能超过此值,否则很容易损坏蜂鸣器的触点。3.3.4 蜂鸣器的选用(1)先了解必要的条件 控制电路的电源电压,能提供的最大电流;被控制电路中的电压和电流; 被控电路需要几组、什么形
38、式的触点。选用蜂鸣器时,一般控制电路的电源电压可作为选用的依据。控制电路应能给蜂鸣器提供足够的工作电流,否则蜂鸣器吸合是不稳定的。 (2)查阅有关资料确定使用条件后,可查找相关资料,找出需要的蜂鸣器的型号和规格号。若手头已有蜂鸣器,可依据资料核对是否可以利用。最后考虑尺寸是否合适。(3)注意器具的容积。若是用于一般用电器,除考虑机箱容积外,小型蜂鸣器主要考虑电路板安装布局。对于小型电器,如玩具、遥控装置则应选用超小型蜂鸣器产品。通过上面的性能了解和比较,及考虑的器件的性价比,本设计选择电磁蜂鸣器。第四章 硬件电路的设计本章节详细讨论了各个模块的具体电路的设计,包括单片机最小系统、液晶显示模块、
39、蜂鸣器驱动模块以及键盘模块。4.1 单片机最小系统单片机最小系统由复位电路、时钟电路和单片机STC89C52组成,如图4.3所示。图4.1 单片机最小系统电路(1)时钟电路模块由于系统需要计算精确时间,所以该模块使用了一个12MHz的晶振。时钟电路用于产生单片机工作所需要的时钟信号,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按照时序工作。时钟电路图如图4.4所示。图4.2 时钟电路(2)复位电路模块复位是单片机的初始化操作,单片机启动运行时,都必须复位。复位电路包括了上电复位于手动复位两个部分。单片机复位信号为高电平复位。商店复位工作原理:上电时对电容充电,使复位管脚电平拉
40、高单片机复位,冲完后电容隔断电源于复位管脚由下拉电阻拉至第电平单片机正常工作。手动复位原理:按下按钮复位管脚电平被拉高单片机复位,松开按钮复位管脚电平拉低单片机正常工作。它的作用是使CPU和系统中其他的部件处于一个确定的初始状态,并从这个状态开始工作。一般,52系列单片机本身是不能自动复位的,必须配合相应的外部电路才能实现。当程序和电路都要回到最初的状态时使用此电路。复位电路图如图4.5所示。图4.3 复位电路(3)单片机STC89C52宏晶公司的89C52单片机是低功耗的具有4KB在线可编程Flash存储器的单片机。片内的Flash可允许在线重新编程,也可使用通用非易失性存储器编程。它将通用
41、CPU和在线可编程Flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能价格比的微控制器。4.2 液晶显示本设计选用的1602液晶为16管脚液晶,即带背光液晶。与单片机接口设计如下:714:连接P0端口4: 连接P2.65: 连接地6: 连接P2.71602液晶显示电路图如图4.6所示。图4.4 1602液晶显示电路4.3 蜂鸣器驱动电路蜂鸣器的驱动电路如图4.4所示。这是典型的蜂鸣器驱动电路。单片机是一个弱电器件,一般情况下它们大多工作在5V甚至更低。驱动电流在mA级以下。而要把它用于一些大功率场合,比如蜂鸣器驱动,显然是不行的。所以就要有一个环节来衔接,这个环节就是所谓的“功率
42、驱动”。蜂鸣器驱动就是一个典型的、简单的功率驱动环节。图中三极管8050有两个作用:一个是起放大作用,一个是起开关作用(严格来讲开关作用是放大作用的极限情况)。 8050的基极连接P20口,当P20为低电平时,蜂鸣器导通,当P20为高电平时蜂鸣器断开。图4.5 蜂鸣器驱动电路4.4 键盘电路本设计采用了独立键盘设计,只是用了6个独立案件与单片机IO口连接,利用简单的逻辑方式实现了人机交互界面。该界面操作简单,便于控制。人机界面在软件设计板块中将详细介绍。独立键盘电路如图4.8所示。图4.6 键盘电路第五章 系统软件设计本章详细介绍了各个模块的软件设计流程以及部分源代码,包括了时钟程序、人机界面
43、以及主程序。5.1 开发环境STC89C52单片机软件开发平台为Keil uvision4 C52,仿真环境为Protues,下载软件为STC_ISP。Keil C52是美国Keil Software公司出品的52系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。Protues软件是英国Labcen
44、ter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8052、HC11、PIC10/12/16/18/24/30/DsPIC
45、33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译。STC-ISP 是一款单片机下载编程烧录软件,是针对STC系列单片机而设计的,可下载STC89系列、12C2052系列和12C5410等系列的STC单片机,使用简便,现已被广泛使用。5.2 各模块程序设计5.2.1 主程序流程图在本次设计中,主程序主要是在单片机的控制下,建立人机操作界面,对设定时间进行储存分析,驱动液晶显示出相关信息,并通过对比分析定时时间与时钟,控制蜂鸣器的通、断,从而达到控制打铃的通、断
46、电。在这个过程中,单片机首先进行初始化,包括设置单片机各个端口的方向,各个变量的初始化,液晶显示初始化、蜂鸣器断开以及单片机振荡频率的校准等。整个系统软件设计的流程图如图5.1所示。开始系统初始化是否有键按下是否到达定时时间蜂鸣器吸合NYN执行按键程序Y图5.1 主程序流程图5.2.2 DS1302计时程序的编写 DS1302串行时钟芯片的主要组成部分:移位寄存器控制逻辑、振荡器、实时时钟以及RAM。为了初始化任何的数据传送,把RST置为高电平且把提供地址和命令信息的8位装入到移位寄存器中。数据在SCLK的上升沿串行输入。无论是读周期还是写周期发生,也无论传送方式是单字节传送还是多字节传送,开始8位指定的40个字节中的那个将被访问。在开始8个时钟周期把命令字装入移位寄存器之后,另外的时钟在读操作时输出数据,在写操作时输入数据。时钟脉冲的个数在单字节方式下为8加8,在多字节方式下为8加最大可达248的数。 如图18为DS1302的命令字节,每一数据传送由命令字节初始化。最高位有效位MSB必须为1。如果它是零,禁止写DS130