函授本科_机械设计制造及其自动化毕业论文《基于单片机的万年历设计》

发布时间:2022-12-08 作者:金顺教育

函授本科_机械设计制造及其自动化毕业论文《基于单片机的万年历设计》

1. 电子万年历的课题设计

1.1 课题设计的目的和意义

时间对于人类来说是非常宝贵重要,工作的忙碌性和繁杂性容易使人忘记当天的时间,一旦重要的事情,一时的耽误可能酿成大祸。因为时钟只能显示具体某一时间、分秒的信息,而不能看到具体时、分、秒的信息;纸挂历只能查看年、月、日、星期和农历信息。假如我们不知道现在的具体时间是多少,只凭时钟,纸挂历是不能帮上我们什么忙的,而电子万年历却起了非常重要的作用,因为电子万年历不仅可以显示时、分、秒的信息,也能显示年、月、日、星期、农历信息,而且人们看起来也及其方便,一目了然。正因为万年历拥有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,所以它具有广阔的市场前景。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

1.2 课题设计牵涉到的国内外发展状况,发展趋势和存在的问题

近年来,随着科学技术的快速发展,无论是国内还是国外,电子万年历的设计方案越来越成熟了,稳定性和实用性也有大大的提高,电子万年历由只能实现基本功能到现在市面上集娱乐为一身的常见的产品。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
正是基于万年历很好的开放性和可发挥性,因为它特别适合用在家庭居室、办公室、大厅、会议室、车站、广场、学校、部队等场合,遍布了人们生活中的每一个角落。所以说电子万年历的开发是国之所需,社会之所需,民之所需,因此多种多样的万年历被设计了出来。目前市面上有普通万年历,温度万年历,计算机万年历,天气预报万年历,多功能万年历,世界时万年历,掌心万年历等等。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
然而,现代的数码产品市场更新换代的周期越来越短,所以在设计万年历产品的时候在完成一些基本功能以外,在控制好成本的前提下,往产品内加入更多的娱乐功能已经成为了一种趋势,这也成为万年历产品受欢迎的一个重要的制约因素。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

1.3 课题设计所要实现的功能

本系统的设计是一种基于实时时钟芯片DS1302,以STC89C52单片机为核心、LCD显示的电子万年历,并加入了温度实时显示功能(温度误差<0.5摄氏度).主要

介绍温度传感器DS18B20的时序读写和时钟芯片  DS1302的数据操作原理,通过万年历硬件和软件的设计,实现了年、月、日、时、分、秒、星期的调整功能 ,温度为实时显示(不可调)。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

1.4课题设计的指导思想

本系统先对系统所需要的主要芯片进行选择和论证,确定了选用STC89C52单片机作为系统的主要控制芯片,时钟芯片DS1302提供时钟,数字式温度传感器实现实时温度显示,而显示部分采用的是LCD显示屏。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
接着简要的介绍了系统的调试工具,而重点是对相应的模块的硬件进行详细的讲解,有利于对各模块的了解。最后给出全局程序和电路原理图,方便理解。

2. 系统的设计方案与选择

2.1单片机芯片的设计方案

方案一:采用89C51芯片作为硬件核心,采用FLASH ROOM,内部具有4KB ROM存储空间,能在低于3V的超低压环境下工作,而且与MCS-51单片机完全兼容,但是运用于电路设计中由于不具备ISP在线编程技术,当对电路进行调试时由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的影响。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
方案二:采用STC89C52芯片作为硬件核心,内ROM全部采用FLASH ROOM,同样  具有89C51的功能,且具有在线编程可擦除技术,当对电路进行调试的时候,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成影响。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
所以选用STC89C52作为主控制系统的硬件核心。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

2.2显示模块的选择

方案一:采用LED数码管动态扫描,虽然LED管的价格适中,对于显示数字也比较合适,但需要显示多位数字和字母时,编程就会变得比较复杂,而且占用的单片机口线多。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
方案二:采用LCD液晶显示屏,虽然LCD液晶显示屏的价格相对LED数码管的价格贵,但是它的显示功能是非常强大的,可以显示大量字符,清晰可见,需要的单片机口线少。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
所以选用LCD作为显示模块。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

