定时打铃器的设计 课程设计

上传人:1888****888 文档编号:37015309 上传时间:2021-11-01 格式:DOC 页数:49 大小:1.91MB
返回 下载 相关 举报
定时打铃器的设计 课程设计_第1页
第1页 / 共49页
定时打铃器的设计 课程设计_第2页
第2页 / 共49页
定时打铃器的设计 课程设计_第3页
第3页 / 共49页
点击查看更多>>
资源描述
课程设计说明书 课程设计名称: 专业课程设计 课程设计题目: 定时打铃器的设计 学 院 名 称: 信息工程学院 专业: 电子信息工程 班级: 110411 学号: 11041130 姓名: 张明 评分: 教师: 李翔文 20 14 年 6 月 30 日 0专业课程设计(论文)任务书I、专业课程设计(论文)题目: 定时打铃器的设计II、专业课程设计(论文)使用的原始资料(数据)及设计技术要求:(1) 显示时钟格式:*时*分*秒。(2) 可任意设定时间达到定时控制,定时点可有2 个(3) 定时时间到,打铃1 分钟,然后自动关闭打铃。III、专业课程设计(论文)工作内容及完成时间: 第17周:设计电路图,参考文献,仿真。 第18周:领取元器件,按照电路图焊接。 第19周:调试装置,总结实验,完成实验报告。IV、主要参考资料:1 张先庭.单片机原理、接口与C51应用程序设计.北京:国防工业出版社,2011年2 吴开志、陈黎娟、邓谦、任爱山.单片机技术及应用实验指导书.南昌.南昌航空 出版社,2008年.3 吴清绣.微型计算机原理及接口技术.北京.中国科学技术大学出版社,2004年.4 吴向军.汇编语言程序设计.北京.高等教育出版社,2001年.5 李光飞.51系列单片机设计实例.北京:北京航空航天大学出版社.2003年信息工程 学院 电子信息工程 专业 110411 班学生(签名): 张明日期:自2014年6月5日至2014年6月25日指导老师(签名):助理指导老师(并指出所负责的部分): 电子 系(室)主任(签名):1 定时打铃器的设计 学生姓名:张明 班级:110411 指导老师:李翔文 摘要:随着电子技术的不断发展,定时提示功能在生活中、工作中越来越重要,在一些重要领域,对时间的精确度及实现多个时间点提示功能的要求也越来越高,通过合理的技术实现定时提示功能的多样化及高精度性越来越成为当下一迫切的需要。根据单片机的特性制作的定时打铃系统能很好的实现定时提示功能多样化的要求,且能满足一定程度下的时间精度要求。本文介绍的是以STC89C51芯片为核心结合其他硬件模块制作的定时打铃器实现定时提示功能。 本文主要介绍了定时打铃器的硬件、软件的设计及调试过程。硬件主要由:单片机最小系统、键盘显示电路、数据存储电路、打铃电路组成。单片机最小系统主要由AT89C51芯片构成;键盘显示电路主要由HD7279控制的4x4矩阵键盘和八个数码管构成;数据存储电路是以AT24C02芯片为基础的具有掉电保存数据功能的小型模块。打铃电路实现了到达定时点响铃提醒功能。软件采用Keil开发环境作为开发平台,程序由C语言编写,可读性强及可移植性。程序主要由主程序、键盘扫描子程序、定时中断子程序,显示子程序,数据存储子程序组成。通过单片机程序烧写软件,将程序写入AT89C51芯片中,结合硬件电路实现了通过程序控制硬件电路实现定时打铃功能。 经测试,本定时打铃器很好的实现了定时打铃功能,能设定四个定时时间点,响铃提示时间长达一分钟,且具有掉电保护功能,能存储设定好的定时时间点。由于本次设计中采用了模块化设计思想,故可以很方便的扩充相应的功能,诸如在芯片容量及硬件电路条件允许范围内增加多个定时时间点、增加数据的存储等。本次设计能为今后更多的定时打铃系统的设计提供了宝贵的研究基础,能在更多的项目工程中发挥不可或缺的重要作用。关键词:AT89C51 HD7279 AT24C02 定时打铃 Keil 目录第1章 绪论.2 1.1 课题的背景及意义.3 1.2 国内外发展趋势.3 1.3 设计要求.4 1.4 研究内容.4第2章 系统组成及工作原理.5 2.1 系统组成.5 2.2 系统工作原理.5第三章 硬件电路设计.7 3.1 单片机控制系统电路设计.7 3.2 键盘显示电路设计.8 3.3 数据存储电路设计.11 3.4 打铃电路设计.13第4章 软件设计.15 4.1 系统软件开发平台的介绍.15 4.2 主程序设计.16 4.3 子程序设计.18 4.3.1键盘扫描子程序.18 4.3.2定时中断服务子程序.19 4.3.3显示子程序.20 4.3.4 数据存取子程序.21第五章 系统的安装及调试.22 5.1硬件调试.23 5.2软件调试.25第六章 总结与展望.26 6.1 总结.26 6.2 展望.26 参考文献.27附录一 程序清单.28附录二 实验原理图.44附录三 元件清单.45致谢.46 第一章 绪论1.1 课题的背景及意义 随着人类文明的不断发展,科学技术不断的得到提高,特别是在电子领域,生活中我们经常需要根据时间来计划将要完成的事情,定时提示功能就显得非常重要,起初的定时提示功能是以定时打铃器的形式出现在学校、机关、工厂、车站、码头、医院、邮电等企事业单位,用于实现作息安排功能,机械式且打铃单调,使用范围有限而且时间不准确,不适合于更高精度时间的要求领域,因此,研究新型的定时打铃器引领变革具有重要的意义。 近年来在电子领域单片机产品的出现及其技术的成熟与完善,使得大量基于单片机为基础的定时打铃器运用而生,而且种类繁多,定时精确度也相对有了很大的提高,打铃器的打铃方式也多种多样,有使用计算机声卡发声的,也有通过使用串口控制打铃设备电源的一些产品,但是在现今通过生产利润与技术成本控制提高企业竞争力背景下,这些种类的定时打铃器不适合大量生产,而且在某种条件或者环境中使用及其不方便,因此,设计一种简单方便同时又具有相对全面的计时功能、打铃功能的定时打铃器显得及其重要。综上所述,在电子技术飞速发展的时代下,设计一个功能全面,定时准确且适用领域和适用环境广泛、生产成本合理相对有技术含量的定时打铃器具有很重要的价值,而且这种打铃器简单便捷,能根据项目所需实现的功能要求进行适当的修改,进而实现重要的定时提示功能,具有很大的生产与使用价值。1.2 国内外发展趋势 现今社会中,定时提示功能变得越来越重要,日常生活中的闹钟,学校或者企业的作息铃声,体育行业中的计时以及一些高精密的仪器中都需要用到定时提示功能,快节奏工作生活前提下,对定时精准性要求也越来越高,定时打铃器在国内外技术上其实已有了很大的发展与革新。 起初大部分定时打铃器都是比较简单电子元器及适当的程序控制件构成,但是很容易受到内外部的干扰,比如电压不稳定等,引起很大的偏差甚至错误,随着单片机技术的出现,基于单片机为核心的与外部电路结合的电子定时打铃器开始大量出现,形式各异,相比之下计时更精准电路,更稳定,受外部影响较小,而且电路模块化,程序设计更便捷简单,可实现更多的功能。而大部分基于单片机为基础的定时打铃器大都是由三个部分组成,即键盘控制、数码显示、打铃电路三个模块组成,比如AT89C51芯片与HD7279芯片构成的键盘控制电路,通过程序的编写控制I/O口的输出进而控制显示定时数据及打铃电路。当然也有部分采用8255芯片为核心部件的定时打铃器,原理都大同小异。现今高科技时代在一些特殊的对定时精确度要求高的领域比如,微电子方面,体育田径项目等行业,单片机技术显然会有一定的误差,于是随之出现了部分通过计算机控的定时打铃器,或者是结合其他影像技术设计而成的打铃器。 随着技术的不断发展,定时打铃器不断地走向体积小、模块化的集成电路的形式,在一些大型的电子设备或机械仪器中充当不可或缺的一部分,基于单片机为基础的打铃器不仅有较成熟的技术而且成本低廉、体积小,根据功能需求可以很容易的设计多元的定时器,未来定时打铃器将会朝着多元化的趋势行进,比如定时与记忆保护功能的实现,基于单片机为基础的定时打铃器适合于低成本的大量生产,多元化发展的道路上具有很大的发展前景。 1.3 设计要求 本设计采用STC89C51单片机与HD7279键盘控制模块结合,用于实现控制外部电路 对定时时间的存储及打铃,主性能为:1. 显示时钟格式:*时*分*秒 2.可任意设定时间达到定时控制,定时点至少有两个3.可对设定的时间进行存取,实现掉电保护功能4.定时时间到,打铃一分钟,自动关闭打铃继续计时 1.4 研究内容1.开发板STC89C51单片机、HD7279键盘控制模块及开发环境Keil平台的使用。2.AT24C02存储电路、打铃电路的工作原理和电路图的设计。3.键盘控制电路的工作原理及程序设计。4.时钟显示模块及AT24C02存储电路的程序设计。 第二章 系统组成及工作原理2.1 系统组成 通过一周的资料查找及对单片机知识的学习,本次设计采用如下设计方案:键盘显示模块 打铃模块 继电器 输出接口 单片机数据存取模块 (系统组成框图) 定时打铃器主要有四大模块组成,即:单片机控制模块、键盘显示模块、数据存取模块、打铃电路模块。单片机控制部分通过相应的程序存储芯片在使用时运行程序对其余模块进行控制实现数据的发送与接收;时间显示主要是由数码管组成,用于显示 时、分、秒;键盘用于控制或者改变数码管的显示内容,根据设计要求中要实现至少两个定时点的设置,不同按键可实现切换不同响铃时间点时分秒的显示,对时间的校准,以及可设置四个定时点;数据存取模块主要实现掉电保护功能,保存四个设定定时点,在断电恢复后能保存并继续上一次的计时设置值;打铃电路模块主要作用是通过单片机输出的不同电压实现在定时点到达后及时响铃。2.2 系统工作原理 定时打铃器主要通过软件编程来控制硬件电路进而实现时间数据的显示、存取、按键扫描、即时打铃功能的。系统的工作原理主要分为如下两大模块: (1)硬件模块定时打铃器的单片机控制模块主要是由AT89C51芯片构成与八个数码管组成显示的部分相连接,同时还与4x4矩阵键盘连接,矩阵键盘的扫描控制通过HD7279芯片完成,具有记忆功能的芯片AT24C02芯片充当了数据存储部分的核心部件,矩阵键盘及存储芯片与单片机是串行连接,单片机通过内部程序的运行适时对这两部分进行数据的读与写的操作,当定时器计时到达时,单片机通过P口输出高低电平给输出接口部分,继电器起保护作用,p口输出电压的不同将使得响铃器发出铃声从而实现定时打铃功能。矩阵键盘部分设置了十二个按键用于对显示内容的控制,即:加、减、切换、确定 、选择键 共五个类型的按键。数据存取部分通过程序中不断地对时间的扫描不断地存储更新的时间数据,通过串行数据传输的方式存储在芯片中,当断电时,断电前一刻的时间信息已存入芯片,重新接通电源后会先读取并显示前一次的数据,进而实现掉电保护功能。 (2)软件模块 软件部分主要是有以下几个部分组成: 数据存取部分 主程序时间显示部分键盘扫描部分定时中断部分 软件模块中,主程序部分组要是包含子程序的调用语句、对数据的读取及存储及判断定时时间是否正确算法程序;键盘扫描部分主要是不断地对4x4矩阵键盘进行扫描判断按下的键,进而不断地赋给相应的变量,主程序判断按键按下的情况控制数码管现实的数值;定时中断部分主要是一算法组成,变量不断地自加一,实现时分秒的递增,当达到一定数值时,进入中断程序对变量进行清零,比如秒钟变量达到60秒时进入中断后重新从零开始。时间显示部分程序则不断的显示键盘所控制下应该显示的变量值,比如显示 时-分-秒,年-月-日,或者在切换键的作用下显示四个定时时间值,或者在加减按键的作用下显示数据的更改值。 第三章 硬件电路的设计3.1 单片机控制系统电路设计 单片机最小控制系统主要由AT89C51芯片及相关电阻电容等电子元件构成单片机、时钟电路、复位电路等部分组成,MCS51芯片有40个引脚构成,大致有电源、外界晶体引脚、I/O口、控制引脚三大类组成,基本电路原理图如下图所示: 单片机的总体结构上可分为微处理器、数据存储器、程序存储器、中断控制、特殊功能寄存器、串行口、I/O口几大部分,本次课程设计采用晶振频率为12MHZ的芯片,单片机的复位方式有两种:上电复位和手动复位,两种方式都是使RST引脚维持高电平一段时间。51单片机内部有128字节的数据存储区,内部RAM编址为00H7FH,不同的区域功能完全不相同,对程序存储器只能进行读操作。微处理器主要由运算器和控制器组成。I/O口有p0、p1、p2、p3、四大类,除了充当I/O口作用外,P1口是纯I/O口,P2口还可以充当扩展系统的地址总线使用,输出高八位地址,p3口具有第二功能,p0口用作地址总线的低八位及数据线。图中电容C1、C2一般取530PF,作用是使振荡器起振,同时对振荡频率起微调作用。3.2 键盘显示电路设计 本次课程设计的键盘显示电路的核心部件是HD7279芯片,HD7279芯片是串行接的,可以同时驱动八位共阴数码管的智能显示驱动芯片,有多种译码方式,可单独控制显示段,同时可以接多达64键的矩阵键盘,内部含有去抖电路。单片即可完成LED显示,键盘接口的全部功能。HD引脚图如下图所示。 HD7279芯片共有28个引脚,与单片机建立握手连接主要是通过CS、CLK、DATA、KEY引脚与单片机的P1口连接,进行指令、数据的传送,CS是片选端,DATA是串行数据输入/输出端,CLK是时钟输入端,KEY是按键有效输出端。HD7279芯片的控制指令分为两大类:纯指令和带有数据的指令。纯指令有:复位指令A4H、左移指令A1H、右移指令A0H。带有数据指令有:下载数据按方式0译码、下载数据按方式1译码、下载数据不译码、读键盘数据指令15H、闪烁控制指令88H。部分指令格式如下: 1.下载数据按方式0译码其中a2a1a0为地址,d0d1d2d3是数据,0001001显示09,1010显示 ,1111显示空白。 2.下载数据按方式1译码 与上一条指令基本相同,但是d0d3值对应的是09,AF. 3. 下载数据不译码a2a1a0为位地址,AG,DP显示数据,对应七段数码管,对应的数据为1时,该段数据点亮。4.闪烁控制指令88Hd1d8对应八个数码管,为0时闪烁,1时不闪烁。5.读键盘控制指令15H其中该指令从7279中读出当前按键代码,前一个字节015H为指令代码,范围是003FH无键按下时是FFH,检测到有效按键时,KEY引脚由高电平变低电平,一直到按键结束,此期间输出当前按键代码。HD7279芯片的串行接口时序图如下:1. 纯指令2. 带数据指令3. 读键盘指令根据对数据的操作的读与写的不同,DATA分别作为数据输入端和数据输出端。键盘控制与显示电路图如下图所示: 其中16个按键与芯片SASG及部分电阻元件的连接构成矩阵键盘扫描部分,程序中通过对键盘的扫描,KEY引脚电平发生改变,矩阵键盘由行和列组成,通过使某列为低电平,当按键按下时,行变为低电平,与列有交叉点进而读出按键的地址确定按下的具体键位,通过程序的编写,按键的按下可使相应的变量值发生改变进而使现实的内容发生改变。数据显示部分由八个共阴数码管与7279芯片DIG0DIG7 DP及部分电阻元件构成,电阻起保护作用。MCU通过DATA 、KEY、 CLK、 CS与HD7279握手连接,程序中根据7279芯片时序图不停地对矩阵键盘扫描,通过不同的译码方式对数码管显示的数据进行变,本次设计中八位数码管用于显示 时、分、秒(格式为:xxxxxx)。 本次设计中采用了12个按键对数据进行操作,各键的地址如下图: 各按键的实际意义如下图: 注:本设计中根据要求设计了四个定时点,通过按键定时点14可查看四个设定的时间点,通过时分秒的加减六个按键可对设定时间点进行修改,确定键课进行修改时间的确认,通过切换键可查看时钟信息与定时点信息。 3.3数据存取电路设计 数据存取电路的实质作用就是实现掉电保护功能,对四个设定的时间进行保存,在断电恢复后不丢失上一次操作所设定的响铃时间。数据存取电路的核心芯片是AT24C02芯片,是CMOS型EPROM,有256x8的存储空间,引脚图如下所示: 其中A0 A1 A2三个引脚是地址线,用于确定芯片的硬件地址,SDA为串行数据输入/输出,SCL为串行时钟,SDA,SCL 为漏极开路端,需接一5.1K的上拉电阻,WP为写保护端,接地时允许对芯片进行一般的读写操作 ,高电平时只能进行读操作。 对芯片进行读写操作时应当先写入控制字,格式如下: 高四位是识别位,A2A1A0是片选,表明数据将存储在芯片的内具体位置,R/W是读写, 为1表明对24c02进行读操作,为0则进行写操作。 读写操作过程如下图所示: 硬件连接图如下图所示: 硬件电路设计时将AT24C02芯片的地址线、地线、WP口均接地,保证了数据存储的初始地址从0开始,且可对数据进行读写操作。同时24c02需要2,5V+5.5V的电源供电,在时钟SCL控制下SDA与单片机进行握手连接,实现数据的存储与读取。3.4打铃电路设计 当设定的时间到达时,单片机通过P1.3口电平信号的改变反应到打铃电路中实现打铃的功能,打铃一分钟后又P1.3口关闭打铃。硬件连接图如下图所示:电路设计原理:打铃电路由继电器、三极管、蜂鸣式报警器、电阻、反向器、+5V +12V电源组成,单片机P1.3口输出低电平时,经过74LS04反向器使三极管9013基极处于高电平而导通,则+12V电源与三极管c b e三极导通,在继电器内部,电感线圈与金属片的吸引使得+5V电源与蜂鸣报警器连通,进而实现响铃功能,继电器实质上是起一个开关的作用。当P1.3口输出高电平时,蜂鸣报警器又不导通,停止响铃。理论计算:9013是NPN型三极管,集电极电流 允许最大电流0.5A,放大倍数为60,74LS04输出高电平时,有: I=5V/1K=0.5mA Ic=0.5mA.60=0.3mA24?分清零,时加一分 59?秒清零,分加一秒 59? 中断初始化 保护现场 开始4.3.3 显示子程序 当不同的按键按下时,会对标志F的值做出相应的改变,程序中通过判断F的值显示相应的内容,F为1时显示定时点信息,F为零时显示时钟信息。键盘显示模块是串行方式发送数据的,因此通过延时程序给7279发送控制命令,相应的执行译码显示,将设定的存储在缓冲区的时间信息显示在数码管中,根据不同的按键信息,控制命令的不同译码的方式也就不相同,进而实现了闪烁,确定,切换显示信息等按键的功能。程序流程图如下图所示: 4.3.4 数据存取子程序 数据的存取实质是实现了掉电保护功能,AT24C02EPROM芯片的数据的存储与读取略有不同,串行方式下,数据借助延时子程序一位一位的传送,每次读或写都需初始化,启动,写控制命令,进而对相应的地址处的数据进行操作,执行完操作,调用停止子程序即结束了对24C02的访问。程序流程图如下图所示: NYYN 结 束达8次? 停 止从地址中读1位 做出应答写入读数据地址 作出应答写读控制命令字 启 动AT24C02初始化 开 始 结 束 停止达8次?存数据的1位 做出应答写入存数据地址 做出应答写入控制命令字 启动AT24C02初始化 开 始 (存数据流程图) (读数据流程图) 第五章 系统的安装及调试 定时打铃器是硬件电路与软件高度结合的小型系统,是通过C语言编写的程序控制单片机、HD7279键盘显示模块、掉电保护电路、打铃电路几大硬件部分而实功能的。硬件电路的连接图如下图所示: 各模块与单片机的连接如下表所示: 其中还需将+5V及+12V电源的接地线连接在一起。此次设计的调试过程主要有硬件调试和软件调试两大部分。5.1 硬件调试 由于本次硬件部分的设计是按模块化进行的,因此对硬件部分地调试也根据从部分到整体的原则进行调试,主要有:单片机最小系统的调试,键盘显示电路的调试,打铃电路的调试,掉电保护电路的调试。 AT89C51构成的单片机最小系统和HD72279为核心的键盘显示电路集成在开发板中,如下图所示: 因此在调试的过程中元件之间的连接未出现连接不通等问题,但是需注意的是,由于种种操作不当或者程序的错误,很容易造成短路芯片发热烧坏等现象,应先检查芯片的供电电源是否是+5V,在未写入程序的时候检查I/O口的电压是否正常,检查复位键的按下前后复位引脚的电压是否正常,检查晶振电路在复位状态下晶振引脚是否是高电平判断晶振是否完好无缺,进而继续进行其他调试实验。 打铃电路和掉电保护如下图所示 打铃电路由继电器、74LS04反向器,蜂鸣器,电阻,9013三极管组成,检查元件的完好性后进行焊接,对该模块调试时,先用万用表检测是否有断点、短路等问题,避免对元器件造成损坏,特别是继电器极易因电压不合适而烧坏,接通电源后测量各点的电压,判断是否符合理论的计算与分析。三极管有c b e 三极,电压电流过大会造成损坏,继电器图如下: 继电器有+5V、+12V两个电源提供,正确接入才能正常工作。AT24C02芯片是可擦除的EPROM,能存储数据,供电电压为+5V,调试时先检测该部分电路连接是否正确,再上电检测各点电压是否正常。正确连接电路各模块观擦进行整体调试,排除整个硬件系统的问题,如下图: 经过根据部分到整体的调试原则进行硬件调试过程,排除了很多问题。在用部分程序对部分电路进行测试时发现打铃部分不响铃,经多次排查发现:三极管导通电压为达到,此时合理调整电阻的值;继电器与蜂鸣器也易烧毁。存储电路数据未能正确存储,经排查发现,外部电路与单片机P口的连接接触不良,同时程序也存在一定的问题。总之,硬件调试需要很大的耐心与正确的调试方法及正确的操作方法才能使系统渐渐实现所需的功能。5.2 软件调试 由C语言编写的程序具有可读性强、可移植性好的特点。本次设计软件部分主要由:主程序、键盘扫描子程序、显示子程序、定时中断子程序、数据存取子程序组成。软件调试同样采用部分到整体的原则结合已经调试好的硬件部分进行综合调试,完善系统的功能,解决细节性瑕疵。 首先针对主程序,根据程序设计思路,主程序流程图,对程序进行编译修正错误,合理的设置并跟踪变量值的变化;其次移植入键盘扫描子程序,显示子程序,中断服务子程序,合理的调试协调解决程序报错之处,此时连接好硬件电路,观察现象,键盘部分按键的使用及数码管显示是否符合程序设计初衷,时钟及定时时间的设置是否实现预期现象;最后添加数据存取子程序,修正错误,根据程序流程图排除程序错误,检测掉电保护功能,做合理的调整及调试,使程序条理清晰,实现系统的定时打铃功能。最终调试结果如下图: (到达定时点打铃图) (断电保存数据图) (上电恢复定时点数据图)软件调试过程难度远大于硬件的调试,期间遇到很多复杂的问题,比如响铃一分钟未能精确实现,经排查,由于程序过长,响铃过程执行其他子程序或者循环程序带来很大的时间上的误差,需通过对变量值的修改来进行调整;程序必须严格根据硬件的特点(时序图、与单片机的连接等)来编写,否则数据不能正确的传输,比如掉电保护功能对应的子程序,由于保存数据地址的设置不合理,上电时不能正确的恢复个定时点保存的数据。经过对程序的不断地调整与修改,对硬件电路的测试与元件的更换,及软件结合硬件电路的综合调试,终于实现了带有掉电保护功能的定时打铃电路。 第六章 总结与展望6.1 总结 本次设计通过对硬件电路的设计、软件的编写及系统的综合调试,和对相关资料的查阅与学习,更加熟练的掌握了单片机最小系统、HD7279、AT24C02等芯片的工作原理及使用方法,基本上完成了设计要求所需实现的功能,具体实现的功能如下: (1)可显示时钟,且时钟格式为:*。 (2)可任意设置时钟到达定时控制,定时点可设置4个。 (3)定时时间到,打铃一分钟,打铃结束后自动关闭打。 (4)具有掉电保护功能,上电后能自动恢复上一次设定的定时时间点的信息。 本次设计通过单片机对各模块的控制,实现了定时打铃的功能,同时附加了掉电保护功能,能对设定信息进行存取操作,本次设计取得了巨大的成功。 与此同时,本次设计也给自我带来了巨大的收获,不仅是理论知识的巩固运用与实践经验的增长,更加体会到未来工作中严谨求实、认真仔细、坚持不懈的工作态度的重要性。可以说,本次设计让自我心灵带有了一次质的提升的过程。6.2 展望本次课程设计虽完美的实现了设计目标,但仍然有很多不足之处需要改进,比如: (1)按键设置太多,对矩阵键盘按键资源造成浪费,不利于功能的扩充。 (2)程序过于垄长,重复性语句较多,未合理的综合利用子程序。 (3)定时精度不高,造成系统不稳定因素很多,实际应用还有很多步骤需进行。 虽然本系统有诸如此类不足之处需要改进,但该系统在未来仍然具有很大的参考价值,作为实践应用的雏形,在各种形式的定时打铃系统或者更高级庞大的仪器中可充当不可或缺的模块,为实现重要功能做贡献。 总之,定时打铃器凝聚了无数辛苦付出的泪水与汗水,科技之路永远不会停滞,该设计成果能否得到真正的实际运用,路途还很遥远,仍需不断地努力付出。 参考文献1 张友德、赵志英、涂时亮.单片微型机原理、应用与实验.上海.复旦大学出版社,2008年5月. 2 吴开志、陈黎娟、邓谦、任爱山.单片机技术及应用实验指导书.南昌.南昌航空出版社,2008年.3 吴清绣.微型计算机原理及接口技术.北京.中国科学技术大学出版社,2004年.4 吴向军.汇编语言程序设计.北京.高等教育出版社,2001年. 5 谭浩强编著C程序设计(第二版)北京清华大学出版社,1999126郭天祥编著 51单片机C语言教程 北京 电子工业出版社,2009127张先庭、项英、王忠单片机原理、接口与C51应用程序设计国防工业出版社 2011 12 附录一程序清单:#include typedef unsigned char BYTE; /自定义字节类型#define Set_Bit(BIT) (BIT = 1) /定义置1函数#define Clear_Bit(BIT) (BIT = 0) /定义清0函数/*7279指令*/#define HD7279_TEST 0xbf /测试 #define HD7279_RLC 0xa3 /循环左移#define HD7279_RRC 0xa2 /循环右移 #define HD7279_RL 0xa1 /左移#define HD7279_RR 0xa0 /右移 #define DECODE0 0x80 /译码方式0#define HD7279_DECODE1 0xc8 /译码方式1#define UNDECODE 0x90 /译码方式2: 不译码 #define HD7279_HIDE 0x98 /消隐#define HD7279_FLASH 0x88 /闪烁 #define HD7279_SEGON 0xe0 /段亮#define HD7279_SEGOFF 0xc0 /段灭 #define CMD_READ 0x15 /读键盘指令 #define ledon 1#define ledoff 0/*函数定义*/void delay(j);void write7279(BYTE,BYTE); /定义HD7279写函数BYTE read7279(BYTE); /定义HD7279读函数void Send_Byte(BYTE); /定义HD7279发送字节函数BYTE Receive_Byte(void); /定义HD7279接收字节函数void Short_Delay(void); /定义短延时函数void Long_Delay(void); /定义长延时函数void Mcu_Init(void); /定义MCU初始化函数void distime(void); /显示时间void discalendar1(void); /显示日历void discalendar2(void); /显示日历void discalendar3(void);void discalendar4(void);void HD7279key(void); /按键控制BYTE Key_number; /定义键值变量unsigned char second=0,minute=0,hour=0,F; /秒、分、时变量 second1=0,minute1=12,hour1=0, second2=0,minute2=14,hour2=0, second3=0,minute3=16,hour3=0, second4=0,minute4=18,hour4=0;unsigned int a,i
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸下载 > CAD图纸下载


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!