徐州工程学院单片机原理及应用课程设计
2 系统整体方案设计
2.1设计目标
本设计采用STC89C52单片机为主控芯片,结合外围电路矩阵键盘、液晶显示器LCD1602等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,组成的温度报警器系统,能够实现:
1. DS18B20不断采集周围环境温度; 2. 单片机处理温度的数据显示在DS18B20; 3. 用户设定温度报警的上限和下限; 系统整体设计框图如图2-1所示:
时钟振荡 报警模块 单片机复位 LCD1062主 显示 控 制 温 器度传感器图2-1 系统整体设计框图
2.2系统的基本方案
2.2.1 系统方案选择
采用单总线数字温度传感器DS18B20测量温度,直接输出数字信号。便于单片机处理及控制,节省硬件电路。且该芯片的物理化学性很稳定,此元件线形性能好,在0—100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器AT89C51构成的温度装置,它直接输出温度的数字信号到微控制器。每只DS18B20具有一个独有的不可修改的64位序列号,根据序列号可
2
徐州工程学院单片机原理及应用课程设计
访问不同的器件。这样一条总线上可挂接多个DS18B20传感器,实现多点温度测量,轻松的组建传感网络。
2.2.2 各模块方案选择
2.2.2.1 单片机的选择
采用STC89C52单片机,它是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 2.2.2.2 温度传感器的选择
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下:
●独特的单线接口仅需要一个端口引脚进行通信;
●多个DS18B20可以并联在惟一的三线上,实现多点组网功能; ●无须外部器件;
●可通过数据线供电,电压范围为3.0~5.5V; ●零待机功耗; ●温度以9或12位数字; ●用户可定义报警设置;
●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; ●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作; DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH和TL,高速暂存器。DS18B20的管脚排列如图3.5所示。64位光刻ROM是出厂前被光刻好的,它可以看作是该DS18B20的地址序列号。不同的器件地址序列号不同。 2.2.2.3 显示模块的选择
液晶显示采用LCD 液晶显示,显示的位数多,由单片机驱动。此方案有美观、显示清晰多样的优点。 2.2.2.4 报警模块的选择
采用有源蜂鸣器来报警(需要一定的频率才可以驱动),可以发出声音报警且降低了成本。
2.3主要元器件介绍
2.3.1 STC89C52的简介
3
徐州工程学院单片机原理及应用课程设计
STC89C52是一种带8K字节闪烁可编程可檫除只读存储器的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 STC89C52具体介绍如下: ① 主电源引脚(2根)
VCC(Pin40):电源输入,接+5V电源 GND(Pin20):接地线 ②外接晶振引脚(2根)
XTAL1(Pin19):片内振荡电路的输入端 XTAL2(Pin20):片内振荡电路的输出端 ③控制引脚(4根)
RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。 ALE/PROG(Pin30):地址锁存允许信号 PSEN(Pin29):外部存储器读选通信号
EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。 ④可编程输入/输出引脚(32根)
STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
P0口(P39~P32):8位双向I/O口线,名称为P0.0~P0.7 P1口(P1~P8):8位准双向I/O口线,名称为P1.0~P1.7 P2口(P21~P28):8位准双向I/O口线,名称为P2.0~P2.7 P3口(P10~P17):8位准双向I/O口线,名称为P3.0~P3.7
2.3.2 LCD1602的简介
本设计所使用的是不带字库的LCD1602液晶显示屏,因为其可以在proteus中仿真,便于设计 ,其引脚表如2-3所示。
表2-3 12864引脚
4
徐州工程学院单片机原理及应用课程设计
3 系统的硬件设计与实现
3.1 系统硬件概述
本系统是通过键盘扫描模块,既能够显示数据并且还能修改密码,开锁密码,具有强大的功能,通过键盘扫描模块输入到单片机控制系统STC89C52 中。然后通过LCD显示模块来显示我们所要有数据,还有一个就是报警模块,当输入的密码相同时,则显示模块的灯点亮,当输入的密码是错误时,重新输入,三次出错蜂鸣器响,发出报警。为了达到设定的功能,本装置键盘扫描模块、单片机控制模块、LCD显示模块,报警模块等4 模块组成。
3.2主要单元电路的设计
3.2.1温度采集模块电路的设计 3.2.2单片机控制模块电路的设计
单片机作为本装置的核心器件,在系统中起到控制报警、以及LCD显示的作用,其中采用的是STC89C52是标准的40 引脚双列直插式集成电路芯片,有4 个八位的并行双向I/O 端口,分别记作P0、P1、P2、P3。第20 引脚为接地端;第40引脚为电源端;第31 引脚需要接高电位使单片机选用内部程序存储器;第18、19 脚之间接上一个12MHz 的晶振为单片机提供时钟信号;第9 脚为复位脚,当其接高电位时,单片机停止工作。P1 口接LCD控制引脚,P0 口连接一LCD1602显示屏数据输入端,P3 口与12 个阵列式按键相连实现对键盘的扫描。如图3-2所示。
5
徐州工程学院单片机原理及应用课程设计
图3-2主控电路图
3.2.3报警模块电路的设计
本模块的作用是当开锁按钮被按下时,如果LCD当前显示值相同,则红灯点亮,当输入的数与密码不同时,则蜂鸣器立刻发出声音报警。如图3-3所示。
图3-3 报警电路图
3.2 LCD1602显示模块电路的设计
本模块主要用于显示指示用户密码输入要求。根据管脚要求连接电路,P0口接上拉电阻,并与LCD数据输入端口连接,控制管脚与P1口连接。如图3-4所示。
6