自动售货机系统设计(3)

2019-04-09 12:07

江苏理工学院毕业设计说明书(论文)

(10) 看门狗定时器; (11) 双数据指针; (12) 掉电标识符。 2、AT89S52引脚说明: VCC:电源端。 GND:接地。

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

P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1 输出缓冲器能驱动4个TTL逻辑电平。

此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。在flash编程和校验时,P1口接收低8位的地址字节。

引脚号第二功能:

P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出; P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制); P1.5 MOSI(在系统编程用); P1.6 MISO(在系统编程用); P1.7 SCK(在系统编程用);

P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。在访问外部程序存储器或用16位地址读取外部数据存储器时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用 8位地址访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。

第 11 页 共 39 页

江苏理工学院毕业设计说明书(论文)

端口引脚第二功能: P3.0 RXD(串行输入口); P3.1 TXD(串行输出口); P3.2 INTO(外中断0); P3.3 INT1(外中断1); P3.4 TO(定时/计数器0); P3.5 T1(定时/计数器1); P3.6 WR(外部数据存储器写选通); P3.7 RD(外部数据存储器读选通);

此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。

并不是所有的地址都被定义了,片上没有被定义的地址是不能用的。读取这些地址会得到一个随机的数据,这个数据写入程序会无效,复位以后,这些都会被置为“0”。 RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需要注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。

第 12 页 共 39 页

江苏理工学院毕业设计说明书(论文)

XTAL2:振荡器反相放大器的输出端。 2.1.2单片机最小系统设计

单片机最小系统,或者称为最小应用系统,对于AT89S52单片机来说,最小系统一般应该包括:单片机模块、时钟模块及复位模块。

1、时钟模块。时钟电路就像是单片机的心脏,没有时钟电路来驱动单片机,单片机无法执行程序,它为单片机产生时钟信号。原理图如图2-2所示:

图2-2时钟电路图

图2-2中,利用芯片内部振荡电路,在XTAL1,XTAL2的引脚上外接定时元件,内部振荡器便能产生自激振荡。本次设计选择12MHz的晶体,每个机器周期为1us。电容一般选择20PF,本系统电容选择22pF。电容C1,C2的大小对振荡频率有微小影响,可起频率微调作用。

2、复位模块。无论用户使用哪种类型的单片机,总要涉及到单片机复位电路的设计。而单片机复位电路设计的好坏,直接影响到整个系统工作的可靠性。许多用户在设计完单片机系统,并在实验室调试成功后,在现场却出现了“死机”、“程序走飞”等现象,这主要是单片机的复位电路设计不可靠引起的。

单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期以上,则CPU就可以响应并将系统复位。复位原理图如图2-3所示:

第 13 页 共 39 页

江苏理工学院毕业设计说明书(论文)

图2-3复位电路

图2-3中,上电后,VCC对电容C1充电,C1端的电流达到最大,此时,电容C1相当于短路,复位端为高电平,单片机自动复位。复位要求RST上加高电平的时间为2个机器周期以上,本系统中晶振为12MHz,则每个机器周期为1us。当电容C1两端的电压达到电源电压时,流过C1的电流变为0,此时复位端降为低电平,单片机开始正常工作。复位时间为:

??R2?C1 (2-1)

由公式(2-1)可知?为1ms,值远大于2us,满足复位要求。

当按下按键S0后,RST直接通过R2和VCC相连,此时复位端RST为高电平,电容C1短路放电,放电完成之后,系统开始正常工作。只要复位端持续高电平两个机器周期以上,就可以保证可靠复位。

2.2按键输入模块

2.2.1 4×4矩阵键盘的工作原理

在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。 在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比直接将端口线用于

第 14 页 共 39 页

江苏理工学院毕业设计说明书(论文)

键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。

矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。如图2-4为矩阵键盘电路图,列线接P1.4-P1.7,行线接P1.0-P1.3。

图2-4 矩阵键盘电路图

124578*0369#ABCD

图2-5 按键排列

图2-4中,P1.4-P1.7为 4×4 键盘的列扫描线,P1.0-P1.3 为 4×4 键盘的行扫描线。行列式键盘的操作一般完成两个任务,一是检测是否有键被按下,二是识别被

第 15 页 共 39 页


自动售货机系统设计(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:六年级上册语文导学案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: