万年历课设计报告.docx

上传人:b****1 文档编号:13409811 上传时间:2023-06-13 格式:DOCX 页数:14 大小:916.79KB
下载 相关 举报
万年历课设计报告.docx_第1页
第1页 / 共14页
万年历课设计报告.docx_第2页
第2页 / 共14页
万年历课设计报告.docx_第3页
第3页 / 共14页
万年历课设计报告.docx_第4页
第4页 / 共14页
万年历课设计报告.docx_第5页
第5页 / 共14页
万年历课设计报告.docx_第6页
第6页 / 共14页
万年历课设计报告.docx_第7页
第7页 / 共14页
万年历课设计报告.docx_第8页
第8页 / 共14页
万年历课设计报告.docx_第9页
第9页 / 共14页
万年历课设计报告.docx_第10页
第10页 / 共14页
万年历课设计报告.docx_第11页
第11页 / 共14页
万年历课设计报告.docx_第12页
第12页 / 共14页
万年历课设计报告.docx_第13页
第13页 / 共14页
万年历课设计报告.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

万年历课设计报告.docx

《万年历课设计报告.docx》由会员分享,可在线阅读,更多相关《万年历课设计报告.docx(14页珍藏版)》请在冰点文库上搜索。

万年历课设计报告.docx

万年历课设计报告

华北水利水电学院

课程设计报告

 

课程名称:

基于温度定时响铃的电子时钟

姓名:

马俊东

学号:

201017803

班级:

178班

专业:

电子信息工程

日期:

2011-6-30

 

0.前言

单片机,一个集成在一块芯片上的微型计算机系统,集成了中央处理单元存储器(CPU)、存储器(RAM/ROM)和各种I/O接口目前大部分具有外存。

同时集成诸如通讯接口、定时器,实时时钟等外围设备。

其主要应用于测试和控制领域,国际上统称为微控制器(MCU)。

其具有集成度高、体积小、可靠性高、控制功能强、低电压,低功耗,便于生产便携式产品的特点,外部有许多供扩展用的三总线及并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。

它在外部总线增加了I2C(Inter-IntegratedCircuit)及SPI(SerialPeripheralInterface)等串行总线方式,进一步缩小了体积,简化了结构。

单片机现在已经广泛的应用于在智能仪器仪表、机电一体化、日常生活及家用电器领域、实时过程控制、办公自动化设备、计算机网络和通信领域、商业营销设备航空航天系统和国防军事、尖端武器等领域、应用于汽车电子产品、单片机在医用设备领域。

1.课程设计的目的和要求

1.1课程设计的目的

为了了解89C51单片机的硬件结构,掌握89C51单片机的存储结构、特殊功能寄存器的基本作用,以及复位电路和时钟设计电路。

对其各引脚功能进一步的熟悉,掌握其应用的规范。

AT89C51是美国ATMEL公司生产的低电压,高性能的CMOS8位单片机片内4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存储器(RAM),器件采用ATMEL公司的高密度、非易失存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。

AT89C51单片机可灵活的应用于各种控制领域。

主要管脚说明:

 VCC:

供电电压。

GND:

接地。

  P0口:

P0口为一个8位漏级开路双向I/O口,被定义为高阻输入。

  P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,可接收输出4TTL门电流。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接

收,输出4个TTL门电流。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

P3口也可作为AT89C51的一些特殊功能口。

RST:

复位输入。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的/PSEN:

外部程序存储器的选通信号。

/EA:

当/EA保持低电平时,则在此期间外部程序存储器。

XTAL2:

来自反向振荡器的输出。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

1.2课程设计的基本要求

21世纪单片机的应用愈加广泛,深入到各个行业,认真熟练的掌握单片机的设计思路,使我们每个电子专业学生所必须掌握的技能。

本设计为具有温度显示、闹钟功能的电子时钟。

其设计要求基本功能如下:

字符型LCD(1602)显示。

格式为第一行“年月日星期”,第二行“时分秒温度”。

有光标指示来调整时间。

一旦定时时间到则由蜂鸣器发出声响,按下任意键可结束。

按键K1~K4动作如下:

K1设置时间,K2加键,K3加键,K4设置闹铃。

结合温度传感器测量的温度范围为:

-55℃~125℃。

所需要的基本器件:

STC89C52、DS18B20、DS1302、LCD1602、1K排阻、蜂鸣器、按键4个、S8550等