2.3时钟芯片的选择

方案一:直接选用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计时。虽然芯片的使用量少,节约成本但是时间的误差比较大。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
方案二:采用DS1302计时,DS1302芯片是一种性能比较高的芯片,可以自动对秒、分、时、年、月、日、星期以及闰年补偿进行校准,最主要的是它的精确度高,工作电压在2.5~5.5V范围内。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
所以选用DS1302作为系统的时钟芯片。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

2.4温度传感器的选择

方案一:使用热敏电阻作为传感器,热敏电阻的电阻值是随着温度的变化而变化的,此方案需要A/D转换电路,增加硬件成本,而且热敏电阻的感温特性曲线并不是严格线性的,会产生很大的误差。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
方案二:采用数字式温度传感器DS18B20,此传感器只需一条数据进行数据的传输,易于与单片机连接,可以去掉A/D模块,降低了硬件的成本,简化了系统的电路,测量精度高,测量范围比较广。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
所以选择数字式温度传感器DS18B20来测温。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

2.5按键控制模块设计的选择

方案一:采用矩阵键盘,由于按键多可实现数值的直接键入,但在系统中需要CPU不间断的对其端口扫描。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
方案二:采用独立按键,查询简单,程序处理简单,可节省CPU资源。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
所以选用独立按键作为按键控制模块。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

2.6本系统电路设计的最终方案

采用ATC89C52作为主控制系统的核心控制器,DS1302时钟芯片提供时钟,数字式温度传感器,DS18D20测温,显示模块用LCD液晶显示屏显示,采用独立式按键作为按键控制模块。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

3. 电子万年历的硬件设计

3.1硬件的设计总框图 

图3-1硬件设计的总框架图gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
本次设计的基于单片机控制的电子万年历,其具有年、月、日、星期、时、分、秒的显示,实时温度显示等功能;其具体实现过程就是由主控制发送信息给DS1302时钟芯片(或数字式温度传感器DS18B20),再由时钟芯片或数字式温度传感器DS18B20)反馈给单片机,再由主控制器传送给LCD显示信息。并且可以在键盘设置模块输入修改时间,当键盘设置时间、日期时,单片机主控制根据输入信息,通过串口通信传送给DS1302时钟芯片,DS1302芯片读取当前新信息产生反馈传送给单片机,然后单片机根据控制最后输送显示信息到LCD模块上显示。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

3.2主控制器STC89C52

3.2.1单片机STC89C52的介绍

单片机是在集成电路芯片上集成了各种元件的微型计算机,这些元件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时/计数器、中断系统、时钟部件的集成和I/O接口电路。由于单片机具有体积小、价格低、可靠性高、开发应用方便等特点,因此在现代电子技术和工业领域应用较为广泛,在智能仪表中单片机是应用最多、最活跃的领域之一。在控制领域中,现如今人们更注意计算机的底成本、小体积、运行的可靠性和控制的灵活性。在各类仪器、仪表中引入单片机,使仪器仪表智能化,提高测试的自动化程度和精度,提高计算机的运算速度,简化仪器仪表的硬件结构,提高其性能价格比。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

3.2.2最小系统

单片机最小系统包括时钟电路、电源和复位电路等,是单片机工作的基本要求。单片机控制整个系统的工作,一方面读取日历时钟芯片中的日期等数据,检测是否需要设置,并处理相应的按键。另一方面,控制显示器的工作,将各种数据送到液晶显示器去显示。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

3.3时钟电路 DS1302

图3-1示出DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768KHZ晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RSTS置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。中有在SCLK 为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

3.4温度检测 DS18B20

温度采集模块采用DS18B20,其单总线通信方式使得硬件相当简单,如图3-3所示,数字输出通过DQ脚输入到单片机的P1.0口。 gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
图3-3 温度采集电路gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

3.5 LCD液晶显示

3.5.1 LCD1602的特性及使用说明

