当前位置:文档之家› 基于STC89C52单片机最小系统的设计

基于STC89C52单片机最小系统的设计

基于STC89C52单片机最小系统的设计

1 设计内容及要求

设计题目:基于STC89C52单片机最小系统的设计及制作。

设计要求:输入信号为传感器、电压、电流、开关等形式,单片机型号可以自己选择(51,128,430等),输出控制信号为模拟电压或者数字信号,控制对象可以是电机(直流电机,步进电机)、开关、显示器等。(注:可以采用单片机、传感器电路模块以及集成电路芯片制作。)

使用器材:感光板及常用PCB制版器材、常用电子装配工具、万用表、示波器及电子元器件(详见附录)。

2 STC89C52单片机

2.1 STC89C52单片机简介

单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。用专业语言讲,单片机就是在一块硅片上集成了微处理器、存储器及各种输入/输出接口的芯片。

2.2 单片机的特点

(1)高集成度,体积小,高可靠性

单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然是最小的。芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪声性能优于一般通用的CPU。单片机程序指令,常数及表格等固体化在ROM中不易破坏,许多信号通道均在一个芯片内,故可靠性高。

(2)控制功能强

为了满足对控制对象的要求,单片机的指令系统均有极丰富的条件:分支转移能力、I/O口的逻辑操作机位处理能力,非常适用于专门的控制功能。

(3)低电压,低功耗,便于生产携带

为了便于广泛使用于便携式系统,许多单片机内的工作电压仅为 1.8V~3.6V,工作电流仅为数百微安。

(4)易扩展

片内具有计算机正常运行所需的部件。芯片外部有许多供扩展用的三总线及

并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。

(5)优异的性能价格比

单片机的性能高。为提高速度和运行效率,单片机开始使用RISC流水线和DSP等技术。单片机的寻址能力也突破了64KB的限制,有的已达1MB,甚至16MB;片内的ROM容量可达62MB,RAM容量则可达2MB。由于单片机的广泛使用,因而销量极大,各大公司的商业竞争激烈,使其价格十分低廉,性能价格比极高。

2.3 单片机的内部结构

一个基本的MCS-52单片机通常包括:中央处理器、ROM、RAM、定时/计数器和I/O口等各功能部件,各个功能由内部的总线连接起来,从而实现数据通信。其内部框图如图2-1所示。

图2-1 MCS单片机结构图

2.4 单片机的引脚功能

常见的52系列单片机中一般采用双列直插(DIP)封装,共40个引脚。

STC89C52共有40个引脚,采用的是双列直插(DIP)封装,如图2-2所示。其中的40个引脚大致可以分为4类:电源、时钟、控制和I/O引脚。

图2-2 STC89C52引脚分布图

2.4.1 电源

(1)VCC:芯片电源端,一般为+5V;

(2)GND:接到端。

2.4.2 时钟

(1)XTAL1:晶体振荡电路的反相输入端;

(2)XTAL2:晶体振荡电路的输出端。

2.4.3 控制线

MCS-51单片机共有4根控制线,其中3根是复用线,具有两种功能。

_____________:地址所存允许/编程脉冲;

(1)ALE/PROG

(2)PSEN:外部ROM读选通信号;

(3)RST:复位引脚;

(4)EA:内外ROM选择/EPROM编程电源

2.4.4 I/O引脚

MCS-51单片机共有4个8位并行I/O端口,共32个可编程I/O引脚。

(1)P0.0~P0.7:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个个TTL逻辑电平。对P0端口写“1”时,引脚端用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在Flash编程时,P0口也用来接收指令字

节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。

