带实时日历时钟的温度检测系统

带实时日历时钟的温度检测系统
带实时日历时钟的温度检测系统

山东理工大学

毕业设计(论文)

题目:带实时日历时钟的温度

检测系统的设计

学院:电气与电子工程学院

专业:应用电子技术

学生姓名:苏丽娟

指导教师:陈文钢

毕业设计(论文)时间:二О一一年 2月 21日~ 6月13日共16 周

摘要

本文借助电路仿真软件Proteus对基于AT89S51单片机的带实时日历时钟的温度检测系统的设计方法及仿真进行了全面的阐述。该系统在硬件方面主要采用AT89S51单片机作为主控核心,由 MAXIM6675热电偶数字转换器及DS18B20数字温度传感器采集温度、DS1302时钟芯片提供时钟、LCD1602液晶显示屏显示、L7805提供电源电路。AT89S51单片机是由Atmel公司推出的,功耗小,电压可选用4~6V电压供电; MAXIM6675是由MAXIM公司推出的,是一个集成了热电偶放大器、冷端补偿、A/D转换器及SPI串口的热电偶放大器与数字转换器,可以直接与单片机接口,大大简化系统的设计,保证了温度测量的快速、准确;DS1302时钟芯片是美国DALLAS公司推出的具有涓细电流充电功能的低功耗实时时钟芯片,它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能;数字显示是采用的LCD液晶显示屏来显示,可以同时显示温度、年、月、日、时、分、秒等信息。所有程序编写完成后,在Keil 软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。关键词:单片机AT89S51;MAX6675;DS1302;LCD1602;温度

I

Abstract

This paper mainly discuss the design and simulation of a temperature detection system with real—time displaying based on AT89S51 with the help of Proteus. In this system, the hardware mainly adopts core, AT89S51 as the master MAXIM6675 thermocouple by digital converter and DS18B20 digital temperature sensors to collect temperature, DS1302 clock chip LCD1602 provide clock, LCD display, L7805 provide power supply circuit. Atmel company by AT89S51 is introduced, low consumption, voltage can choose 4 ~ 6V voltage power supply; By MAXIM company MAXIM6675 is introduced, the thermocouple is an integrated amplifier, the cold end compensation, A/D converter and SPI serial thermocouple amplifier and digital converter, can directly and single-chip microcomputer interface, greatly simplifying the design of the system, to ensure the temperature measurement of the rapid and accurate; DALLAS DS1302 clock chip is the United States out Juan fine current charge function with the low-power real-time clock chip, it can for year, month, day, when, minutes and seconds for timing, also has a variety of functions such as leap year compensation; Digital display is used to display the LCD screen, can also display temperature, year, month, day, when, minutes and seconds and other information.

Keywords:SCM AT89S51; MAX6675; DS1302; LCD1602; temperature

II

目录

摘要............................................................................................................................................... I ABSTRACT(英文摘要) ...................................................................................................... I I 目录...........................................................................................................................................III 第一章引言........................................................................................................................ - 1 -

1.1课题的背景和意义 .................................................................................................. - 1 -

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

1.2.1单片机芯片的选择......................................................................................... - 1 -

1.2.2显示模块选择方案和论证 ........................................................................... - 1 -

1.2.3时钟芯片的选择方案和论证....................................................................... - 2 -

1.2.4温度传感器的选择方案与论证 .................................................................. - 3 -

1.3电路设计最终方案决定......................................................................................... - 3 - 第二章系统的硬件设计与实现........................................................................................ - 4 -

2.1电路设计框图 ........................................................................................................... - 4 -

2.2系统硬件概述 ........................................................................................................... - 4 -

2.3主要单元电路的设计.............................................................................................. - 5 -

2.3.1 AT89S51单片机最小系统............................................................................. - 5 -

2.3.2时钟电路模块的设计...................................................................................... - 6 -

2.3.3温度采集模块设计......................................................................................... - 7 -

2.3.4显示模块的设计.............................................................................................. - 8 -

2.3.5 MAX6675工作原理及说明............................................................................. - 9 -

2.3.6 DS18B20工作原理及说明............................................................................. - 4 -

2.3.7 LCD1602工作原理及说明........................................................................... - 15 -

2.3.8 DS1302工作原理及说明 ............................................................................... - 4 -

2.3.9电源电路 ......................................................................................................... - 18 -

2.3.10系统硬件电路............................................................................................... - 19 - 第三章系统的软件设计 ................................................................................................... - 20 -

3.1程序流程框图 ......................................................................................................... - 20 -

III

3.2子程序....................................................................................................................... - 22 - 第四章仿真与调试............................................................................................................. - 23 - 第五章总结........................................................................................................................ - 24 -参考文献................................................................................................................................. - 24 -致谢与声明 ............................................................................................................................ - 24 -

IV

第一章引言

1.1 课题的背景和意义

随着电子技术的迅速发展,特别是随大规模集成电路出现,给人类生活带来了根本性的改变。温度和时间都是与人们日常生活密切相关的,特别是温度检测应用甚广,如家居、厂房安全监测,环境温度监测和报警,农业温室监测,温度随时间变化测试仪等等。目前推广应用的许多温度控制系统多采用电阻式温度传感器,测量精度低,需要A/D转换,电路复杂,离散性大,温度反应缓慢。为此,采用热电偶及DS18B20作为温度采集单元和单片机来对它们进行控制,不仅具有控制方便、简单、灵活等优点。将本系统置于房间、办公室、校园、车间、汽车上或其它公共场所,使用液晶显示模块显示时间和温度,无论什么时间都能同时满足人们对环境温度和时间的确知。

该题目接近生活,实用性强,并且与单片机很好的结合,可以通过该题目进一步学习单片机原理以及其应用,从而在电路理论和实践能力的结合上得到进一步锻炼,达到其综合能力的培养和提高。

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

1.2.1 单片机芯片的选择

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

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

方案一:

- 1 -

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

方案二:

采用LED数码管动态扫描,LED数码管价格虽适中,对于显示数字也最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。但是由于数码管动态扫描需要借助74LS164移位寄存器进行移位,该芯片在电路调试时往往会有很多障碍,所以不采用LED数码管作为显示。

方案三:

采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,对于该系统而言,一个1602的液晶屏即可,价格也还能接受,需要的接口线较多,但会给调试带来诸多方便,所以此设计中采用LCD1602液晶显示屏作为显示模块。

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

方案一:

直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、时、分、秒计数。采用此种方案虽然可以减少时钟芯片的使用,节约成本,但是,实现的时间误差较大,所以不采用此方案。

方案二:

采用DS1302时钟芯片实现时钟,DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。主要

- 2 -

特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。因此,本设计中采用DS1302提供时钟。

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

方案一:

使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。

方案二:

采用数字式温度传感器DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以避免A/D模数转换模块,降低硬件成本,简化系统电路。虽然数字式温度传感器具有测量精度高的优点,但是,其测量范围太小,不足以满足该系统的要求。

方案三:

采用K型热电偶测温,此类传感器结构简单、制造容易、使用方便、测温范围宽等特点,但是,其精确度不高,而且电热偶输出的热电势信号必须经过中间转换环节,才能输入基于单片机的嵌入式系统,所以最终决定选择由DS18B20及MAXIM6675热电偶数字转换器分两路采集温度。

