您好,欢迎访问三七文档
单片机应用设计实践报告课程名称:单片机应用设计实践设计题目:带温度显示的数字万年历设计院(部):计算机与信息工程学院学生姓名:*******学号:************专业班级:************指导教师:*******贵州贵阳年月日课程设计任务书设计题目万年历学生姓名****所在院系*****专业、年级、班***********设计要求:1、设计制作一个用LCD1602显示的带温度显示的万年历;2、具有年、月、日、星期、时、分、秒、温度等显示功能;3、具备年、月、日、星期、时、分、秒校准功能;4、具有闹钟显示、调节设定、整点鸣叫功能。学生应完成的工作:设计万年历的工作原理,利用DXP软件绘制电路原理图,利用KeiluVision4软件编写C语言程序并且生成HEX文件。并设计制作电路的PCB板(或万用板的元件布局和连线)。根据设计原理对电路进行安装、调试,完成课程设计工作,并提交课程设计报告。参考文献阅读:51单片机原理与应用案例教程(C51编程)p170的9.1.2LCD1602液晶应用实例工作计划:*月*号:搜集资料;*月*号:方案论证拟定硬件方案;*月*号:讨论优化并确定硬件方案;*月*号—*号:讨论并确定程序流程并绘制流程图;*月*号:根据流程图编写程序并且进行软件的仿真与调试;*月*号—*号:硬件电路的制作并撰写课程设计报告;*月*号:烧录程序并调试;*月*号:完成课程设计报告的撰写。任务下达日期:2017年11月30日任务完成日期:2017年11月01日指导教师(签名):学生(签名):田应焕万年历摘要:设计了一个带温度显示的万年历电路系统,该电路具有年、月、日、星期、时、分、秒、闹钟显示和调整功能,并且还能显示温度等功能。其中显示部分采用LCD1602显示,时钟部分采用DS1302时钟芯片,温度部分采用DS18B20单线温度传感器。软件方面我们采用C语言编程,利用KeiluVision4软件编写C语言程序并且生成HEX文件。通过之后再烧录到单片机中。该设计的优点是充分利用了LCD1602的显示功能完成了万年历和温度。不足之处是收到LCD1602显示功能的限制没能显示农历日期。关键词:万年历;LCD1602;温度传感器(DS18B20);时钟芯片(DS1302)目录1.设计背景……………………………………………………………………11.1时钟的用途及精度的需求…………………………………………11.2万年历的使用现状及设计目的…………………………………………12.设计方案……………………………………………………………………12.1任务分析……………………………………………………………………12.2方案选择和论证……………………………………………………………22.2.1显示模块选择方案和论…………………………………………………22.2.2时钟模块的方案选择和论证……………………………………………22.2.3按键控制模块的方案选择和论证………………………………………22.2.4温度采集模块方案选择…………………………………………………32.2.5方案的整体框图…………………………………………………………32.2.6设计流程图程序部分的拟定案…………………………………………43.方案实施…………………………………………………………………53.1.1整体电路及其分析………………………………………………………53.1.2电源电路…………………………………………………………………63.1.3单片机最小系统…………………………………………………………63.1.4蜂鸣器及驱动电路………………………………………………………73.1.5时钟芯片DS1302电路…………………………………………………73.1.6温度采集芯片DS18B20电路……………………………………………83.1.7键盘控制电路……………………………………………………………83.1.8LCD1602控制电路………………………………………………………93.2软件仿真………………………………………………………………103.2.1Proteus仿真软件介绍…………………………………………………103.2.2电路仿真调试…………………………………………………………113.3电路的焊接与调试……………………………………………………124.结果与结论………………………………………………………………145.收获与致谢………………………………………………………………146.参考文献…………………………………………………………………157.附件………………………………………………………………………157.1电路原理图………………………………………………………………157.2Proteus仿真图…………………………………………………………167.3电路工作中实物图………………………………………………………177.4元器件清单………………………………………………………………197.5源程序清单……………………………………………………………2011.设计背景1.1时钟的用途及精度的需求时间,对人们来说是非常宝贵的,准确的掌握时间和分配时间对人们来说至关重要。随着时间的流逝,科学技术的不断发展和提高,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好、更方便、更精确的显示时间,这就要求人们不断设计研发出新型的时钟。高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校。数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替指针进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。1.2万年历的使用现状及设计目的如今万年历已经在人们生活中广泛的使用,它不仅是记录日期和时间的工具,而且也成为了一种装饰品。现在的万年历可以说是多种多样,外观精美。放在家里既可以计时也可作为风景壁画,因此越来越受到大众消费者的喜爱。本次课程设计通过利用STC89C52单片机和DS1302芯片以及外围的按键和LCD显示器等部件,设计一个基于单片机的电子时钟。设计的电子时钟通过液晶显示器显示,并能通过按键对时间以及闹钟进行设置。目的来模拟真实产品中万年历的工作原理,具有很强的实用性。2.设计方案2.1任务分析目的是设计一个带温度显示的万年历电路系统,该电路具有年、月、日、星期、时、分、秒、闹钟显示和调整功能,并且还能显示温度等功能。其中显示部分准备采用LCD1602显示,时钟部分准备采用DS1302时钟芯片,温度部分准备采用DS18B20单线温度传感器。软件方面我们采用C语言编程,利用KeiluVision4软件编写C语言程序并且生成HEX文件。通过之后再烧录到单片机中。22.2方案选择和论证2.2.1、显示模块选择方案和论证方案一:采用点阵式数码管显示。点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且难度也相对较高,所以不用此种作为显示。方案二:采用LED数码管动态扫描。LED数码管价格便宜,对于显示数字最合适,但功耗较大,且显示容量不够,所以也不用此种方案。方案三:采用LCD液晶显示屏。液晶显示屏的显示功能强大,可显示大量文字,显示多样,清晰可见,且价格适中,所以采用了LCD数码管作为显示。2.2.2时钟模块的方案选择和论证方案一:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二:采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,工作电压2.5V~5.5V范围内,2.5V时耗电小于300nA.2.2.4温度采集模块方案选择(宋体四号,加粗)DS18B20数字温度传感器接线方便,独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。因此DS18B20完全满足设计要求。32.2.6设计流程图程序部分小组的拟定方案YNYN图2设计流程图开始完成与DS18B20,LCD1602,DS1302相关的子函数的编程完成与DS18B20,LCD1602,DS1302相关的初始化设置CPU读取DS18B20,DS1302的温度和时间数据CPU将数据送至LCD1602显示相关数字及字母数组设置相关引脚的特殊位定义检测是否有时间校准按键按下重新设置时间,并写至进DS1302的寄存器返回43.方案实施3.1.1原理图设计及工作原理分析(宋体四号,加粗)图3整体原理图我们首先构成单片机的最小系统,使单片机能正常工作,在程序中首先对LCD1602、DS1302、DS18B20进行初始化,由CPU完成对DS1302产生的各种时钟数据的读取,然后将数据写至LCD1602,以显示数据,达到可视化的效果。对于课程设计的拓展部分,我们可以利用DS18B20温度传感器来测试周围环境的温度,由CPU完成对数据的读取,然后通过CPU将数据写至LCD1602,以显示温度数据,达到可视化的效果。通过键盘扫描子程序通过测试按键是否闭合来调整各种时间数据和闹钟已达到校准和定时的目的。3.1.2电源电路(宋体四号,加粗)我们采用了USB和变压器双电源供电:5图4变压器供电电路变压器输出的9V交流电经桥堆2W10后变成有较大波动的的直流电,然后经过滤波电容和微调电容后变成直流电,再经过L7805三端稳压器输出5V直流电。7805输出端的电容起到了防干扰和微调作用。图5USB供电电路3.1.3单片机最小系统(宋体四号,加粗)单片机采用了上电自动复位和按键复位的双复位,利用12MHZ晶振作为单片机的外部晶振来驱动单片机工作。其中两个33pf的电容用于晶振的启动。由于单片机的P0口是准双向IO口,所以需要排阻RP1作为该口的上拉电阻。6图6单片机最小系统3.1.5时钟芯片DS1302电路(宋体四号,加粗)时钟芯片采用双电源,当系统断电之后由3V的电源—电池供电。保证了系统断电之后时钟继续工作,当系统再次上电之后时钟能显示正确的时间和日期。图8时钟电路73.1.6温度采集芯片DS18B20电路(宋体四号,加粗)图9温度采集电路3.1.8LCD1602控制电路(宋体四号,加粗)LCD1602是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。第1脚:VSS为电源地。第2脚:VDD接5V电源正极。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高。第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。第6脚:E(或EN)端为使能(enable)端。第7~14脚:D0~D7为8位双向数据端。第15~16脚:空脚或背灯电源。15脚背光正极,16脚背光负极。8图11LCD1602液晶显示电路3.2软件仿真3.2.1仿真软件介绍(宋体四号,加粗)Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。(1)proteus的工作
本文标题:设计报告(电子版)
链接地址:https://www.777doc.com/doc-7297873 .html