2.总体设计

2.1基本工作原理

LCD1602液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用,本设计所用的LCD1602它是一种用5x7点阵图形来显示字符的液晶显示器。

DS18B20可组网数字温度传感器芯片封装而成,具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。

DS1302可以对年、月、日、周、日、时、分、秒进行计时,且具有闰年补偿等多种功能,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。

2.2基本硬件设计

2.2.1LCD1602的结构和部分指令

LCD(LiquidCrystalDisplay)是液晶显示的缩写。

它是一种被动式的显示器,广泛的应用于仪表和控制系统中。

LCD1602模块中含有8条数据线,3条控制线,3条电源线。

它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。

指令1:

清显示,指令码01H,光标复位到地址00H位置

指令2:

光标复位,光标返回到地址00H

指令3:

光标和显示模式设置I/D:

光标移动方向,高电平右移,低电

平左移S:

屏幕上所有文字是否左移或者右移。

高电平表示有效,低电

平则无效

指令4:

显示开关控制。

D:

控制整体显示的开与关,高电平表示开显

示,低电平表示关显示C:

控制光标的开与关,高电平表示有光标,低电平表示无光标B:

控制光标是否闪烁,高电平闪烁,低电平不闪烁。

指令5:

光标或显示移位S/C:

高电平时移动显示的文字,低电平时移

动光标

指令6:

功能设置命令DL:

高电平时为4位总线,低电平时为8位总线。

指令7:

字符发生器RAM地址设置

指令8:

DDRAM地址设置

指令9:

读忙信号和光标地址BF:

为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。

指令10:

写数据

指令11:

读数据

其具体引脚定义如下:

第1脚:

VSS为地电源

第2脚:

VDD接5V正电源

第3脚:

V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一

个10K的电位器调整对比度

第4脚:

RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。

第5脚:

RW为读写信号线,高电平时进行读操作,低电平时进行写操作。

当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。

第6脚:

E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。

第7~14脚:

D0~D7为8位双向数据线。

第15~16脚:

空脚。

1602的启动与显示,在初始化过程中,起着很重要的作用,时序在编程的过程中显得尤为重要。

读时序操作:

写操作时序:

 

2.2.2DS18B20的结构与部分指令

独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。

测温范围-55℃~+125℃,固有测温分辨率0.5℃。

支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定,此时要考虑系统的能力。

DS18B20内部结构主要由四部分组成:

64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

DS18B20采用一线通信接口。

因为一线通信接口,必须在先完成ROM设定,否则记忆和控制功能将无法使用。

主要首先提供以下功能命令之一:

1)读ROM,2)ROM匹配,3)搜索ROM,4)跳过ROM,5)报警检查。

这些指令操作作用在没有一个器件的64位光刻ROM序列号,可以在挂在一线上多个器件选定某一个器件,同时,总线也可以知道总线上挂有有多少,什么样的设备。

  若指令成功地使DS18B20完成温度测量,数据存储在DS18B20的存储器。

一个控制功能指挥指示DS18B20的演出测温。

测量结果将被放置在DS18B20内存中,并可以让阅读发出记忆功能的指挥,阅读内容的片上存储器。

温度报警触发器TH和TL都有一字节EEPROM的数据。

如果DS18B20不使用报警检查指令,这些寄存器可作为一般的用户记忆用途。

在片上还载有配置字节以理想的解决温度数字转换。

写TH,TL指令以及配置字节利用一个记忆功能的指令完成。

通过缓存器读寄存器。

所有数据的读,写都是从最低位开始。

  DS18B20有4个主要的数据部件:

  