1.3 电路设计最终方案决定

综上各模块的选择方案与论证,确定最后的主要硬件资源如下:采用AT89S51作为主控制系统;MAXIM6675热电偶数字转换器及DS18B20作为数字式温度传感器;DS1302提供时钟; LCD1602液晶屏作为显示;L7805提供电源电路。

- 3 -

- 4 -

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

2.1 电路设计框图

本系统的电路系统框图如图2-1所示。由L7805供电,AT89S51单片机对电热偶、DS18B20和DS18B20写入控制字并读取相应的数据,继而控制LCD1602作出对应的显示。

图2-1 系统硬件框图

2.2 系统硬件概述

本电路是由AT89S51单片机作为控制核心,电源电压为3~5V ,AT89S51

是一个低功耗,高性能CMOS 8位单片机,片内含4kBytes ISP(In-system programmable)的可反复擦写1000次的Flash 只读程序存储器,器件采用ATMEL 公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80S51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash 存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案;温度的采集由MAX6675和DS18B20完成,MAX6675集成了热电偶放大器、冷端补偿、A/D 转换器及SPI 串口的热电偶放大器与数字转换器,测温范围为0℃~+1024℃,精确度12位0.25℃;DS18B20具有独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯,测温范围 -55℃~+125℃,测温分辨率0.0625℃,工作电源:3~5V DC ;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM 的实时时钟电路,它可以对年、月、日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V ~5.5V 。DS1302内部有一个31

键盘控制模块

温度采集模块 MAX6675 DS18B20

AT89S51 主控模块

LCD1602液晶显示模块

DS1302时钟模块 L7805电源

×8的用于临时性存放数据的RAM寄存器。可产生年、月、日、周、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;显示部份由LCD1602液晶显示器完成,该显示器为工业字符型液晶,能够同时显示16×02即32个字符(16列2行)。

2.3 主要单元电路的设计

2.3.1 AT89S51单片机最小系统

单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。

单片机要正常运行,必须具备一定的硬件条件,其中最主要的就是三个基本条件:1.电源正常;2.时钟正常;3.复位正常。

其最小系统如图2-2所示:18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位输入端,接上电容,电阻后构成上电自动复位电路,20引脚为接地端,40引脚为电源端。

- 5 -

图2-2 单片机最小系统

2.3.2时钟电路模块的设计

DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。单片机与DS1302连接图如图2-3所示:

- 6 -

图2-3 DS1302与单片机的连接

2.3.3 温度采集模块设计

采用数字式温度传感器DS18B20测室内环境温度,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用P0.7与DS18B20的I/O口连接加一个上拉电阻,Vcc接电源,Vss接地。独特的一线接口,只需要一条口线通信多点能力,简化了分布式温度传感应用无需外部元件可用数据总线供电,电压范围为3.0V至5.5V无需备用电源测量温度范围为-55度至+125度。-10度至+85度范围内精度为±0.5度温度传感器可编程的分辨率为9~12位。DS18B20连线如图2-4所示。

采用单片K型热电偶放大与数字转换器MAX6675测工业温度。热电偶作为一种主要的测温元件,具有结构简单、制造容易、使用方便、测温范围

- 7 -

宽、测温精度高等特点。MAX6675是一个集成了热电偶放大器、冷端补偿、A/D转换器及SPI串口的热电偶放大器与数字转换器,采用简单的SPI串行口温度输出,测温范围为0℃~+1024℃,分辨率为12位0.25℃,+5V的电源电压。热电偶及数字转换器MAX6675连线如图4所示。

图2-4温度采集模块连线

2.3.4 显示模块的设计

如下图2-5所示,采用LCD1602液晶显示器,单片机P1口作为数据输出口,RS,R\W,E分别通过10K的上拉电阻连接到单片机的P0.0,P0.1,P0.2。VDD接5V电源,VSS接地。VEE为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。RS为寄存器选择,高电平1时选

- 8 -

择数据寄存器、低电平0时选择指令寄存器。R/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。E(或EN)端为使能(enable)端,下降沿使能。DB0-DB7为双向数据总线,同时最高位DB7也是忙信号检测位。BLA、BLK分别为显示器背光灯的正、负极。

图2-5 LCD1602与单片机的连接

2.3.5 MAX6675工作原理及说明

(1) MAX6675的工作原理

MAX6675的内部结构如图2-6所示。该器件是一复杂的单片热电偶数字转换器,内部具有信号调节放大器、12位的模拟/数字化热电偶转换器、冷端补偿传感和校正、数字控制器、1个SPI兼容接口和1个相关的逻辑控制。

- 9 -

图2-6 MAX6675内部结构框图

(2)温度变换

MAX6675内部具有将热电偶信号转换为与ADC输入通道兼容电压的信号调节放大器,T+和T-输入端连接到低噪声放大器A1,以保证检测输入的高精度,同时使热电偶连接导线与干扰源隔离。热电偶输出的热电势经低噪声放大器A1放大,再经过A2电压跟随器缓冲后,被送至ADC的输入端。在将温度电压值转换为相等价的温度值之前,它需要对热电偶的冷端温度进行补偿,冷端温度即是MAX6675周围温度与0℃实际参考值之间的差值。对于K型热电偶,电压变化率为41μV/℃,电压可由线性公式Vout=(41μV/℃)×(tR-tAMB)来近似热电偶的特性。上式中,Vout为热电偶输出电压(mV),tR是测量点温度;tAMB是周围温度。

(3) 冷端补偿

热电偶的功能是检测热、冷两端温度的差值,热电偶热节点温度可在

- 10 -

0℃~+1023.75℃范围变化。冷端即安装MAX6675的电路板周围温度,比温度在-20℃~+85℃范围内变化。当冷端温度波动时,MAX6675仍能精确检测热端的温度变化。

MAX6675是通过冷端补偿检测和校正周围温度变化的。该器件可将周围温度通过内部的温度检测二极管转换为温度补偿电压,为了产生实际热电偶温度测量值,MAX6675从热电偶的输出和检测二极管的输出测量电压。该器件内部电路将二极管电压和热电偶电压送到ADC中转换,以计算热电偶的热端温度。当热电偶的冷端与芯片温度相等时,MAX6675可获得最佳的测量精度。因此在实际测温应用时,应尽量避免在MAX6675附近放置发热器件或元件,因为这样会造成冷端误差。

(4)热补偿

在测温应用中,芯片自热将降低MAX6675温度测量精度,误大小依赖于MAX6675封装的热传导性、安装技术和通风效果。为降低芯片自热引起的测量误差,可在布线时使用大面积接地技术提高MAX6675温度测量精度。

(5)噪声补偿

MAX6675的测量精度对电源耦合噪声较敏感。为降低电源噪声影响,可在MAX6675的电源引脚附近接入1只0.1μF陶瓷旁路电容。

(6)测量精度的提高