LCD1602的接口信号说明如表3-1:gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
表3-1LCD1602的接口信号gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
编号 引脚符号 功能说明 编号 引脚符号 功能说明
1 VSS 电源地 9 D2 DATA I/O
2 VDD 电源正极 10 D3 DATA I/O
3 VL 液晶显示偏压信号 11 D4 DATA I/O
4 RS 数据/命令选择端(H/L) 12 D5 DATA I/O
5 R/W 读/写选择端(H/L) 13 D6 DATA I/O
6 E 使能信号 14 D7 DATA I/O
7 D0 DATA I/O 15 BLA 背光正极
8 D1 DATA I/O 16 BLK 背光负极
2  基本操作时序如下:gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
1)读状态:RS=L,RW=H,E=HgCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
2)写指令:RS=L,RW=L,D0~D7=指令码,E=高脉冲gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
3)读数据:RS=H,RW=H,E=HgCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
4)写数据:RS=H,RW=L,D0~D7=数据,E=高脉冲gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
3 初始化设置gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
1)显示模式设置如表3-2:gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
表3-2 显示模式设置gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
指令码 功能
0 0 1 1 1 0 0 0 设置16*2显示,5*7点阵,8位数据接口
2)显示开/关及光标设置如表3-3:gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
表3-3 显示开/关及光标设置gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
指令码 功能
0 0 0 0 1 D C B D=1开显示;D=0关显示gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
C=1显示光标;C=0不显示光标gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
B=1光标闪烁;B=0光标不显示
0 0 0 0 0 1 N S N=1当读或写一个字符后地址指针加一,且光标加一gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
N=0当读或写一个字符后地址指针减一,且光标减一gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
S=1当写一个字符,整屏显示左移(N=1)

3.6 键盘接口

按键输入部分主要用于时间调整、定时设置、闹钟设置以及查询公历某日对应的农历日期,最终确定由四个按键来实现上叙功能,由于按键比较少,所以用普通按钮接在I/O口,启用 I/O口的内部上拉电阻,用查询法完成读键功能。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

3.7电源的设计

电源模块为其他各模块提供工作所需的电压。电源采用USB供电方式,如图3-4所示为USB供电电路。USB电平为5V,但是系统工作电平要求是3.3V,所以需要进行电平转换。如图3.5是5V-3.3V的电平转换电路,选用LM1117T-3.3V作为稳压芯片,C10和C1对输入电压进行滤波,C2对输出电压进行滤波。D1是一个整流二极管,防止电流反冲造成对USB供电设备的损害。

4. 系统软件的设计

电子万年历的功能是在程序控制下实现的。该系统的软件设计方法是与硬件设计相对应,它被分成多个不同的程序模块,分别进行设计、编程和调试,最后通过主程序将各程序模块连接起来。本系统的软件部分主要要进行温度测量程序设计,按键的扫描输入等。程序开始运行后首先要进行初始化,把单片机的各引脚的状态按程序里面的初始化命令进行初始化,初始化完成后运行温度测量程序,读取出温度传感器测量出来的温度,然后运行公历计算程序,得到公历的时间、日期信息,再运行按键扫描程序,检测有无按键按下,如果没有按键按下则直接调用节日计算程序,根据得到的公历日期信息计算出节日,如果有按键按下则更新按键修改后的变量后送给节日计算程序,由节日计算程序根据修改后的变量计算出对应的节假日,计算完成后运行显示程序,显示程序将得到的温度数据、公历信息、节假日信息送给对应的数码管让其显示。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

4.1主程序流程图的设计

4.2 程序设计

4.2.1 DS1302读写程序设计

本系统的时间读取主要来源于单片机对DS1302的操作,在硬件上时钟芯片DS1302与单片机的连接需要三条线,即SCLK(7)、I/O(6)、RST(5),具体连接图见系统硬件设计原理图。读取写程序设计如下:gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
函 数 名:RTInputByte()gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
 功    能:实时时钟写入一字节gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
 说    明:往DS1302写入1Byte数据 (内部函数)gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
