(鏈€鏂扮増)鍩轰簬鍗曠墖鏈虹殑鐏伨鎶ヨ绯荤粺鐨勮璁′笌瀹炵幇姣曚笟璁捐璁烘枃 - 鐧惧害鏂囧簱 下载本文

第3章 系统硬件设计

为了使本设计具有更加方便和灵活性,我们对系统的硬件做了精心设计。电路系统硬件电路主要分为温度电路、键盘电路、烟雾AD转换电路、声音报警电路、显示电路五个部分。

3.1 单片机最小系统电路设计

3.1.1 单片机简介

AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能:8k字节Flash,256字节RAM, 32位IO口线,看门狗定时器,2个数据指针,三个16位定时器计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外AT89S52可降至0赫兹静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。该器件采用Atmel公司的高密度非易失性存储技术生产,其指令与工业标准的80C51指令集兼容。片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。它的应用范围广,可用于解决复杂的控制问题,且成本较低[10]。

3.1.2 单片机管脚说明

VCC:供电电压。 GND:接地。

P0口:P0口为一个8位漏极开路双向IO口,每脚可吸收8TTL门流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向IO口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向IO口,P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。当P2口被写“1”时,其管脚被内部上拉电阻拉高,此时可用作输入口。P2口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。在访问外部程序存储器或16位的外部数据存储器时,P2口送出高8位地址,在访问8位地址的外部数据存储器时,P2口引脚上的内容(就是专用寄存器(SFR)区中P2寄存器的内容),在整个访问期间不会改变。在对Flash编程和程序校验期间,P2口也接收高位地址或一些控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向IO口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。P3口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。P3口还用于一些复用功能,在对Flash编程和程序校验期间,P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。看门狗定时器(Watchdog)溢出后,该引脚会保持98个振荡周期的高电平。在SFR AUXR(地址8EH)寄存器中的DISRTO位可以用于屏蔽这种功能。DISRTO位的默认状态,是复位高电平输出功能使能。

ALEPROG:地址锁存允许信号。当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。一般情况下,ALE是振荡器频率的6分频信号,可用于外部定时或时钟。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部

数据存储器时,将跳过一个ALE脉冲。在需要时,可以把地址8EH中的SFR寄存器的0位置为“1”, 从而屏蔽ALE的工作;此时,ALE只有在执行MOVX、MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

PSEN:程序存储器允许信号。在由外部程序存储器取指期间,每个机器周期两次PSEN有效。它用于读外部程序存储器。在对外部数据存储器的每次存取中,PSEN的2次激活会被跳过。

EAVPP:外部存取允许信号。当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:振荡器的反相放大器输出[11]。

3.1.3 单片机的最小系统

AT89S52单片机为40引脚双列直插芯片。MCS-51单片机共有4个8位的IO口(P0、P1、P2、P3),每一条IO线都能独立地作输出或输入[12]。

单片机的最小系统如下图3-1所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。

第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端。晶振采用12MHZ。由于单片机只访问片内Flash ROM并执行内部程序存储器中的指令,因此单片机的31脚接高电平VCC。单片机最小系统如图3-1所示。

CR310KS1S2R1200VCCU11234567891011P3.212P3.313P3.414P3.515P3.616P3.7171819Y12012MHZP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RETP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7XTAL2XTAL1GNDAT89C51VCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EAALEPEENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0VCCP0.04039383736353433323130292827262524232221P0.0P0.2P0.4P0.6R8220S3+C322ufS4Q1901S5R21KC130PP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P2.0P2.1P2.2C251051051030P VCC图3-1 单片机最小系统 VCCR75.6kLS3.2 DS18B20测温电路 JP11234adc08328765P3.4P3.5P3.63.2.1 DS18B20传感器简介 Q59013.7P2.7P2.6P2.5P2.4P2.3510510510510510本设计采用DS18B20温度传感器,该传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直GNDDQCVCDS2DS1820接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。 VCC123R233.2.2 DS18B20管脚及寄存器说明 (1) DS18B20的引脚排列 GND:地信号 P3.34.7KDQ:数据输入输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也2可以向器件提供电源。 34VDD:可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。 (2) DS18B20的性能特点