热电偶系统的测量精度可通过以下预防措施来提高:①尽量采用不能从测量区域散热的大截面导线;②如必须用小截面导线,则只能应用在测量区域,并且在无温度变化率区域用扩展导线;③避免受能拉紧导线的机械挤压和振动;④当热电偶距离较远时,应采用双绞线作热电偶连线;⑤在温度额定值范围内使用热电偶导线;⑥避免急剧温度变化;⑦在严劣环境中,使用合适的保护套以保证热电偶导线;⑧仅在低温和小变化率区域使用扩展导线;⑨保持热电偶电阻的事件记录和连续记录。

- 11 -

- 12 -

(7) SPI 串行接口

MAX6675采用标准的SPI 串行外设总线与MCU 接口,且MAX6675只能作为从设备。MAX6675 SO 端输出温度数据的格式如表2-1所示,MAX6675 SPI 接口时序如图2-7所示。MAX6675从SPI 串行接口输出数据的过程如下:MCU 使CS 变低并提供时钟信号给SCK ,由SO 读取测量结果。CS 变低将停止任何转换过程;CS 变高将启动一个新的转换过程。一个完整串行接口读操作需16个时钟周期,在时钟的下降沿读16个输出位,第1位和第15位是一伪标志位,并总为0;第14位到第3位为以MSB 到LSB 顺序排列的转换温度值;第2位平时为低,当热电偶输入开放时为高,开放热电偶检测电路完全由MAX6675实现,为开放热电偶检测器操作,T-必须接地,并使能地点尽可能接近GND 脚;第1位为低以提供MAX6675器件身份码,第0位为三态。

表2-1 MAX6675 SO 端 输出数据的格式

空标

志位

12位温度

热电偶输入 设备身份

状态

位 15 14 13 12 11 10 9 8 7 6 5 4 3

2

1 0

MSB

LSB

三态

图2-7 MAX6675 SPI 接口时序

- 13 -

2.3.6 DS18B20工作原理及说明

(1)DS18B20内部结构

DS18B20内部结构主要由四部分组成:64位光刻ROM 、温度传感器、非挥发的温度报警触发器TH 和TL 、配置寄存器。另外,下面给出一部分的温度对应值表,表2-2。

I/O

Vdd

图2-8 DS18B20内部结构 表2-2 一部分温度对应值表

温度/℃ 二进制表示 十六进制表示

+125 0000 0111 1101 0000 07D0H +85 0000 0101 0101 0000 0550H +25.0625 0000 0001 1001 0000 0191H +10.125 0000 0000 1010 0001 00A2H +0.5 0000 0000 0000 0010 0008H 0 0000 0000 0000 1000 0000H -0.5 1111 1111 1111 0000 FFF8H -10.125 1111 1111 0101 1110 FF5EH -25.0625 1111 1110 0110 1111 FE6FH -55

1111 1100 1001 0000

FC90H

C

64

位 R O M 和 单 线 接 口

高速缓存

存储器与控制逻辑

温度传感器

高温触发器TH 低温触发器TL

配置寄存器 8位CRC 发生器

(2)DS18B20工作原理

图2-9中低温度系数晶振的震荡频率受温度的影响很小,用于产生固定频率的脉冲送给减法计数器1;高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数震荡器产生的时钟脉冲计数,进而完成温度测量。计数门的开启时间由高温度系数震荡器来决定,每次测量前,首先将-55℃所对应的一个基数分别置入减法计数器1,温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。

减法计数器1所对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置值将被重新装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值就是所测温度值。图2-8中的斜率累加器用于补偿和修正测温过程中的非线形性,其输出用于减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直到温度寄存器值达到被预测值。

另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要,系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20→发ROM功能命令→发存储器操作命令→处理数据。

- 14 -

- 15 -

增加

停止

图2-9 DS18B20 测温原理图

2.3.7 LCD1602工作原理及说明

(1)寄存器选择控制

1602字符型LCD 通常有14条引脚线或16条引脚线的LCD ,多出来的2条线是背光电源线。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符,图形寄存器选择控制表如表2-3所示:

表2-3 1602寄存器选择控制表

(2)指令集

RS R/W 操作说明 0 0 写入指令寄存器(清屏指令等) 0 1

读busy flag,以及读取位址计数器

(DB0-DB6)的值

1 0 写入数据寄存器(显示各字型等) 1

1

从数据寄存器读取数据 斜坡累加器 预置 计数比较器 预置

高温度系数振荡器

温度寄存器 减数计数器1 减数计数器2

减到零 减到零

低温度系数振荡器

lcd实时日历时钟评测报告

lcd实时日历时钟评测报告 部门: xxx 时间: xxx 制作人:xxx 整理范文,仅供参考,可下载自行修改

课程设计说明书 课程名称:单片机原理及应用 设计题目: LCD日历 院系: 学生姓名: 学号: 专业班级: 2018年3月 1日

目录摘要4 一.设计任务和要求4 二.方案论证4 三.核心元件的性能4 1.AT89C514 1.1 功能特性概括:5 1.2 管脚说明:5 2.DS13027 2.1DS1302引脚功能7 2.2DS1302的控制字8 2.3 DS1302的寄存器9

2.4 DS1302的数据输入输出10 四.理论分析与计算11 五.电路与程序设计11 1.系统硬件设计11 1.1系统总原理图11 1.2主控部分(单片机MCS-51>11 1.3 计时部分<实时时钟芯片DS1302)12 1.4Proteus仿真图12 2.系统软件设计13 2.1程序流程图12 2.2程序源代码12

六.结果分析23七.设计体会总结24参考文献25

摘要 此次课程设计的要求是通过LCD与单片机的连接模块能够显示数字<如时间)、字符<如英文)和图形等,这就需要专门的时钟芯片-----DS1302。DS1302是一种高性能、低功耗、带RAM的实时时钟芯片,它能够对时,分,秒进行精确计时,它与单片机的接口使用同步串行通信,仅用3条线与之相连接,就可以实现MCS-51单片机对其进行读写操作,把读出的时间数据送到LM044L上显示。程序运行时,必须先对LM044L进行初始设置,然后,通过单片机从DS1302中获取时间并通过LM044L显示。同时,进行循环赋值,使LCD 动态显示当前的时间。b5E2RGbCAP 关键字:AT89C51、DS1302,LM044L显示器 朗读显示对应的拉丁字符的拼音字典 - 查看字典详细内容 一.设计任务和要求 1. 利用DS1302实现年月日时分秒,并用LCD显示。 2.通过LCD模块与单片机的接口,能显示数字<如时间)、字符<如英文)。 3. 硬件设计部分,根据设计的任务选定合适的单片机,根据控制对象设计接口电路。设计的单元电路必须有工作原理,器件的作用,分析和计算过程;p1EanqFDPw 4. 软件设计部分,根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单;DXDiTa9E3d 5.原理图设计部分,根据所确定的设计电路,利用Protel工具软件绘制电路原理图,提供元器件清单。

基于单片机的电子日历时钟设计

