![基于单片机的多功能数字钟设计_第1页](http://file1.renrendoc.com/fileroot_temp2/2021-2/17/4a39b93f-8bb1-4cd1-a886-1533d7a67f91/4a39b93f-8bb1-4cd1-a886-1533d7a67f911.gif)
![基于单片机的多功能数字钟设计_第2页](http://file1.renrendoc.com/fileroot_temp2/2021-2/17/4a39b93f-8bb1-4cd1-a886-1533d7a67f91/4a39b93f-8bb1-4cd1-a886-1533d7a67f912.gif)
![基于单片机的多功能数字钟设计_第3页](http://file1.renrendoc.com/fileroot_temp2/2021-2/17/4a39b93f-8bb1-4cd1-a886-1533d7a67f91/4a39b93f-8bb1-4cd1-a886-1533d7a67f913.gif)
![基于单片机的多功能数字钟设计_第4页](http://file1.renrendoc.com/fileroot_temp2/2021-2/17/4a39b93f-8bb1-4cd1-a886-1533d7a67f91/4a39b93f-8bb1-4cd1-a886-1533d7a67f914.gif)
![基于单片机的多功能数字钟设计_第5页](http://file1.renrendoc.com/fileroot_temp2/2021-2/17/4a39b93f-8bb1-4cd1-a886-1533d7a67f91/4a39b93f-8bb1-4cd1-a886-1533d7a67f915.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录前言1第1章 方案的实现与设计方案21.1硬件概述及设计要求21.2 方案的选择和论证21.2.1 单片机芯片的选择方案和论证21.2.2 显示电路的选择方案和论证51.2.3 温度传感器的选择方案和论证51.2.4 时钟电路的选择方案和论证61.2.5 复位电路的选择方案和论证61.2.6 按键电路的选择方案和论证71.3 多功能时间显示控制装置设计最终方案决定7第2章 多功能时间显示控制装置的硬件系统设计82.1 多功能时间显示控制装置的主机电路设计82.1.1 系统控制芯片CPU(AT89C52 )82.1.2 系统时钟电路设计102.1.3 温度采集模块设计132.1.4显示电路设
2、计132.1.5 复位电路设计142.2 电源设计152.3 按键控制模块设计15第3章 多功能时间显示控制装置的程序设计163.1 主控模块设计163.2 基本显示模块设计163.3 时间设定模块设计17第4章 系统的调试及结果184.1 测试仪器184.2 软件调试184.3 硬件调试194.4 调试结果19第5章 结论20参考文献21致谢22附录1:系统设计原理图23附录2:完整的C语言源程序清单24前言多功能时间显示控制装置已成为人们日常生活中必不可少的必需品,广泛应用于个人家庭以及车站,码头,剧场,办公室等公共场所,给人们的生活,学习,工作,娱乐带来极大的方便。由于数字集成电路技术的
3、发展和采用了先进的石英技术,使多功能时间显示控制装置具有走时准确,性能稳定,携带方便等优点,它还用于计时,自动报时及自动控制等各个领域。近年来随着计算机在社会和生活领域中的应用范围越来越广泛,大规模集成电路的迅速发展,单片机的应用正在不断深入。由于它具有功能强,体积小,地功耗,价格便宜,工作可靠等特点,因此特别适用于与控制有关的系统,越来越广泛地应用于智能化仪表,数据采集等各个领域,其中,单片机往往作为核心部件来使用。美国DALLAS公司推出的具有涓细电流充电能的低功耗实时时钟电路DS13021)2。它可以对年,月,日,星期,时,分,秒进行计时,而且DS1302的使用寿命长,误差小。对于多功能
4、时间显示控制装置采用直观的数字显示,可以同时显示年,月,日,周日,时,分,秒和温度等信息。该电路采用AT89C52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3-5V电压供电。钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究多功能时间显示控制装置及扩大其应用,有着非常现实的意义。综上所述,此功能时间显示控制装置具有读取方便,显示直观,功能多样,电路简洁,成本低廉等诸多优点,符合
5、电子仪器仪表的发展趋势,具有广阔的市场前景。 第1章 方案的实现与设计方案1.1硬件概述及设计要求本电路是由AT89C52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路有DS1302提供,它是一种高性能,低功耗,带RAM的实时时钟电路,它可以对年,月,日,星期,时,分,秒进行计时,工作电压为2.5V-5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31*8的用于临时性存放数据的RAM寄存器,可产生年,月,日,周日,时,分,秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的
6、采集由DS18B20构成;显示部分由LCD液晶显示屏显示。图1-1为多功能时间显示控制装置的系统原理框图。单片机控制器显示模块时钟模块键盘模块温度采集模块图1-1 系统原理框图设计要求:具有年,月,日,星期,时,分,秒等功能;具有温度计功能;具备年,月,日,星期,时,分,秒控制校准功能。1.2 方案的选择和论证1.2.1 单片机芯片的选择方案和论证单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适应于控制领域,故又称为微控制器。通常,单片机是利用半导体集成技术将中央处理单元CPU和一定容量的数据存储器RAM,程序存储器ROM,定时/计数器T/C
7、,并行输入输出接口I/O和串行通信接口等多个功能部件集成在一块芯片上。由于MCS-513系列单片机具有体积小,功能全,价廉,面向控制,应用软件丰富,技术在不断更新,开发应用方便等优点,可以适应各个应用领域的不同需要,因而具有极强的竞争力和生命力,应用前景广阔。MCS-51系列单片机无论在片内RAM,ROM容量,种类和数量还是在系列扩展功能,指令系统功能等方面都有很大增强。单片机经过1,2,3代的发展,正朝着多功能,高性能,低电压,低功耗,低价格,大存储量,强I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎一下几个方面:1.多功能单片机中尽可能地把所需要的存储器和I/O口都集成灾一块芯片上
8、,使得单片机可以实现更多的功能,比如A/D,PWM,PCA(可编程计数器阵列),WDT(监视定时器看家狗),高速I/O口及计数器的捕获/比较逻辑等。有的单片机针对某一应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。2.高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC,流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提高;由于集成度的提高,单片机的寻址能力,片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机
9、的程序。使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。3.低电压和低功效单片机的嵌入式应用决定了低电压和低功效的特征十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到uA级。这些特性使得单片机系统可以再更小的电源的支持下工作更长的时间。4.低价格单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前,世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低产品的价格。下面大致介绍一下单片机的主要应用领域和特点:1.家用电器领域用单片机控制系统取代传统的模拟和数字控制电路,使
10、家用电器(如洗衣机,空调,冰箱,微波炉,电视机等)功能更完善,更加智能化和易于使用。2.办公自动化领域单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘,磁盘驱动,打印机,复印机,电话机和传真机等。3.商业应用领域商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用系统。与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高。4.智能仪表与集成智能传感器目前在各种电气测量仪表中普遍采用了单片机应用系统来代
11、替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。5.现代交通与航空航天领域通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采用单片机系统更加重要。 方案一:采用89C51芯片作为硬件核心,采用Flash ROM,片内具有128B RAM存储空间和4KB ROM存储空间,能在3V的超低压工作,而且与MCS-51系列单片机完全兼
12、容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二:采用AT89C52芯片作为硬件核心,采用Flash ROM,能以3V的超低压工作;同时比89C51具有更多的存储空间,AT89C52芯片内部存储器为8KB ROM存储空间,同样具有89C51的功能,且具有在线编程可擦除技术。当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。1.2.2 显示电路的选择方案和论证方案一:采用的的方式用LED数码管显示测试
13、结果。LED显示时用发光二极管显示字段的显示器件,它由8个发光二极管构成,通过不同的组合可以用来显示0-9,A-F及小数点。LED数码管有静态扫描和动态扫描两种驱动方式,静态驱动的工作原理是每一个LED显示器用一个I/O端口驱动,或者使用如BCD码二-十进制译码器进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是耗电大,占用I/O端口也多,实际应用时增加了硬件的复杂性,显示位数多时很少采用。动态驱动与单片机连接时,虽然占用的单片机口线少,但是连接需要花费一点时间,所以也不用此种作为显示。方案二:采用点阵式数码管4显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在
14、显示数字显得太浪费,且价格也相对较高,所以也不用此种显示方法。方案三:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,省了很多麻烦,所以在此设计中采用LCD1602液晶显示屏。LCD1602为工业字符型液晶,显示容量很大,为162即32个字符;LCD1602芯片的工作电压为4.5-5.5V,芯片工作电流在5V工作电压的情况下芯片工作电流为2mA,模块的最佳工作电压为5V,显示字符的尺寸为2.954.35(WH)mm。此次设计采用此种显示方式。1.2.3 温度传感器的选择方案和论证方案一:使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利
15、用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。方案二:采用数字式温度传感器DS18B205)6,如图1-2所示。此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低硬件成本,简化系统电路。另外,数字式温度传感器还是具有测量精度高,测量范围广等优点。图1-2 DS18B20温度采集芯片1.2.4 时钟电路的选择方案和论证方案一:直接采用单片机定时器提供秒信号,使用程序实现年,月,日,星期,时,分,秒计数。
16、采用此种方案虽然减少芯片的使用,节约成本。但是,实现的时间误差较大,而且调节时不容易实现时间的准确调节。所以不采用此方案。方案二:采用DS1302时钟芯片实现时钟8,DS1302芯片是一种高性能的时钟芯片,可自动对秒,分,时,日,周,月,年以及闰年补偿的年进行计数,而且精度高,位的RAM作为数据暂存区,工作电压2.5V-5.5V范围内,2.5V时耗电小于300nA。故采用此种时钟方式。1.2.5 复位电路的选择方案和论证AT89C52的复位方式可以是上电复位如图1-3(a)所示,也可以是手动复位如图1-3(a)所示。此外,RESET/V还是一复用脚,V掉电期间,此脚可接上备用电源,以保证单片机
17、内部RAM的数据不丢失。 (a) (b)图1-3 复位电路方案一:上电复位:上电自动复位电路是一种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。上电自动复位是通过外部复位电路的电容充电来实现的。只要VCC的上升时间不超过1ms,就可以实现自动上电复位。方案二:手动复位即开关复位,只要按下开关按钮,倒相器即输
18、出高电平,复位有效。手动复位方式快捷,方便,所以此次设计采用手动复位方式。1.2.6 按键电路的选择方案和论证键盘是人与单片机打交道的主要设备,按键的读取容易引起误动作。可采用软件去抖动的方法处理9。软件的触点在闭合和断开的时候会产生抖动,这时触点的逻辑电平是不稳定的,如果不采取妥善处理的话,将引起按键命令错误或重复执行,在这里采用软件延时的方法来避开抖动。方案一:采用独立式键盘,独立式键盘是直接用I/O口线构成的单元按键开关电路,其特点是每个按键独立占用一根I/O口线,每个按键的工作不会影响其他I/O口线的状态。但是当所需按键数量多时,会占用过多的I/O口。方案二:采用矩阵键盘,因为单片机的
19、I/O口有限,显然,在按键数量过多时,矩阵键盘较之独立式按键键盘要节省很多I/O口线,但必须将行线,列线信号配合起来做适当处理,才能确定闭合键的位置。基于以上分析,此次设计采用方案一独立式按键,因为本次设计中仅使用到4个按键。1.3 多功能时间显示控制装置设计最终方案决定综上各方案所述,对此次毕业设计的方案选定,采用AT89C52作为主控制系统,DS1302提供时钟,数字式温度传感器DS18B20,LCD液晶显示屏作为显示模块。第2章 多功能时间显示控制装置的硬件系统设计2.1 多功能时间显示控制装置的主机电路设计多功能时间显示控制装置最终确定方案的组成框图如图2-1所示。单片机控制器AT89
20、C52LCD1602液晶显示模块DS130时钟模块独立键盘控制模块DS18B2温度采集模块图2-1 最终方案系统框图2.1.1 系统控制芯片CPU(AT89C52 )AT89C5210单片机为40引脚双列直插芯片共有4个8位的I/O口(P0,P1,P2,P3),每一条I/O线都能独立地作输入和输出。单片机的最小系统如下图2-2所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电
21、源端。AT89C52单片机内部结构:AT89C52单片机包含中央处理器,存储器(RAM,ROM/EPROM),I/O,中断系统等几大单元及数据总线,地址总线和控制总线三大总线,下面加以说明:中央处理器:CPU是整个单片机的核心部件,是8位数据宽度的处理器,能同时处理8位二进制数据或代码。CPU负责控制,指挥和调度整个单元系统协调的功作,完成运算和控制输入输出等操作。存储器:AT89C52内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的。专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据。所以,用户能使用的RAM只有128个,可存放读写的数据,运
22、算的中间结果或者用户定义的字形表。AT89C52共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。定时/计数器:AT89C52有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。图2-2 主控制系统AT89C52引脚图并行输入输出(I/O)口:AT89C52共有4组8位I/O(P0,P1,P2和P3),用于对外部数据的传输。1.P0端口P0.0-P0.7 P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8个TTL。对内部Flash程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻。在访
23、问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,访问期间内部的上拉电阻起作用。2.P1端口P1.0P1.7 P1是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收低8位地址信息。3.P2端口P2.0P2.7 P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收高8位地址和控制信息。在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。而在访问8位
24、地址的外部数据存储器时其引脚上的内容在此期间不会改变。4.P3端口P3.0P3.7 P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接控制信息。除此之外P3端口还用于一些专门功能,具体请看表2-1。表2-1 P3口功能说明P3引脚兼用功能P3.0串行通讯输入(RXD)P3.1串行通讯输出(TXD)P3.2外部中断0( INT0)P3.3外部中断1(INT1)P3.4定时器0输入(T0)P3.5定时器1输入(T1)P3.6外部数据存储器写选通WRP3.7外部数据存储器写选通RD全双工串行
25、口:AT89C52内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。中断系统:AT89C52具备完善的中断功能,有两个外中断,两个定时/计数器中断和一个串行中断,外满足不同的控制要求,并具有2级的优先级别选择。时钟电路:AT89C52内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但AT89C52单片机需外置震荡电容(一般在30PF左右)。此次设计选用30PF电容,12MHz晶振形成并联谐振电路,电容C4,C5对振荡频率有微小影响,可起频率微调作用。2.1.2 系统时钟电路设计图2-3为DS1302的接线图
26、,其中VCC为后备电源,VDD为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由VCC或 VDD两者中的较大者供电。当VDD大于VCC+0.2V时,VDD给DS1302供电。当VDD小于VCC时,DS1302由VCC供电。2,3脚分别为X1,X2是振荡源,外接32KHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送,I/O引脚变为高阻态。上电运行时,在Vcc大于等于2.5V之前,
27、RST必须保持低电平。当SCLK为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。图2-3 DS1302的接线图1.时钟芯片DS1302的工作原理:DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置 “0”,接着把RST端置“1”,最后才给予SCLK脉冲11。表2-2为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从
28、最低位开始输入/输出的。表2-4为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。2.DS1302的控制字节DS1302的控制字如表2-2所示。控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作
29、,控制字节总是从最低位开始输出。表2-2 DS1302的控制字格式 RAM RD 1 /CK A4 A3 A2 A1 A0 /WR 3.数据输入输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7,如表2-3所示。表2-3 DS1302输入输出仿真4.DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表2-4所示。表2-4 DS1302
30、的日历,时间寄存器写寄存器读寄存器Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit080H81HCH10秒秒82H83H10分分84H85H12/240AM/PM时时86H87H0010日日88H89H00010月月8AH8BH00000星期8CH8DH10年年8EH8FHWP0000000此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH
31、,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。2.1.3 温度采集模块设计如图2-4所示为DS18B20温度采集芯片的接线图,该设计采用数字式温度传感芯片DS18B20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用P2.0与DS18B20的DQ口连接Vcc接电源。在DQ口接上4.7K电阻防止电流过大,保证DS18B20正常工作。图2-4 DS18B20接线图2.1.4显示电路设计表2-5为LCD1602的引脚功能说明。表2-5 LC
32、D1602的引脚说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极LCD1602的第1脚VSS为地电源;第2脚接5V正电源;第3脚VL为液晶显示器对比调整端,接正电源时对比度弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用是可以通过一个10K的电位器调整对比度;第4脚为RS寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器;第5脚为R/W读写信号线,高电平时进行读操作,
33、低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据;第6脚为使能端,当使能端由高电平跳变为低电平时,液晶模块执行命令;第714脚的D0D7为8位双向数据线;第15脚为背光源正极;第16脚为背光源负极。图2-5 LCD1602接线图显示的清晰度是关键,其Vdd引脚作用是对比调整,原理是该引脚输入电压不同,调整度不同,所以采用电位器分压作为它的电压输入。Vss及BLK引脚分别是电源地、LCD背光电源负极,直接接地。Vdd及BLA引脚分别是电源、LCD背光电源正极,采用+5V电源供电。2.1
34、.5 复位电路设计此次设计采用手动复位电路,如图2-6所示。图2-6 手动复位电路2.2 电源设计采用200W/5V直流稳压电源作为系统电源,不仅功率上可以满足系统需要,不需要更换电池,并且比较方便,使用更加安全可靠。但是稳压电源我们不能自备,若要调试系统,只能到实验室才能做。为了更加方便调试,此设计选择电池供电以方便在任何时间任何地点进行调试和演示。2.3 按键控制模块设计此电路中的显示电路是采用LCD液晶显示器显示方式,使用单片机AT89C52的P0口控制LCD显示和P1.0,P1.1,P1.2,P1.3口分别接入时间调整时间按键S1,S2,S3,S4。如图2-7所示。S1为设置开关,S2
35、为时间加开关,S3为时间减开关,S4为确定开关。每次调节时间时首先按设置键,选择要调整位,然后选择时间加或减键,调整完以后按确定键。在调节时调节顺序是从秒开始,然后是调节分,时,星期,依次往后进行。图2-7 时间控制按键接线图第3章 多功能时间显示控制装置的程序设计3.1 主控模块设计主程序是先开始12,然后进行初始化设置,定时器启动后在进行按键检测,检测完后,就可以显示时间。开始初始化读日期,时间写日期,时间显示子程序开关控制子程序日期修改子程序时间修改子程序显示结果返回图3-1 主程序流程图3.2 基本显示模块设计显示模块是实现多功能时间显示控制装置的重要部分,在显示时,首先将时间十进制数
36、据转化为显示段码,然后送往LCD1602液晶显示。程序在开始时对液晶模块功能进行了初始化设置,约定了显示格式。3.3 时间设定模块设计开始控制键有效,进入年调整程序等待按键程序加键有效减键有效年加1年减1控制键有效,进入日调整程序等待按键程序加键有效减键有效控制键有效,进入小时调整程序等待按键程序日减1日加1加键有效减键有效小时加1小时减1控制键有效,进入月调整程序等待按键程序加键有效减键有效月加1月减1控制键有效,进入星期调整等待按键程序加键有效减键有效星期加1星期减1控制键有效,进入分钟调整程序等待按键程序加键有效减键有效分钟加1分钟减1按键有效,跳出时间调整程序,进入主循环程序图3-2
37、时间调整程序流程图第4章 系统的调试及结果4.1 测试仪器表4-1为调试过程中用到的仪器。表4-1 测试仪器清单序号名称型号1PC机LXB-HF769A2双路直流稳压电源CA17303D3数字万用表DT92084ISP在线编程器4.2 软件调试多功能时间显示控制装置时多功能的数字钟,可以看到当前日期,时间,还有温度显示。多功能时间显示控制装置功能很多,所以对于它的程序也较为复杂,所以在编写和调试程序时出现了较多问题13)14。最后经过多次的模块子程序的修改,一步一步地完成,最终解决了软件方面的问题。在软件的调试过程中主要出现以下问题:1.时钟的计数器显示的不正确,不是一秒一变,而是一秒两变。问
38、题分析:分频应该是0到499,设置成了0到999,改变分频大了一倍。2.下载到实验箱中点开始的时候,显示的是01-01-00,按复位后才显示00-00-00。问题分析:赋初值有问题。3.烧入程序后,LCD液晶显示屏显示亮度不好。问题分析:一边旋转10K欧姆的滑动变阻器,一边观看LCD显示屏,直到看到合适的亮度为止。4.加入温度测试的程序后,进行修改时间,日期时相应的数码管位没有按要求闪动。问题分析:由于DS18B20是串行通信数据,只用一个口线传输,在处理采集的模拟信号时需要一定的时间,当把时间,日期的程序相接入时,会对延时有很大的影响。所以在调用温度子程序时,先关闭定时器1中断允许,在温度子
39、程序返回时再打开定时器1中断允许。最终解决此问题。4.3 硬件调试多功能时间显示控制装置的电路系统较大,对于焊接方面更是不可轻视,庞大的电路系统中只要出一出的错误,则会对检测造成很大的不便,而且电路的交线较多,对于各种锋利的引脚要注意处理,否则会刺破带有包皮的导线,则会对电路造成短路现象12。所以在电路板焊接完成后,首先要检查加工质量,并确保没有任何方面的错误,如短路和断路,尤其要避免电源短路;元器件在安装前要逐一检查,用万用表测其数值,看是否与所用相同;完成焊接后,应先空载上电(芯片座上不插芯片),并检查各引脚的电位是否正确。若一切正常,方可在断电的情况下将芯片插入,再次检查各引脚的电位及其
40、逻辑关系。将万用表的探针放到单片机接电源的引脚上检测一下,看是否符合要求。在实验板加上电源后,使用万能表测出,在Vcc和GND之间的电压在5.08V-5.12V之间。在系统的排阻部分中,值在10K-10.1K之间,符合所需的10K的误差范围。在多功能时间显示控制装置的设计调试中遇到很多的问题。回想这些问题只要认真多思考都是可以避免的,一下为主要的问题:1.在程序烧入之后,将板子通电以后,时间,日期可以正常显示。但是,温度不可以正常显示。解决方案:用万用表测量温度测量的那一块电路,发现DS18B20芯片的一个脚在安装时断掉,导致电路不通。重新换一个新的温度采集芯片即可。4.4 调试结果经过反复调
41、试和修改,此次设计的硬件可以正确显示年,月,日,星期,时,分,秒和温度等,并可以通过按键进行手动复位,校时调节。与此同时,提高了设计能力及对电路的分析能力,在软件的编程能力方面得到更大的提高。第5章 结论我在这一次多功能时间显示控制装置的设计过程中,受益匪浅。通过对自己在大学四年时间里所学的知识的回顾,并发挥对所学知识的理解和思考及书面表达能力,自己亲手设计,最终完成目标了。这为自己今后进一步深化学习,积累了一定宝贵的经验。这次设计过程把知识转化为能力的实际训练,进一步学习,掌握单片机应用系统的有关知识,加深了解单片机的工作原理,培养了我运用所学知识解决实际问题的能力。同时,充分发挥了我的主管
42、能动性,自主学习,学到了很多没有学到的知识,较好地完成了毕业设计。本次毕业设计从基本方案的制定,再到硬件电路的选择,到制作电路完成,最后进行程序调试。在此期间我遇到很多困难,尤其是在做仿真时结果经常出不来,经过仔细检查,仿真线路是没有错误的,可结果就是不行。但当我将实物做出来后,进行了调试,实物上却可以出来结果。这说明这可能是仿真软件有问题。经过一次又一次品尝到了解决问题的喜悦,最终提前完成了要求的全部功能。通过这次课程设计我发现,只有理论水平提高了;才能够将课本知识与实践相整合,理论知识服务于教学实践,以增强自己的动手能力。这个课程设计十分有意义 ,我获得宝贵经验。通过这次课程设计,我们知道
43、了理论和实际的距离,也知道了理论和实际想结合的重要性,也从中得知了很多书本上无法得知的知识。这次设计的时间显示控制装置无论是在外观上还是在功能上都实现的较为顺利,但是还不是很完善,如纪念日提醒,闹铃等功能完全可以加入此次设计,以此来完善时间显示控制装置的设计。参考文献1欧阳斌林.单片机原理及应用M.中国水利水电出版社.2李学海.标准80C51单片机基础教程:原理篇M.北京航空航天大学出版社,2006.3何小庆.金融危机下的单片机MCU技术发展趋势J.单片机嵌入式系应用,2009,2(5):5-7.4Su kai,Liu qing-guo,Chen guoping.Principle and d
44、esign of MCS-51 Single-chip microprocessor. Metallurgical Industry press,2003.5储海兵,谭功全,曹亢.单片机温度控制实验系统J.仪表技术,2007,3(12):20-28.6柴卫华.新型数字温度传感器DS18B20组成的温度巡检系统J.传感器世界,2001,2(1):20-24.7甘勇.数字温度传感器DS18B20在多点测温系统中的应用J.河南农业大学学报,2001,3(1):2-5.8 黄明强.DS1302在单片机系统中的应用J.保定师范学校学报.2004,17(2):30-33.9张毅刚,修成林,胡振江.MCS-
45、51单片机应用设计.哈尔滨工业大学出版社.10Li Weidi,Guo qiang.Application technology of LCD displays. China Publishing House of Electronics Industry,2000.11万福君,潘松峰,刘芳等.MCS-51单片机原理,系统设计与应用M.清华大学出版社,2008. 12 沙占友.单片机外围电路设计M.北京.电子工业出版社.2003.13谭浩强.C程序设计与开发技术M.北京清华大学出版社,1991.14周润景,徐宏伟,丁莉.单片机电路设计,分析与制作M.机械工业出版社,2010.15 Dallas
46、 Semiconductor Corporation. Ultra-High-Speed Flash Microcontroller Users Guide, 2002.致谢首先感谢学院给我提供了一个展现自己的舞台,给我一次难得锻炼的机会,使得我的动手能力和专业技能都有了很大的提高。使自己对单片机的基本知识的掌握和应用有了更深的了解。在做毕业设计的日子里得到了张老师的悉心指导,在此向他致以诚挚的谢意。感谢提供相关技术帮助的老师和同学,你们的支持和鼓励使我们对这次的作品完成有了信心和动力,也给了我很多无私的帮助和支持,我在此深表谢意。附录1:系统设计原理图附录2:完整的C语言源程序清单#incl
47、ude #include #define uint unsigned int#define uchar unsigned charsbit DS1302_CLK = P15; /实时时钟时钟线引脚 sbit DS1302_IO = P16; /实时时钟数据线引脚 sbit DS1302_RST = P17; /实时时钟复位线引脚sbit ACC0 = ACC0;sbit ACC7 = ACC7;char hide_sec,hide_min,hide_hour,hide_day,hide_week,hide_month,hide_year; /秒,分,时到日,月,年位闪的计数sbit Set =
48、 P10; /模式切换键sbit Up = P11; /加法按钮sbit Down = P12; /减法按钮sbit out = P13; /立刻跳出调整模式按钮sbit bell = P14;sbit DQ = P20; /温度传送数据IO口char done,count,temp,flag,up_flag,down_flag;uchar temp_value; /温度值uchar TempBuffer5,week_value2;void show_time(); /液晶显示程序/*1602液晶显示部分子程序*/Port Definitions*sbit LcdRs= P26;sbit Lc
49、dRw= P27;sbit LcdEn = P25;sfr DBPort = 0x80;/P0=0x80,P1=0x90,P2=0xA0,P3=0xB0.数据端口/内部等待函数*unsigned char LCD_Wait(void)LcdRs=0;LcdRw=1;_nop_();LcdEn=1;_nop_(); LcdEn=0;return DBPort;/向LCD写入命令或数据*#define LCD_COMMAND0 / Command#define LCD_DATA1 / Data#define LCD_CLEAR_SCREEN0x01 / 清屏#define LCD_HOMING 0
50、x02 / 光标返回原点void LCD_Write(bit style, unsigned char input)LcdEn=0;LcdRs=style;LcdRw=0;_nop_();DBPort=input;_nop_();/注意顺序LcdEn=1;_nop_();/注意顺序LcdEn=0;_nop_();LCD_Wait();/设置显示模式*#define LCD_SHOW0x04 /显示开#define LCD_HIDE0x00 /显示关 #define LCD_CURSOR0x02 /显示光标#define LCD_NO_CURSOR0x00 /无光标 #define LCD_FL
51、ASH0x01 /光标闪动#define LCD_NO_FLASH0x00 /光标不闪动void LCD_SetDisplay(unsigned char DisplayMode)LCD_Write(LCD_COMMAND, 0x08|DisplayMode);/设置输入模式*#define LCD_AC_UP0x02#define LCD_AC_DOWN0x00 / default#define LCD_MOVE0x01 / 画面可平移#define LCD_NO_MOVE0x00 /defaultvoid LCD_SetInput(unsigned char InputMode)LCD_Write(LCD_COMMAND, 0x04|InputMode);/初始化LCD*void LCD_Initial()LcdEn=0;LCD_Write(LCD_COMMAND,0x38); /8位数据端口,2行显示,5*7点阵LCD_Write(LCD_COMMAND,0x38);LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR); /开启显示, 无光标LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年全球及中国DPO即服务行业头部企业市场占有率及排名调研报告
- 山东省青岛市高三第一次模拟考试语文试卷(含答案)
- 2025物业管理公司劳务合同
- 小额贷款居间合同范文
- 2025展板制作合同
- 连带共同担保合同签订
- 建设围墙施工合同
- 提高团队效能与绩效改进
- 2025建筑工程居间合同
- 聘用人才劳动合同
- 点亮生命-大学生职业生涯发展与就业指导全套教学课件
- 旅居管家策划方案
- 车间消防安全知识培训课件
- 华为经营管理-华为的研发管理(6版)
- 锂离子电池生产工艺流程图
- 平衡计分卡-化战略为行动
- 幼儿园小班下学期期末家长会PPT模板
- 矿山安全培训课件-地下矿山开采安全技术
- GB/T 6417.1-2005金属熔化焊接头缺欠分类及说明
- 《社会主义市场经济理论(第三版)》第七章社会主义市场经济规则论
- 《腰椎间盘突出》课件
评论
0/150
提交评论