功能:读取DS1302某地址的数据gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
说明:先写地址,后读命令/数据 (内部函数)gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
调用:RTInputByte() , RTOutputByte()gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
入口参数:ucAddr: DS1302地址gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
返回值:ucData :读取的数据gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
DS1302与微处理器进行数据交换时,首先由微处理器向电路发送命令字节,命令字节最高位MSB(D7)必须为逻辑 1,如果D7=0,则禁止写DS1302,即写保护;D6=0,指定时钟数据,D6=1,指定RAM数据;D5~D1指定输入或输出的特定寄存器;最低位LSB(D0)为逻辑0,指定写操作(输入),D0=1,指定读操作(输出)。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院

4.2.2 温度程序设计

单总线上最基本的操作有初始化、写和读3种,所有其它的操作都由这3种基本操作组合而成,初始化用于对总线上的器件进行状态复位,写用于主节点向总线上写入一位数据,读用于主节点从总线上读取一位数据。在这3种操作中,只有写操作是单向的,初始化操作和读操作都是双向的。具体程序设计如下:

5.系统的机体设计及调试

5.1系统的模块组成

本设计由数据显示模块、温度采集模块、时间处理模块和调整设置模块四个模块组成。系统的核心采用的是STC89C52单片机;数据显示模块采用的是LCD液晶显示;gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
温度采集模块用的是DS18B20温度传感器,该.传感器所采用的是单总线传输,内部带有A/D转换,用起来非常方便;时间处理模块用的是DS1302时钟芯片,可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能;调整设置模块共包括四个按键:模式选择键、功能选择键、调整加按键、调整减按键。电路实际效果如图5-1:

5.2系统软件调试与仿真

通过编写出程序,然后在仿真原理图中检查单片机和液晶屏等器件是否能够正常显示。通过Keil uVision4软件的使用来编译程序的,确保了程序的正确性及程序所设计的功能能够顺利的实现。如图5-2程序运行图gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
通过软件的调试,接着在Proteus仿真软件里进行仿真。按原理图的设计在ISIS软件中连接好电路。接好后装入HEX文件后,单击仿真运行工具栏上的“运行”,在ISIS的编辑窗口中可以看到单片机应用系统的仿真运行效果。其中,红色方块代表高电平,蓝色方块代表低电平。如图5-3仿真效果

5.3系统硬件调试

次电路主要是检测格其引脚电压是否正常,晶振和电源是否接好,检测硬件电路是否有短路、断路、虚焊等,以确保设计的可靠性和电器元件的性能。而电路中的电源电路、晶体振荡电路、按键接口电路及复位电路、闹钟电路等都是采用基础的电路设计,除了基础电路硬件调试外我们还可以通过软件来测试硬件,如通过下载口写入其它一个比较简单的程序,以便测试。gCY宁波成人高考,函授专升本,成人专科,宁波成人教育,浙江大学宁波理工学院
首先由USB电源插口接入5V的直流电压供给系统使用。在这里接上一个发光二级管作为指示,单输入电压正常时,二极管亮,LCD同时显示正常。系统在正常工作时,LCD液晶上第一行显示时分秒和温度,第二行显示年月日和星期,如果想要对时间进行调整,可以通过调整设置模块来实现。当按下设置键P3.0键时可调节主页面的时分秒、年月日的调节,P3.1为调整加按键,P3.2为调整减按键,P3.3按下时可进入另一种模式。第二种模式可显示闰年,第三种模式可设置闹钟时间。如果想要退出该模式就在按一下P3.3即可。
在硬件调试过程中,当接通电源的时候,我们发现液晶显示器没有工作,背光灯有亮但没有数据出来。但电源指示灯已亮,说明电源输入正常,待我们用万用表测电路中各电压时发现,单片机各引脚电压也正常,显示器的各引脚也正常。经过同学与老师的帮助,发现程序出错,改后再接电源,电路一切正常。

Copyright © 宁波金顺培训学校官网浙ICP备10034111号-1重庆大棚维修重庆大棚厂