#include #define uchar unsigned char #define uint unsigned int //----端口定义--- sbit ACC_7=ACC^7; sbit RST1=P2^5; sbit IO=P2^6; sbit SCLK=P2^7; sbit k1=P3^2; sbit k2=P3^3; sbit k3=P2^2; sbit k4=P2^3; //uchar wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 数码的位选,左到右 uchar tab_1302[7]={45,50,11,19,1,1,15}; uchar tab_time[8]={0,0,10,0,0,10,0,0}; //时间 uchar tab_day[8]={0,0,10,0,0,10,0,0,}; //年月日 uchar tab_num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf}; //0 1 2 3 4 5 6 7 8 9 - {"0123456789-"} ////////////=============函数声明============//////////////// void display_time(); void delayms(uint); void display_day(); void ds1302(); //获取DS1302的时间 void ds1302_init(); //DS1302的初始化 void write1302(uchar,uchar); //指定地址向DS1302写数据 uchar read1302(uchar); //指定地址向DS1302读数据 void ds1302(); void int0_init(); /////////=======中断初始化=======/////////// void int0_init() { EX0=1;

实时日历/时钟系统的实现

山东科技大学信电学院07级大神的课程设计代码,实时日历/时钟的设计及实现825982538255仅供学弟学妹参考,课程设计还要自己做。 .386 Init macro op1,op2,op3,op4,op5,op6 mov cx,00h mov dh,op1 mov dl,op2 op6:mov ah,02h mov bh,00h int 10h push cx mov ah,0ah mov al,op3 mov bh,00h mov cx,01h int 10h pop cx inc cx inc op4 cmp cx,op5 jne op6 endm data segment shijian db 10 dup(':') ;存放时间 riqi db 20 dup(' ') ;存放日期 str1 db ' Welcome to use this clock ',0ah,0dh db '* show time--t ',0ah,0dh db '* set time--s ',0ah,0dh,'$' str2 db ' _ _ ',0ah,0dh db ' ( ) ( )',0ah,0dh db ' | |_| | ',0ah,0dh db ' | _ | /^_` )( ^_`\ ( ^_`\ ( ) ( ) ',0ah,0dh db ' | | | |( (_| || (_) )| (_) )| (_) | ',0ah,0dh db ' (_) (_)`\__,_)| ,__/^| ,__/^`\__, | ',0ah,0dh db ' | | | | ( )_| | ',0ah,0dh db ' (_) (_) `\___/^ ',0ah,0dh db ' _ _ _ _ ',0ah,0dh db ' ( ) ( ) ( ) ( ) ',0ah,0dh db ' | `\| | __ _ _ _ `\`\_/^/^__ _ _ _ __ ',0ah,0dh db ' | , ` | /^__`\( ) ( ) ( ) `\ /^/^__`\ /^_` )( ^__) ',0ah,0dh db ' |`\ | ( ___/| \_/ \_/ | | |( ___/( (_| || | ',0ah,0dh

万年历(时钟芯片和液晶显示)

#include #include #include"zhuanhuan.h" #define uchar unsigned char #define uint unsigned int sbit SCK=P3^5; sbit SDA=P3^4; sbit RST=P3^3;// DS1302复位 sbit set=P1^0;//定义按键端口 sbit s1=P1^1; sbit s2=P1^2; sbit s3=P1^3; void keyscan1();void keyscan(); /************液晶口定义*******/ sbit RS=P2^0;//RS为数据/指令选择1/0 sbit RW=P2^1;//读写 sbit E=P2^2;//E为使能信号 bit flag;//是否读取时间的标志位 uchar setn=0;//复位键、增加键、减少键按下次数 uchar code time0[]="Date: - - "; uchar code time1[]="Time: : : "; uchar l_tmpdate[]={00,00,00,7,1,7,12};//秒分时日月周年// 可随时更改uchar code write_add[7]={0x80,0x82,0x84,0x86, 0x88,0x8a,0x8c}; //秒分时日月周年写的寄存器地址 uchar code read_add[7]={0x81,0x83,0x85,0x87, 0x89,0x8b,0x8d}; //秒分时日月周年读的寄存器地址 extern uchar data dis_buf2[16]; void delay(uint z) { while(--z); } void write_com(uchar com)//液晶写命令函数 { RS=0;//写命令使能 RW=0;//写 delay(5000); /****在高脉冲下命令输入*****/ E=0; P0=com; delay(500); E=1; delay(500); E=0; }

数字温度计说明书

单片机课程设计 题目:数字温度计 院别:机电学院 专业:机械电子工程 班级: 姓名: 学号: 指导教师: 二〇一三年十二月二十一日

摘要 本设计即用单片机对温度进行实时检测与控制,本文所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,本次课程设计采用51单片机以及锁存器74HC573N、四位共阴数码管、DS18B20温度传感器、蜂鸣器、三极管等组成的自动过温报警器,该过温报警器测温准确,使用方便,显示清晰,最高精度可达到0.0625度,最长温度转换时间不到1秒,应用范围广泛。用四位共阴数码管实现温度显示,能准确达到设计要求。本温度计属于多功能温度计,功能较强,可以设置上下限报警温度,且测量准确、误差小。当测量温度超过设定的温度上下限时,启动蜂鸣器和指示灯报警。 关键词 过温报警;锁存器;单片机;温度传感器

目录 前言 (1) 一.本次课程设计实践的目的和意义 (2) 二.设计任务和要求 (2) 2.1 设计题目 (2) 2.2 主要技术性能指标 (2) 2.3 功能及作用 (2) 三. 系统总体方案及硬件设计 (2) 3.1查阅相关资料后有以下两个方案可供选择 (2) 3.2元件采购 (3) 3.3系统总体设计 (3) 四.接口电路设计 (6) 4.1模块简介 (6) 4.2 主控制器 (6) 4.3 显示电路 (7) 4.4温度传感器 (7) 4.5温度报警电路 (9) 五. 系统软件算法分析 (10) 5.1主程序流程图 (10) 5.2读出温度子程序 (11) 5.3温度转换命令子程序 (11) 5.4 计算温度子程序 (12) 5.5 显示数据刷新子程序 (12) 5.6按键扫描处理子程序 (13) 六. 电路仿真 (14) 七.焊接好的电路实体图 (15) 八.检查与调试 (16) 九.作品的使用 (16) 十.设计心得 (20) 参考文献 (20) 附录 (21)

时钟日历

Protues 图 ;程序清单: ;设置变量缓冲区 SEC EQU 30H MIN EQU 31H HOUR EQU 32H DAY EQU 33H MON EQU 34H YEAR EQU 35H ;************************************************************************* ORG 0000H LJMP MAIN ORG 000BH LJMP INT_T0 ORG 0030H MAIN: LCALL CHUSHI MOV TMOD,#01H MOV TH0,#4CH MOV TL0,#00H MOV IE,#82H SETB TR0 ;开启定时器T0 MOV 50h,#00H ;启用定时器T0的初始值 MOV 37H,#0 ;显示日期和时间的标志

