电子万历方案.docx

上传人:b****8 文档编号:10199105 上传时间:2023-02-09 格式:DOCX 页数:21 大小:253.83KB
下载 相关 举报
电子万历方案.docx_第1页
第1页 / 共21页
电子万历方案.docx_第2页
第2页 / 共21页
电子万历方案.docx_第3页
第3页 / 共21页
电子万历方案.docx_第4页
第4页 / 共21页
电子万历方案.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

电子万历方案.docx

《电子万历方案.docx》由会员分享,可在线阅读,更多相关《电子万历方案.docx(21页珍藏版)》请在冰豆网上搜索。

电子万历方案.docx

电子万历方案

 

电子万年历设计

 

入学日期:

2008年9月论文完成日期:

2018年5月

摘要

在当代繁忙的工作与生活中,时间与我们每一个人都有非常密切的关系,每个人都受到时间的影响。

为了更好的利用我们自己的时间,我们必须对时间有一个度量,因此产生了钟表。

钟表的发展是非常迅速的,从刚开始的机械式钟表到现在普遍用到的数字式钟表,即使现在钟表千奇百怪,但是它们都只是完成一种功能——计时功能,只是工作原理不同而已,在人们的使用过程中,逐渐发现了钟表的功能太单一,没有更大程度上的满足人们的需求。

因此在这里,我想能不能把一些辅助功能加入钟表中去。

在此设计中所设计的钟表不但具有普通钟表的功能,它还能实现额外的功能:

世界时、农历显示。

本系统采用了以广泛使用的单片机技术为核心,软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用LED显示电路、键盘电路,使人机交互简便易行,此外结合音乐闹铃电路、看门狗和供电电路。

本方案设计出的万年历可以显示日期时间、世界时、农历,设置闹铃功能

 

关键词:

GUI界面设计;AT指令;多线程;PDU编码解码;ODBCAPI;VisualC++;SQLServer2000

 

~~~~~~目录~~~~~~

摘要1

第一章设计要求与方案论证3

1.1 设计要求:

3

1.1.1基本功能3

1.1.2发挥部分3

1.2系统基本方案选择和论证3

1.2.1单片机芯片的选择方案和论证:

3

1.2.2显示模块选择方案和论证4

1.2.3时钟芯片的选择方案和论证5

1.2.4温度传感器的选择方案与论证5

1.3电路设计最终方案决定6

第二章系统的硬件设计与实现6

2.1电路设计框图6

2.2系统硬件概述6

2.3主要单元电路的设计7

2.3.2时钟电路模块的设计8

2.3.3温度采集模块设计9

2.3.4电路原理及说明10

2.3.5液晶显示模块概述15

第三章系统的软件设计19

3.1程序流程框图19

第四章指标测试22

4.1测试仪器22

4.2硬件测试22

4.3软件测试23

第五章作品总结24

致谢词25

参考文献26

第一章设计要求与方案论证

1.1 设计要求:

1.1.1基本功能

设计一个能够显示年、月、日、时、分、秒、星期功能的数字万年历。

采用LED或LCD显示年、月、日、时、分、秒、星期,并具备以下功能。

<1)能够任意设定年、月、日、时、分、星期;

<2)能够任意设定报时时间;

<3)能够区分平年、闰年、大小月份;

1.1.2发挥部分

<1)能够完成掉电保护<停电后保持时钟正常运行,但可以不显示);

<2)夜间自动关闭LCD显示;

<3)具有温度显示功能。

1.2系统基本方案选择和论证

1.2.1单片机芯片的选择方案和论证:

方案一:

采用89C51芯片作为硬件核心,采用FlashROM,内部具有4KBROM存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。

方案二:

采用AT89S52,片内ROM全都采用FlashROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KBROM存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。

所以选择采用AT89S52作为主控制系统.

1.2.2显示模块选择方案和论证:

方案一:

采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。

但所需数码管太多焊接困难极易出错。

所以不采用LED数码管作为显示。

方案二:

采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.

方案三:

采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,但是价格昂贵,需要的接口线多,本设计所需显示较多且需要文字。

所以在此设计中采用LCD液晶显示屏.

1.2.3时钟芯片的选择方案和论证:

方案一:

直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。

采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。

所以不采用此方案。

方案二:

采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V~5.5V范围内,2.5V时耗电小于300nA.

1.2.4温度传感器的选择方案与论证:

方案一:

使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。

此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。

方案二

采用数字式温度传感器DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低硬件成本,简化系统电路。

另外,数字式温度传感器还具有测量精度高、测量范围广等优点。

1.3电路设计最终方案决定

综上各方案所述,对此次作品的方案选定:

采用AT89S52作为主控制系统。

DS1302提供时钟。

数字式温度传感器。

LCD液晶显示屏作为显示。

第二章系统的硬件设计与实现

2.1电路设计框图

AT89S52

主控制模块

2.2系统硬件

本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V

超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。

采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。

DS1302内部有一个31*8的用于临时性存放数据的RAM寄存器。

可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的采集由DS18B20构成;显示部份为LCD液晶显示屏,能够实现字符与数字同时显示的功能。

2.3主要单元电路的设计

2.3.1主要单元电路的设计

AT89S52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3,MCS-51单片机共有4个8位的I/O口

单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端.如图-1所示

图-1主控制系统

2.3.2时钟电路模块的设计

图-2示出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始终是输入端。

图-2DS1302的引脚图

2.3.3温度采集模块设计

如图-3所示。

采用数字式温度传感器DS18B20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用P3.7与DS18B20的I/O口连接加一个上拉电阻,Vcc接电源,Vss接地。

 

图-3DS18B20温度采集

2.3.4电路原理及说明