(2)P1.0~P1.7:P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚端由于内部电阻的原因,将输出电(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如表2-1所示。在Flash编程和校验时,P1口接收低8位地址字节。

表2-1P1口引脚端第二功能

(3)P2.0~P2.7:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

在Flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

(4)P3.0~P3.7:P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

P3口亦作为STC89C52特殊功能(第二功能)使用,如表2-2所示。

在Flash编程和校验时,P3口也接收一些控制信号。

P3.3

INT(外部中断1)

1

P3.4T0(定时器0外部输入)

P3.5T1(定时器1外部输入)

P3.6

WR(外部数据存储器写选通)

P3.7

RD(外部数据存储器写选通)

3 STC89C52构成的最小系统

单片机最小系统包括复位电路、时钟电路、电源电路、外围电路,其外围电路包括数码显示、液晶显示、键盘检测、串口测试等,如图3-1所示。

图3-1单片机外围电路

3.1 单片机周边电路

STC89C52的外围电路如图3-2所示。

时钟电路采用频率是12MHz的石英晶振。在复位电路中当REST为低电平时,系统处于工作状态,当REST为高电平时系统处于复位或下载程序状态。STC89C52具有ISP在线编程功能,在程序下载过程中REST引脚被拉高,下载完毕后自动拉低进入运行状态,用户也可以通过按下S17进行手动复位。为方便以后的学习,最小系统将32个I/O引脚全部引出。

图3-2 单片机外围电路

3.2 供电部分

单片机供电部分的原理图如图3-3所示。

系统供电采用标准的3.5mmDC接口输入,通过线性稳压芯片7805进行稳压处理以后,再供给电路的其他部分。为了方便起见,系统还将输入电源用排针引出,方便用杜拉线进行连接(“2脚”为正极)。电路中接入电源指示LED,R2为LED的限流电阻,SW1为电源开关。

图3-3最小系统供电部分原理图

3.3 复位电路

单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值。

单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位。当复位电平持续两个机器周期以上时复位有效。复位电平的持续时间必须大于单片机的两个机器周期。具体数值可以由RC电路计算出时间常数。

复位电路由按键复位和上电复位两部分组成。

(1)上电复位:STC89系列单片及为高电平复位,通常在复位引脚RESET 上连接一个电容到VCC,再连接一个电阻到GND,由此形成一个RC充放电回路保证单片机在上电时RESET脚上有足够时间的高电平进行复位,随后回归到低电平进入正常工作状态,这个电阻和电容的典型值为10K和10uF。

(2)按键复位:按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。

复位电路如图3-4所示。

图3-4 复位电路

3.4 串行口部分

RS-232是串口的接口标准,为单端输入/输出,要实现与单片机的通信,需将计算机的RS-232电平与单片机的TTL电平相互转换。采用MAX232电源电压转换芯片,可以把TTL电平从0V和5V转换到3V~15V或-3V~ -15V之间。所以采用此芯片接口的串行通信系统只需要单一的+5V电源就可以了。

数据传输过程:MAX232的10脚T2IN接单片机的TXD端P3.1,TTLdiaper 从单片机的TXD端发出,经过MAX232转换为RS-232电平后从MAX232的7脚T2OUT发出,再经过交叉串口线连接到计算机RXD端,计算机手段数据。PC机发送数据时从PC机串口的TXD端发出数据,再逆向流向单片机的RXD 端P3.0接收数据。MAX232引脚如图3-5所示。

串行口部分电路图如图3-6所示。

图3-5 MAX232引脚分布图

图3-6 串行口部分电路原理图

3.5 按键部分

按键部分电路采用4*4矩阵式键盘,在修改时钟或设置闹钟时间可以直接从键盘输入,方便、快捷。而独立式按键需设置过多按键,将会占用较多I/O口,而且会给布线带来不便,因此,此方案适用于按键较少的情况。且由于按键较少,在修改时间或设置闹铃时间时就不能直接输入,只能通过加或减完成,较为麻烦。

单片机检测按键的依据是与按键对应的I/O口是否为低电平。检测时,先给一列送低电平,其余几列全为高电平,然后立即轮流检测一次各行是否有低电平,若检测到某一行为低电平就可以确认是按下哪一行哪一列的按键。

按键部分原理图如图3-7所示。

图3-7 按键部分电路原理图

3.6 液晶显示部分

液晶显示器的主要原理是以电流刺激液晶分子产生点、线、面并配合北部灯管构成画面。各种型号的液晶通常是按照显示字符的行数或液晶点阵的行、列数来命名的,液晶体积小、功耗低、显示操作简单,但应注意考虑其能承受的温度范围。1602液晶每行显示16个字符,一共可以显示两行,由16列、2行组成。

液晶显示的电路原理图如图3-8所示。

图3-8 液晶显示电路原理图

3.7 时钟振荡电路部分

时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。

STC89C52使用11.0592MHz的晶体振荡器作为振荡源,由于单片机内部带有

振荡电路。所以外部只要连接一个晶振和两个电容即可,电容容量一般在15pF 至50pF之间。时钟振荡电路如图3-9所示。

图3-9 时钟振荡电路原理图

MCS-51单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。

图3-10为DS1302实时时钟电路原理图。

图3-10 DS1302实时时钟原理图

3.8 温度检测部分

温度检测部分选用的是DS18B20传感器,其电路原理图如图3-11所示。

图3-11温度检测电路

相关主题
文本预览
相关文档 最新文档