MOV 38H,#0 ;12进制和24进制的标志 MOV 39H,#23 ;默认时间为24进制 CLR F0 ;日历定时0和1的标志 LOOP: MOV A,37H JZ SHIJIAN MOV R1,#33H LJMP BEGIN1 SHIJIAN:MOV R1,#30H ;初始化显示 BEGIN1: MOV A,38H JZ JZ24 MOV 39H,#11 LJMP BEGIN2 JZ24: M OV 39H,#23 BEGIN2: LCALL DISPLAY LCALL KEY ;扫描键盘 CJNE A,#05H,DINGS ;判断键值是否为5号键 LCALL DY1MS ;若是,则实现调整LCALL TIAOT LCALL TIAOT LCALL DISPLAY LJMP DOWN DINGS: CJNE A,#06H,QIEH ;判断键值是否为6号键,定时 LCALL DY1MS ;若是,则实现调整 CPL F0 JNB F0,DI0 ;F0=0,定时器0 LCALL DISHI1 ;F0=1,定时器1 LCALL DISPLAY LJMP DOWN DI0: LCALL DISHI0 LCALL DISPLAY LJMP DOWN QIEH: CJNE A,#07H,BIANH ;判断键值是否为7号键,切换 LCALL DY1MS ;若是,则切换显示,年月日与时分秒切换 LCALL DISPLAY MOV A,37H CPL A MOV 37H,A LJMP DOWN BIANH: CJNE A,#08H,DOWN ;判断是否为八号键,变换进制 LCALL DY1MS LCALL DISPLAY MOV A,38H CPL A MOV 38H,A DOWN: LJMP loop

用数码管显示实时日历时钟的应用设计

(用数码管显示实时日历时钟的应用设计)

摘要 本课题通过MCS-51单片机来设计电子时钟,采用汇编语言进行编程,可以实现以下一些功能:小时,分,秒和年,月,日的显示。本次设计的电子时钟系统由时钟电路,LED显示电路三部分组成。51单片机通过软件编程,在LED数码管上实现小时,分,秒和年,月,日的显示;利用时钟芯片DS1302来实现计时。本文详细介绍了DS1302 芯片的基本工作原理及其软件设计过程,运用PROTEUS软件进行电路连接和仿真,同时还介绍了74LS164,通过它来实现I|O口的扩展。 关键词:时钟芯片,仿真软件,74LS164 目录 前言 0.1设计思路 (8) 0.2研究意义 (8)

一、时钟芯片 1.1 了解时钟芯片……………………………………………….8-9 1.2 掌握时钟芯片的工作原理………………………………….10-11二、74LS164 2.1 了解74LS164........................................................11-12 2.2 掌握的74LS164工作原理. (12) 三、数码管 3.1 熟悉常用的LED数码管...........................................12-13 3.2 了解动态显示与静态显示. (13) 四、程序设计 4.0 程序流程图 (14) 4.1 DS1392的驱动.......................................................15-16 4.2 PROTUES实现电路连接. (17) 4.3 数码管的显示:小时;分;秒 (18) 4.4 数码管显示:年;月;日 (19) 五、总结…………………………………………………………………..20-21 六、附页程序………………………………………………………………22-31前言

基于单片机的电子时钟设计报告(LCD显示)

单片机原理及应用课程设计任务书 题目:电子时钟(LCD显示) 1、设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: 使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。用3个功能键操作来设置当前时间。功能键K1~K4功能下。 K1—设置小时。 K2—设置分钟。 K3—设置秒。 程序执行后工作指示灯LED发光,表示程序开始执行,LCD显示“23:59:00”,然后开始计时。 2、工作原理 本课题难点在于键盘的指令输入,由于每个按键都具有相应的一种功能,程序中有较多的循环结构用以判断按键是否按下,以及判断按键是否抬起,以及LCD显示器的初始化。 3、参考电路 硬件设计电路图如下图所示: 硬件电路原理图 单片机原理及应用课程设计任务书

题目:电子时钟(LCD显示) 1、设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: 使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。用3个功能键操作来设置当前时间。功能键K1~K4功能下。 K1—设置小时。 K2—设置分钟。 K3—设置秒。 程序执行后工作指示灯LED发光,表示程序开始执行,LCD显示“23:59:00”,然后开始计时。 2、工作原理 本课题难点在于键盘的指令输入,由于每个按键都具有相应的一种功能,程序中有较多的循环结构用以判断按键是否按下,以及判断按键是否抬起,以及LCD显示器的初始化。 3、参考电路 硬件设计电路图如下图所示: 硬件电路原理图 基于AT89C51单片机的电子时钟设计报告

一、设计要求与目的 1)设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间。 2)、使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。3)、用3个功能键操作来设置当前时间。 4)、熟悉掌握proteus编成软件以及keil软件的使用 二、本设计原理 本设计以AT89C51单片机为核心,通过时钟程序的编写,并在LCD显示器上显示出来。该编程的核心在于定时器中断及循环往复判断是否有按键操作,并对每个按键的操作在LCD显示器上作出相应的反应。由于LCD显示器每八位对应一个字符,故把秒、分、时的个位和十位分开表示。 该课题中有三个控制开关KM1、KM2、KM3分别控制时、分、秒的调整,时间按递增的方式调整,每点一次按钮则相应的时间个位加以,且时间调整不干扰其他为调整时间的显示。 三、硬件设计原理(电路) 硬件电路原理图

智能温度计

学科分类号520·6070 题目智能温度计 姓名马旭东 学号11110130 院(系)工程与信息学院 专业计算机科学与技术 指导教师于永涛 2014年12月19日

摘要 本论文的主要内容是详细叙述使用AT89C51型号单片机来进行智能数字温度计设计的思路与相关知识的理解。这种温度计一般选取A T89C51单片机为这个系统的控制中心,温度传感器选择DS18B20传感器,采用1602液晶显示器作显示,选择hc-05主存一体蓝牙串口模块实现手机连接等。整个设计主要包括以下几个部分:主控模块,显示模块,温度采集模块,蓝牙连接模块和报警模块,实现了对温度的测量,显示,和报警等功能。 关键词:AT89C52单片机;数字温度传感器DS18B20;显示器1602LCD; hc-05主存一体蓝牙串口模块; 目录 摘要.......................................................... - 1 -1 绪论 (3) 1.1 选题的背景 (3) 1.2 智能数字温度计简介 (3) 1.2.1智能数字温度计的特征 (3) 1.2.2 设计实现的目标 (4) 2 智能数字温度计的硬件电路设计 (5) 2.1 控制电路 (5) 2.1.1 MCU简介 (5) 2.1.2 最小系统模块 (6) 2.2 温度传感器设计 (7) 2.2.1 DS18B20简介 (7) 2.2.2 温度传感器与单片机的连接 (9) 2.2.3 复位信号及外部复位电路 (9) 2.3 单片机与报警电路 (10) 2.4 显示电路 (10) 3 软件设计 (11) 3.1 DS18b20的读操作 (11) 3.2 DS18b20的温度数据处理 (13)

实时日历时钟显示系统的设计