(1>时钟芯片DS1302的工作原理:

DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图4所示。

图5为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。

对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。

位1至位5指操作单元的地址。

位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。

控制字节总是从最低位开始输入/输出的。

表6为DS1302的日历、时间寄存器内容:

“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。

“WP”

是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。

当“WP”为1时,写保护位防止对任一寄存器的写操作。

(2>DS1302的控制字节

DS1302的控制字如表-1所示。

控制字节的高有效位<位7)

必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位<位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出

RAMRD

1A4A3A2A1A0

/CK/WR

表-1DS1302的控制字格式

(3>数据输入输出

在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。

同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。

如下图-4所示

 

图-4DS1302读/写时序图

(4>DS1302的寄存器

DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表-2。

表-2DS1302的日历、时间寄存器

此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、

时钟突发寄存器及与RAM相关的寄存器等。

时钟突发寄存器可一

次性顺序读写除充电寄存器外的所有寄存器内容。

DS1302与RAM相关的寄存器分为两类:

一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H~FDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写>、FFH(读>。

2.3.5液晶显示模块概述

一.YM12832C是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×32全点阵液晶显示器组成。

可完成16×2个(16×8点阵>ASCII码显示,也可以显示8×2个(16×16点阵>汉字。

与外部CPU接口可采用并行方式控制。

主要技术参数和性能:

1.电源:

VDD:

+2.7∽+5V。

2.显示内容:

128(列>×32(行>点。

3.全屏幕点阵。

4.2MROM(CGROM>总共提供8192个汉字(16×16点阵>。

5.16KROM

6.2MHZ频率。

7.工作温度:

-10℃∽+55℃,存储温度:

-20℃∽+60℃

2.外形尺寸图

工程

正常尺寸

单位

模块体积

110×65×14.5

mm

视域

76×25.2

mm

行列点阵数

128×32

DOTS

点距离

0.52×0.52

mm

点大小

0.57×0.57

mm

三、模块主要硬件构成说明

RS

R/W

功能说明

L

L

MPU写指令到指令暂存器

L

H

读出忙标志

H

L

MPU写入数据到数据暂存器

H

H

MPU从数据暂存器

RS,R/W的配合选择决定控制界面的4种模式:

●忙标志:

BF

到DB7总线,从而检验模块之工作状态.

●字型产生ROM

字型产生ROM

DFF=1为开显示,DDRAM的内容就显示在屏幕上,DFF=0为关显示

DFF的状态是指令DISPLAYON/OFF和RST信号控制的。

●显示数据RAM

显示数据RAM提供64×2个位元组的空间,最多可控制4行16字<64个字)的中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是瘦长的英数字型、CGRAM字型及CGROM的中文字型,三种字型的选择,由在DDRAM中写入的编码选择,在00~0F的编码中将选择CGRAM的字定义字型,10~7F的编码中将选择

瘦长英数字的字型,至于A0以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码

●字型产生RAM(CGRAM>

字型产生RAM提供图象定义(造字>功能,可以提供四组16×16点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到CGRAM中,便可和CGRAM中的定义一般的通过DDRAM显示在荧屏中。

●地址计数器AC

地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6~DB0中。

●ICONRAM

IC1提供256点的ICON显示,它分别由16组的IRAM地址来组成,每一组IRAM地址由16个位元构成,每次写入一组IRAM时,必须通过连续写入两个位元组的资料来完成,先写入高位元组再写入低位元组。

●LCD驱动电路

LCD驱动电路提供33COMMON以及64SEGMENT信号来驱动LCD棉板,SEGMENT数据从CGRAM/CGROM转换储存到64位元的SEGMENT串列锁存,当33个COMMON中的一个COMMON输出时,相对应的SEGMENT数据将从64位元的串列锁存输出到SEGMENT驱动电路。

●游标/闪烁控制电路

此模块提供硬体游标及闪烁控制电路,由地址计数器的值来指定DDRAM中的游标或闪烁位置

四·模块的外部接口

外部接口信号如下表2所示<并行接口):

表2

管脚号

管脚名称

LEVER

管脚功能描述

1

EL/A

AC/+5V

背光源电压

2

EL/K

AC/0V

背光源电压

3

VSS

0V

电源地

4

VCC

+5V

电源正

5

VEE

0∽5.0V

液晶显示器驱动电压

6

RS

H/L

RS=“H”,处理显示数据

RS=“L”,处理控制指令

7

R/W

H/L

R/W=“H”,E=“H”,数据被读

到DB7~DB0R/W=“L”,

E=“H→L”,DB7~D

B0的数据被写到IR或DR

8

E

H/L

使能信号

9

DB0

H/L

数据线

10

DB1

H/L

数据线

11

DB2

H/L

数据线

12

DB3

H/L

数据线

13

DB4

H/L

数据线

14

DB5

H/L

数据线

15

DB6

H/L

数据线

16

DB7

H/L

数据线

 

第三章系统的软件设计

3.1程序流程框图

 

图-A主程序流程图

 

 

图-B计算阳历程序流程图

 

图-C时间调整程序流程图

 

第四章指标测试

4.1测试仪器

序号

名称

型号

1

PC机

LXB-HF769A

2

双路直流稳压电源

CA17303D

3

Keil

uVision2

4

数字万用表

DT9208

5

ISP在线编程器

4.2硬件测试

电子万年历的电路系统较大,对于焊接方面更是不可轻视,庞大的电路系统中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交线较多,对于各种锋利的引脚要注意处理,否则会刺破带有包皮的导线,则会对电路造成短路现象。

在本电子万年历的设计调试中遇到了很多的问题。

回想这些问题只要认真多思考都是可以避免的,以下为主要的问题:

<1)LCD显示出现重叠,,原因出于没有给出正确的显示地址。

解决:

重新排列选取合适地址。

<2)对万年历修改时间或日期时,有时LCD数码管被屏蔽

掉,造成不显示现象。

解决:

根据仪器的测试,发现电路的驱动能力不足,最后在DS1302时钟芯片的/CS、SCLK、RET端接入5.1K的上拉电阻后,电路的驱动能力才能满足,即可解决不亮现象。

4.3软件测试

电子万年历是多功能的数字型,可以看当前日期,时间,还有温度的仪器。

电子万年历功能很多,所以对于它的程序也较为复杂,所以在编写程序和调试时出现了相对较多的问题。

最后经过多次的模块子程序的修改,一步一步的完成,最终解决了软件。

在软件的调试过程中主要遇到的问题如下:

1.烧入程序后,LCD液晶显示闪动,而且亮度不均匀。

解决:

首先对调用的延时进行逐渐修改,可以解决显示闪动问题。

其次,由于本作品使作动态扫描方式显示的数字,动态扫描很快,人的肉眼是无法看出,但是调用的显示程序时,如果不在反回时屏蔽掉最后的附值,则会出现很亮的现象,所以在显示的后面加了屏蔽子令,最后解决了此问题。

2.加入温度的程序后,进行修改时间、日期时相应的液晶屏没有按要求显示。

解决:

由于DS18B20是串行通信数据,只用一个口线传输,在处理采集的模拟信号时需要一定的时间,当把万年历的程序相接入时,会对延时有很大的影响。

所以在调用温度子程序时,先关闭定时器1中断允许,在温度子程序反回时再打开定时器1中断允许。

最终解决了此问

第五章作品总结

在整个设计过程中,发挥团队精神,分工合作,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识。

较好的完成了作品。

达到了预期的目的,在最初的设计中,发挥“三个臭皮匠,顶个诸葛亮”的作用。

相互学习、相互讨论、研究。

完了最初的设想。

在电路焊接时虽然没什么大问题,但从中也知道了焊接在整个作品中的重要性,电路工程量大,不能心急,一个个慢慢来不能急于求成。

反而达到事半功倍的效果。

对电路的设计、布局要先有一个好的构思,才显得电路板美观、大方。

程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考,和同组员的讨论,理清了思路,反而得心应手。

在此次设计中,知道了做凡事要有一颗平常的心,不要想着走捷径,一步一脚印。

也练就了我们的耐心,做什么事都在有耐心。

 

致谢词

大学三年的学习生活即将结束乐,这篇论文作为我在校期间学习的最后一份答卷,敬礼给各位老师。

在大学这三年的学习和生活,我不仅学到了丰富的专业知识,更学到了各位老师人真工作、爱岗敬业、为人师表的优良品质。

在此,谨向各位老师表示深深的敬意和谢意!

在论文修改过程中,衷心的感谢指导老师张老师尽心尽力的对论文进行了仔细的修改,无论是在论文格式还是论文内容上,都要求的较为严格,使我在设计过程中学到了很多东西。

 

 

参考文献

[1]  李建忠.《单片机原理及应用》.西安电子科技大学出版, 2006.02   

[2]  张俊谟.《单片机中级教程》.北京航空航天大学出版, 2006.03

[3]  余发山.《单片机原理及及应用技术》.中国矿业大学出版社, 2003.12

[4]  杨凌霄.《微型计算机原理及应用》.中国矿业大学出版社, 2004.08

[5]  李飞光.《单片机课程设计实例指导》.北京航空航天大学出版社, 2004

[6]  李振声.《实验电子技术》

[7]  何立民.《单片机应用技术选编》.北京航空航天大学出版社, 2000.08

[8]  万光毅.《单片机实验与实践教程》.北京航空航天大学出版社, 2005.01

[9]  周航慈.《单片机程序设计基础》.北京航空航天大学出版社, 1991.11

[10]  黄遵熹.《单片机原理接口与应用》.西北工业大学出版社, 1997.05

 

 

学号

200806010136

姓名

赵彦丽

专业

电子信息技术

系别

信息工程系

班级

电信1班

学制

三年制

论文题目

电子万年历设计

指导教师姓名

张国栋

职务或职称

指导教师评语:

 

成绩:

指导教师签名:

年月日

复审意见:

 

成绩:

复审人签名:

年月日

答辩委员会评语:

 

成绩:

主持人签名:

年月日

终审意见:

 

成绩:

终审人签名:

年月日

展开阅读全文
相关搜索

当前位置:首页 > 初中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1