(1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。

64位光刻ROM的排列是:

开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。

光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

(2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:

用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。

DS18B20有六条控制命令其指令约定代码操作说明如下:

(1)温度转换44H启动DS18B20进行温度转换;

(2)读暂存器BEH读暂存器9个字节内容;

(3)写暂存器4EH将数据写入暂存器的TH、TL字节;

(4)复制暂存器48H把暂存器的TH、TL字节写到E2RAM中;

(5)B8H把E2RAM中的TH、TL字节写到暂存器TH、TL字节;

(6)读电源供电方式B4H启动DS18B20发送电源供电方式的信号给主CPU。

DS18B20的初始化:

(1)先将数据线置高电平“1”;

(2)延时(该时间要求的不是很严格,但是尽可能的短一点);

(3)数据线拉到低电平“0”;

(4)延时x微秒(该时间的时间范围可以从480到960微秒);

(5)数据线拉到高电平“1”;

(6)延时等待(如果初始化成功则在15到60毫秒时间之内产生一个由DS18B20所返回的低电平“0”。

据该状态可以来确定它的存在,但是应注意不能无限的进行等待,不然会使程序进入死循环,所以要进行超时控制);

(7)若CPU读到了数据线上的低电平“0”后,还要做延时,其延时的时间从发出的高电平算起(第(5)步的时间算起)最少要480微秒;

(8)将数据线再次拉高到高电平“1”后结束。

2.2.324C02的特点和结构

24c01/24c02是一个1K/2K位串行MOSE2PROM,内部含有128/256个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。

CAT24WC01有一个8字节页写缓冲器,24c01/24c02有一个16字节页写缓冲器.该器件通过I2C总线接口进行操作有一个专门的写保护功能。

AT24C02是带有C总线接口的E2PROM存储器,具有掉电记忆的功能,并且可以象普通RAM一样用程序改写。

它的容量是256个字节(00h~0ffh),有A2、A1、A0三位地址,可见C总线上可以连接8片AT24C02,它的寻址字节是1010A2A1A0R/W。

其中A0、A1、A2是芯片地址线,单片使用时接地;SCL是串行移位时钟端;SDA是串行数据或地址端,CPU通过SDA访问芯片;WP是写保护端,接高电平时芯片只能读。

 

C总线的数据传输协议如下:

(1)、主器件发出开始信号

(2)、主器件发出第一个字节,用来选通相应的从器件。

其中前7位为地址码,第8位为方向位(R/W)。

方向位为“0”表示发送,方向位为“1”表示接受。

(3)、从机产生应答信号,进入下一个传送周期,如果从器件没有给出应答信号,此时主器件产生一个结束信号使得传送结束,传送数据无效。

(4)、接下来主、从器件正式进行数据的传送,这时在I2C总线上每次传送的数据字节数不限,但每一个字节必须为8位(传送的时候先送高位,再送低位)。

当一个字节传送完毕时,再发送一个应答位(第9位),如上一条所述,这样每次传送一个字节都需要9个时钟脉冲。

数据的传送过程如下图所示:

EEPROM概述:

EEPROM是一种可用电气方法在线擦除和再编程的只读存储器.它既有RAM在连机操作中可读可改写的特性,又具有非易失性存储ROM在掉电后仍然能够保持所存储的数据的优点.写入的数据在常温下至少可以保持10年。

.

 

2.2.3DS1302的结构

DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。

实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。

工作电压宽达2.5~5.5V。

采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。

DS1302的外部引脚分配如图1所示及内部结构如图2所示。

DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。

各引脚的功能为:

Vcc1:

主电源;

Vcc2:

备份电源。

当Vcc2>Vcc1+0.2V时;

由Vcc2向DS1302供电,当Vcc2

SCLK:

串行时钟,输入,控制数据的输入与输出;

I/O:

三线接口时的双向数据线;

CE:

输入信号,在读、写数据期间,必须为高。

该引脚有两个功能:

第一,CE开始控制字访问移位寄存器的控制逻辑;其次,CE提供结束单字节或多字节数据传输的方法。

2.3软件总体设计

2.3.1、存储单元的分配、标志位的定义

首先对按键,各I/O口等进行定义

sbitDQ=P1^0;//ds18b20温度传送数据IO口

sbitds1302_rst=P1^1;//1302复位

sbitds1302_io=P1^2;//数据输入输出

sbitds1302_sclk=P1^3;//串行时钟

sbitalarm_out=P3^6;

sbitlcd1602_rs=P2^0;//1602命令、数据选择

sbitlcd1602_rw=P2^1;//1602写

sbitlcd1602_e=P2^2;//1602使能

sbitset=P2^4;//选择按键

sbitup=P2^5;//加

sbitdown=P2^6;//减

sbitnao=P2^7;

main()

{

lcd1602_init();

ds18b20_init();

ds1302_init();

c02_init();

while

(1)

{

if(done==1)

{

keyjpress();

}

if(done==0)

{

xianshi();//取得并显示日历和时间

key_set_alarm();

alarm_ring();

}

}

}

 

硬件原理框图:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 工作计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2