微机原理及应用课程设计任务书 20 xx -20 xx 学年第 x 学期第 xx 周- xx 周 题目实时日历时钟显示系统的设计 内容及要求 内容:实时日历时钟显示系统 要求:设计一个实时日历时钟显示系统的程序。用“年/月/日”,“时:分:秒”(都是两位)的形式连续显示系统时间 进度安排 课程设计内容时间分配 方案论证1天 分析、设计、调试、运行3天 检查、整理、写设计报告、小结1天 合计5天 学生姓名: xx 指导时间: xxxx 指导地点: xxxx 任务下达任务完成 考核方式 1.评阅√ 2.答辩√ 3.实际操作□ 4.其它□指导教师系(部)主任 注:1、此表一组一表二份,课程设计小组组长一份;任课教师授课时自带一份备查。 2、课程设计结束后与“课程设计小结”、“学生成绩单”一并交院教务存档。

此次微机原理课程设计要求设计一个实时日历时钟显示系统。 本程序利用DOS中断2AH号功能调用取系统年月日,再逐个显示各数据,利用2CH号功能调用取系统时间,逐个显示各数据。用“时:分:秒”(都是两位)的形式连续显示系统时间,并利用计算机提供的软件调试工具对所编写程序进行调试,记录下整个调试分析的过程与运行结果。 任务安排: 主程序: xx:主体程序和流程设计 xx:日历调用显示系统 xx:时间调用显示系统 子程序: xx:显示两位数字的子程序

一、课程名称 (2) 二、课程内容及要求 (2) 三、小组组成 (2) 四、设计思路 (3) 五、程序流程图及介绍 (4) 六、调试 (5) 七、总结 (7) 八、参考资料 (9) 附录 (9)

一、课程名称:实时日历时钟显示系统的设计 二、课程内容及要求 课程内容:实时日历时钟显示系统 要求:设计一个实时日历时钟显示系统的程序。用“年/月/日”,“时:分:秒”(都是两位)的形式连续显示系统时间 三、小组组成: 成员: xx, xx, xx, xx 任务安排: 主程序: xx:主体程序和流程设计 xx:日历系统 xx:时间系统 子程序: xx:显示两位数字的子程序

lcd实时日历时钟报告

课程设计说明书 课程名称:单片机原理及应用 设计题目:LCD日历 院系: 学生姓名: 学号: 专业班级: 2011年3月1日

目录 摘要 (4) 一.设计任务和要求 (4) 二.方案论证 (4) 三.核心元件的性能 (4) 1.AT89C51 (4) 1.1 功能特性概括: (5) 1.2 管脚说明: (5) 2.DS1302 (7) 2.1 DS1302引脚功能 (7) 2.2 DS1302的控制字 (8) 2.3 DS1302的寄存器 (9) 2.4 DS1302的数据输入输出 (10) 四.理论分析与计算 (12) 五.电路与程序设计 (12) 1.系统硬件设计 (12) 1.1系统总原理图 (12) 1.2 主控部分(单片机MCS-51) (12) 1.3 计时部分(实时时钟芯片DS1302) (13) 1.4 Proteus仿真图 (13) 2.系统软件设计 (14) 2.1 程序流程图 (13)

2.2 程序源代码 (13) 六.结果分析 (23) 七.设计体会总结 (24) 参考文献 (25) 摘要

此次课程设计的要求是通过LCD与单片机的连接模块能够显示数字(如时间)、字符(如英文)和图形等,这就需要专门的时钟芯片-----DS1302。 DS1302是一种高性能、低功耗、带RAM的实时时钟芯片,它能够对时,分,秒进行精确计时,它与单片机的接口使用同步串行通信,仅用3条线与之相连接,就可以实现MCS-51单片机对其进行读写操作,把读出的时间数据送到LM044L上显示。程序运行时,必须先对LM044L进行初始设置,然后,通过单片机从DS1302中获取时间并通过LM044L显示。同时,进行循环赋值,使LCD 动态显示当前的时间。 关键字:AT89C51、DS1302,LM044L显示器 一.设计任务和要求 1.利用DS1302实现年月日时分秒,并用LCD显示。 2.通过LCD模块与单片机的接口,能显示数字(如时间)、字符(如英文)。 3. 硬件设计部分,根据设计的任务选定合适的单片机,根据控制对象设计接口电路。设计的单元电路必须有工作原理,器件的作用,分析和计算过程; 4. 软件设计部分,根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单; 5.原理图设计部分,根据所确定的设计电路,利用Protel工具软件绘制电路原理图,提供元器件清单。 6计算说明书部分包括方案论证报告打印版或手写版,程序流程图具体程序等 7. 图纸部分包括具体电路原理图打印版 8. 设计要求还包括利用一天时间进行资料查阅与学习讨论,利用5天时间在实验室进行分散设计,最后三天编写报告。最后一天进行成果验收。 二.方案论证 实现数字电子钟的设计有以下两种基本方案,现就两种基本方案的优劣进行具体论证,

单片机电子时钟(LCD显示)综合实验报告

单片机综合实验报告 题目:电子时钟(LCD)显示 一、实验内容: 以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: ●使用字符型LCD显示器显示当前时间。 ●显示格式为“时时:分分:秒秒”。 ●用4个功能键操作来设置当前时间,4个功能键接在 P1.0~P1.3引脚上。 功能键K1~K4功能如下。 ●K1—进入设置现在的时间。 ●K2—设置小时。 ●K3—设置分钟。 ●K4—确认完成设置。 程序执行后工作指示灯LED闪动,表示程序开始执 行,LCD显示“00:00:00”,然后开始计时。 二、实验电路及功能说明 1)单片机主控制模块 以AT89C51单片机为核心进行一系列控制。 2)时钟显示模块

用1602为LCD显示模块,把对应的引脚和最小系统 上的引脚相连,连接后用初始化程序对其进行简单 的功能测试。测试成功后即可为实验所用,如图: 3)时间调整电路 用4个功能键操作来设置当前时间,4个功能键接在 P1.0~P1.3引脚上。功能键K1~K4功能如下。K1— 进入设置现在的时间。K2—设置小时。K3—设置 分钟。K4—确认完成设置。如图: 三、实验程序流程图: 主程序:

时钟主程序流程子程序:

四、实验结果分析

实验结果及分析:单片机的晶振可以根据要求设定。 6MHZ为和现实时间显示相同。实验采用12MHZ晶振采用方式1定时,选取50ms采用20次中断达到一秒,采用查表方式控制LCD显示。当烧入程序后开始运行,根据初始值设定可以观察到显示的时间,这里为了更明显观察显示数据变化把起始值设为23:59:50 运行后显示 ,K1为进入现在设置时间,当按下 K1后显示,和实验要求相比较,实现了按下K1进入现在时间设置,按下K4确认完成时间设置的功能;不同之处: 当进入时间设置时在按下K1设置小时,再次按下K1是设置分钟。增加功能:进入时间设置并选择设置位置后K2键位数字增加功能,K3键为数字减小功

最新毕业设计:基于单片机的电子日历时钟

一课程设计题目:电子日历时钟 二实现的功能: 基本功能: (1)显示北京时间,并且能够校准时间; (2)程序使用汇编语言; (3)显示的时、分、秒之间以及年、月、日间以小数点分隔;(4)显示公历日期,并且能够校准日期; 发挥功能: (5)运动秒表; (6)闹钟功能; (7)自动整点报时。 三课程设计的目的: 课程标志性内容的设计理解和综合运用,对所学内容进行一次实操,学以致用。 四、设计方案说明 1、硬件部分 (1)采用6位LED数码管显示日期或者时间。 (2)显示器的驱动采用“动态扫描驱动”,且采用“一键多用”的设计方案,系统电路大为简化。使用小数点表示闹 钟设置状态; (3)电路连接使用PCB,使电路连接简洁美观

2、软件部分 (1)“时钟”基准时间由单片机内部的定时中断提供,考虑因素:定时时间是“秒”的整除数,且长短适宜。最长不 能超过16位定时器的最长定时时间;最短不能少于中断服 务程序的执行时间。基准时间越短,越有利于提高时钟的 运行精确度。基准时间定为0.05秒。 (2)用一个计数器对定时中断的次数进行计数,由基准时间为0.05秒知计数值为20即可实现实现“秒”定时,同理 进行“分”﹑“时”定时,以及“日”﹑“月”﹑“年” 定时。 (3)LED 数码管显示器采用“动态扫描驱动”考虑问题:驱动信号的维持时间必须大于“起辉时间”(电流大起辉时间 短),而驱动信号的间歇时间必须小于“余辉时间”(电流 大余辉时间长),但驱动电流大小受硬件电路能力和LED 数码管极限功耗的制约。 (4)动态扫描显示方式在更新显示内容时,考虑到因LED数码管余辉的存在可能会造成显示字符的模糊,所以新内容 写入显示器之前将所有的LED数码管熄灭。 (5)关于自动识别“月大﹑月小”和“平年﹑润年”问题的考虑 a)月大和月小 2月另外计算;

数显温度计实验报告

项目编号: 大学生课外开放实验校级普通项目 实验报告 立项时间: 项目名称:数显温度计的设计与制作 学生姓名: 指导教师: 学院: 完成时间:2014.5 设备与实验室管理处制

0. 引言 单片机技术作为计算机技术的一个分支,广泛地应用于工业控制,智能仪器仪表,机电一体化产品,家用电器等各个领域。“单片机原理与应用”在工科院校各专业中已作为一门重要的技术基础课而普遍开设。学生在课程设计,毕业设计,科研项目中会广泛应用到单片机知识,而且,进入社会后也会广泛接触到单片机的工程项目。鉴于此,提高“单片机原理及应用”课的教学效果,让学生参与课程设计实习甚为重要。单片机应用技术涉及的内容十分广泛,如何使学生在有限的时间内掌握单片机应用的基本原理及方法,是一个很有价值的教学项目。为此,我们进行了“单片机的学习与应用”方面的课程设计,锻炼学生的动脑动手以及协作能力。 单片机课程设计是针对模拟电子技术,数字逻辑电路,电路,单片机的原理及应用课程的要求,对我们进行综合性实践训练的实践学习环节,它包括选择课设任务、软件设计,硬件设计,调试和编写课设报告等实践内容。通过此次课程设计实现以下三个目标:第一,让学生初步掌握单片机课程的试验、设计方法,即学生根据设计要求和性能约束,查阅文献资料,收集、分析类似的相关题目,并通过元器件的组装调试等实践环节,使最终硬件电路达到题目要求的性能指标;第二,课程设计为后续的毕业设计打好基础,毕业设计是系统的工程设计实践,而课程设计的着眼点是让学生开始从理论学习的轨道上逐渐引向实际运用,从已学过的定性分析、定量计算的方法,逐步掌握工程设计的步骤和方法,了解科学实验的程序和实施方法。第三,培养学生勤于思考乐于动手的习惯,同时通过设计并制作单片机类产品,使学生能够自己不断地学习接受新知识(如在本课设题目中存在智能测温器件DS18B20,就是课堂环节中不曾提及的“新器件”),通过多人的合作解决现实中存在的问题,从而不断地增强学生在该方面的自信心及兴趣,也提高了学生的动手能力,对学生以后步入社会参加工作打下一定良好的实践基础。 1.设计意义 在日常生活及工农业生产中,经常要用到温度的检测及控制,传统的测温元件有热电偶和热电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,需要比较多的外部硬件支持。其缺点如下: ●硬件电路复杂; 2

电子日历时钟设计

目录 1题目设计的要求 (1) 2 系统硬件设计 (1) 2.1设计原理 (1) 2.2器件的功能与作用 (1) 2.2.1 MCS51单片机AT89C51 (1) 2.2.2 串行时钟日历片DS1302 (2) 2.2.3 液晶显示LCD1602 (3) 3 系统软件设计 (4) 3.1程序流程 (4) 3.2程序代码 (5) 4 系统仿真调试 (12) 4.1仿真原理图设计 (12) 4.2仿真运行过程 (12) 4.3仿真运行结果 (13) 5 总结 (13) 6 参考文献 (13)

1题目设计的要求 通过串行日历时钟芯片DS1302生成当前日期和是时间,通过IO口传输到AT89c52芯片中,然后再将AT89c52接收到的数据输出到LCD上。要求LCD上显示的日期和时间与当前系统时间保持一致。 2 系统硬件设计 2.1 设计原理 图3.1 电路原理图 2.2 器件的功能与作用 2.2.1 MCS51单片机AT89C51 XX AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件

采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。 AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 2.2.2 串行时钟日历片DS1302 系统的组成与工作原理: 系统由单片机AT89C52,串行日历时钟片DS1302,液晶显示模组LCD1602。 DS1302的CLOCK与AT89C52的P1.6相连,RST与P1.5相连,IO与P1.7相连。 LCD1602的D0~D7与AT89C51的P0.0~P.7相连,并接上拉电阻,RS与P2.0相连,RW与P2.1相连,E与P2.2相连。 DS1302是DALLAS公司拖出的涓流充电时钟芯片,内含有一个实时时钟/日历和31个季节静态RAM,通过简单地串行接口与单片机进行通信,实时时钟/日历电路提供秒、分、时、日、日期、月、年的信息,每月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM指示决定采用24小时或12小时格式,DS1302与单片机之间能简单地采用同步串行方式进行通信,仅需用到RES复位、I/O 数据线、SCLK串行时钟3个口线。对时钟、RAM的读/写,可以改用单字节方式或多达31个字节的字符组方式。DS1302工作时功耗很低,保持数据和时钟信息是功率小于1mW。DS1302广泛应用于电话传真、便携式仪器及电池供电的仪器仪表等产品领域中。 RT-1602 字符型液晶模块是以两行16个子的5*7点阵吐信来显示字符的液晶显示器。 DS1302有8个引脚: X1、X2:32.768kHz晶振介入引脚。 GND:地。 RST:复位引脚,低电平有效。 I/O:数据输入/输出引脚,具有三态功能。 SCLK:串行时钟输入引脚。 Vcc1:工作电源引脚。 Vcc2:备用电源引脚。 DS1302有一个控制寄存器,12个日历,时钟寄存器和31个RAM。 控制寄存器 控制寄存器用于存放DS1302的控制命令字,DS1302的RST引脚回到高电平后写入的第一个字就为控制命令。它用于对DS1302读写过程进行控制,它的格式如下:

数字式智能语音温度计设计

河南大学物理与电子学院开放实验室单片机设计报告 数字式智能语音温度计 设计人:开放实验室入室人员 - I -

目录 0 前言 (1) 1系统组成与功能 (1) 1.1 系统组成 (1) 1.1.1 STC89C52单片机 (1) 1.1.2 74LS138译码器芯片 (2) 1.1.3 DS18B20测温传感器 (3) 1.1.4 四位一体七段数码管 (3) 1.1.5 WT588D语音芯片 (4) 1.2 系统功能 (6) 2系统原理 (5) 2.1系统仿真图 (6) 2.2 实物照片 (6) 3程序流程图 (7) 4具体程序代码 (8) 5结论 (11) 6 扩展部分设计心得 (12) 参考文献 (13) - II -

河南大学·物理与电子学院·开放实验室·单片机设计报告 - 1 - 数字式智能语音温度计 0 前言 LED 数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp 来表示。当数码管特定的段加上电压后,这些特定的段就会发亮,以形成我们眼睛看到的字样了。如:显示一个“2”字,那么应当是a 亮b 亮g 亮e 亮d 亮f 不亮c 不亮dp 不亮。LED 数码管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。小尺寸数码管的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管的管压降为1.8V 左右,电流不超过30mA 。发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。常用LED 数码管显示的数字和字符是0、1、2、3、4、5、6、7、8、9、A 、B 、C 、D 、E 、F 。 在本学期的单片机在项目设计中,我们两人一组共同讨论并设计出了一种基于单片机控制的LED 数码智能语音温度计,并最终在老师指导下完成了实际的成品,调试后能实现了预期的功能。同时我们在实现其基本功能的基础上进行了一定程度的功能扩展。 1系统组成与功能 1.1 系统组成 本系统主要有STC89C52单片机、按键、74LS138译码器芯片、DS18B20测温传感器、四位一体七段数码管、WT588D 语音芯片等元件组成。 1.1.1 STC89C52单片机 STC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash ,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k 字节Flash ,512字节RAM , 32 位I/O 口线,看门狗定时器,内置4KB

单片机课程设计 电子日历时钟显示器设计

目录 1.题目设计要求 (1) 2.开发平台简介 (1) 3.系统硬件设计 (2) 3.1设计原理 (2) 3.2器件的功能与作用 (2) 3.2.1 MCS51单片机AT89C51 (2) 3.2.2复位电路 (3) 3.2.3晶振电路 (4) 3.2.4 DS1302时钟模块 (4) 3.2.5 引脚功能及结构 (4) 3.2.6 DS1302的控制字节 (5) 3.2.7 数据输入输出(I/O) (5) 3.2.8 DS1302的寄存器 (6) 3.2.9 液晶显示LCD1602 (6) 3.2.10 串行时钟日历片DS1302 (8) 4.系统软件设计 (10) 4.1程序流程 (10) 4.2程序代码 (10) 5.系统仿真调试 (20) 5.1仿真原理图设计 (20) 5.2仿真运行过程 (21) 5.3仿真运行结果 (21) 6.总结 (21) 7.参考文献 (22)

1.题目设计要求 通过串行日历时钟芯片DS1302生成当前日期和是时间,通过IO口传输到AT89c52芯片中,然后再将AT89c52接收到的数据输出到LCD上。要求LCD上显示的日期和时间与当前系统时间保持一致。 2.开发平台简介 2.1系统仿真平台Proteus Proteus软件是由英国Labcenter Electronics公司开发的EDA工具软件,已有近20年的历史,在全球得到了广泛应用。Proteus软件的功能强大,它集电路设计、制版及仿真等多种功能于一身,不仅能够对电工、电子技术学科涉及的电路进行设计,还能够对微处理器进行设计和仿真,并且功能齐全,界面多彩。和我们手头其他的电路设计仿真软件,他最大的不同即它的功能不是单一的。另外,它独特的单片机仿真功能是任何其他仿真软件都不具备的。 2.2软件开发平台Keil C Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。Keil C51生成的目标代码效率之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

(完整版)电子时钟(LCD显示)

电气工程及自动化专业 单片机原理及应用课程设计报告 姓名:XXXXXX 学号:XXXXXXX 专业班级:XXXXXX 题目:电子时钟(LCD显示) 电气与电子工程学院 二〇一四年十二月三十日

目录 一、设计目的 (2) 二、设计任务和要求 (2) 三、设计原理分析 (2) 四、硬件资源及其分配 (3) 五、硬件图 (4) 六、程序框图 (5) 七、程序 (7) 八、调试运行 (13) 九、仿真截图 (13) 十、设计心得体会 (14)

一、设计目的 1、设计要求以AT89C51单片机为核心的时钟,在LCD 显示器上显示当前的时间。 2、 使用字符型LCD 显示器显示当前时间。显示格式为“时时:分分:秒秒”。 3、用4个功能键操作来设置当前时间。 4、熟悉掌握proteus 编成软件以及keil 软件的使用 二、设计任务与要求 本设计以AT89C51单片机为核心,通过时钟程序的编写,并在LCD 显示器上显示出来。该编程的核心在于定时器中断及循环往复判断是否有按键操作,并对每个按键的操作在LCD 显示器上作出相应的反应。由于LCD 显示器每八位对应一个字符,故把秒、分、时的个位和十位分开表示。 该课题中有四个控制开关KM1、KM2、KM3、KM4分别控制时、分、秒、确定的调整,时间按递增的方式调整,每点一次按钮则相应的时间个位加以,且时间调整不干扰其他为调整时间的显示。 三、设计原理分析 1、按照系统的设计功能要求,本时钟系统的设计必须采用单片机软件系统实现,用单片机的自动控制能力配合按键控制,来控制时钟的调整及显示。 图一 系统总原理图

2、软件主要完成功能 (1)显示时间程序 用软件调节时间,通过程序的调节,最后用LED现实时钟 (2)调节时间程序 按键调节时间,能实现时、分的调节 3、软件设计主要流程 时间控制程序 时间控制程序,用中断准确的控制时间,采用60进制,60秒为一分钟,60分钟为一个小时,全天设置为24小时。 四、硬件资源及原理图 AT89C51芯片 AT89C51 是美国ATMEL 公司生产的8 位Flash ROM 单片机。其最突出的优点是片内ROM 为Flash ROM,可擦写1000 次以上,应用并不复杂的通用ROM 写入器就能方便的擦写,读取也很方便,价格低廉,具有片程序ROM 二级保密系统。因此可灵活应用于各种控制领域。 AT89C51 包含以下一些功能部件: 1. 一个8 位CPU ; 2. 一个片内振荡器和时钟电路; 3. 4KB Flash ROM ; 4. 128B 内RAM; 5. 可寻址64KB 的外ROM 和外RAM 控制电路; 6. 两个16 位定时/计数器; 7. 21 个特殊功能寄存器; 8. 4 个8 位并行I/O 口; 9. 一个可编程全双工串行口; 10. 5 个中断源,可设置成2 个优先级。 AT89C51 单片机一般采用双列直插DIP 封装,共40 个引脚,图2-1 为其引脚排列图。40 个引脚大致可分为4 类:电源、时钟、控制各I/O 引脚

相关文档
最新文档