自动加料机控制系统的制作方法_3

文档序号:9879535阅读:来源:国知局
73]如有必要,可通过对特殊功能寄存器(SFR)区中的8H1单元的DO位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令ALE才会被激活,此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。
[0074].:程序存储允许()输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲,在此期间,当访问外部数据存储器,这两次有效的信号不出现。
[0075].EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH), EA端必须保持低电平(接地)。需要注意的是:如果加密位LBl被编程,复位时内部会锁存EA端状态。
[0076]如EA端为高电平(接Vcc端),CPU则执行内部会锁存EA端状态。
[0077]Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
[0078].XTALl:振荡器反相放大器的及内部时钟发生器的输入端。
[0079].XTAL2:振荡器3放大器的输出端。
[0080]3.2.3时钟振荡器
AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器:
外接石英晶体(或陶瓷振荡器)及电容Cl、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容Cl、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低,振荡器工作的稳定性,起振的难易程序及温度稳定性,如果使用石英晶体,则推荐电容使用30pF 10pF,而如使用陶瓷振荡器建议选择40pF 1F0
[0081]用户也可以采用外部时钟,采用时钟的电路如发明。在这种情况下,外部时钟脉冲接到XTALl端,即内部时钟发生器的输入端,XTAL2则悬空。
[0082]由于外部时钟信号是通过一个2分钟触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的AT89C51有两种可用软件编程的省电模式,它们是空闲模式和掉点工作模式。这两种方式是控制专用寄存器PCON (即电源控制寄存器)中的H) (PC0N.1)和IDL(PC0N.0)位来实现的。ro是掉电模式,当ro=i时,激活掉电工作模式,单片机模式,即ro和1L同时为I,则先激活掉电模式。
[0083]在空闲工作模式状态,CPU保持睡眠状态而所有片内的外设保持激活状态,这种方式由软件产生。此时,片内RAM和所有特殊功能寄存器的内容保持不变。空闲模式可由任何允许的中断请求或硬件复位终止。
[0084]终止空闲工作模式的方法有两种,其一是任何一条被允许中断的事件被激活,IDL(PC0N.0)被硬件清除,即刻终止空闲工作模式。程序会首先响应中断,进入中断服务程序,执行完中断服务程序并紧随RETI (中断返回)指令后,下一条要执行的指令就是使单片机进入空闲模式那条指令后面的一条指令。
[0085]其二是通过硬件复位也可将空闲工作模式终止。需要注意的是,当有硬件复位来终止空闲工作模式时,CPU通常是从激活空闲模式那条指令的下一条指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期(24个时钟周期)有效,在这种情况下,内部禁止CPU访问片内RAM,而允许访问其它端口。为了避免可能对端口产生意外写入,激活空闲模式的那条指令后一条指令不应是一条对端口或外部存储器的写入指令。
[0086]掉电模式
在掉点模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但不改变RAM中的内容,在VCC恢复到正常电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定工作。
[0087]模式程序存储器 ALE/PSEN PO Pl P2 P3
空闲模式内部 I I 数据数据数据数据
空闲模式外部 I I 浮空数据地址数据
掉电模式内部 O O 数据数据数据数据
掉电模式外部 O O 浮空数据数据数据
空闲和掉电模式外部引脚状态程序存储器的加密
AT89C51可使用对芯片上的3个加密位LB1、LB2、LB3进行编程(P)或不编程(U)来得到下表所示的功能:
加密位保护功能表程序加密位保护类型
LBl LB2 LB3IUUU 没有程序保护功能2PU
U 禁止从外部程序存储器中执行MOVC指令读取内部程序存储器的内容
3P P U 除上表功能外,还禁止程序校验
4P P P 除以上功能外,同时禁止外部执行
当加密位LBl被编程时,在复位期间,EA端的逻辑电平被采样并锁存,如果单片机上电后一直没有复位,则锁存起的初始值是一个随机数,且这个随机数会一直保存到真正复位为止,为使单片机能正常工作,被锁存的EA电平必须与该引脚当前的逻辑电平一致。此外,加密位只能通过整片擦除的方法清除。
[0088]Flash闪速存储器的编程
AT89C51单片机内部有4K字节的Flash PER0M,这个Flash存储阵列出厂时已处于擦除状态(即所有存储单元的内容均为FFH),用户随时可对其进行编程。编程接口可接收高电压(+12V)或低电压(Vcc)的允许编程信号。低电压编程模式适合于用户在线编程系统,而高电压编程模式可与通用EPROM编程器兼容。
[0089]AT89C51单片机中,有些属于低电压编程方式,而有些则是高电压编程方式。用户可从芯片上的型号和读取芯片内的签名字节获得该信息。AT89C51的程序存储器列阵采用字节写入方式编程的,每次写入一个字节,要对整个芯片内的PEROM程序存储器写入一个非空字节,必须使用擦除的方式将整个存储器的内容清楚。
[0090]编程方法编程前,先设置好地址,数据及控制信号,编程单元的地址加在Pl 口和P2 口的P2.0—P2.3(11位地址范围为OOOOH — OFFFH),数据从PO 口输入,引脚P2.6、P2.7和P3.6、P3.7的电平,PSEN为低电平,RST保持高电平,EA/Vpp引脚是编程电源的输入端,按要求加上编程电压,ALE/PROG引脚输入编程脉冲(负脉冲)。编程时,可采用4一20MHz的时钟振荡器,AT89C51编程方法如下:
1.在地址线上加上要编程单元的地址信号。
[0091]2.在数据线上加上要写入的数据字节。
[0092]3.激活相应的控制信号。
[0093]4.在高电压编程方式时,将/EA/Vpp端加上+12V编程电压。
[0094]5.每对Flash存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/PROG编程脉冲。
[0095]改变编程单元的地址和写入的数据,重复I一5步骤,直到全部文件编程结束。
[0096]每个字节写入周期是自身定时的,通常约为1.5ms 数据查询
AT89C51单片机用数据查询方式来检测一个写周期是否结束,在一个写周期中,如需读取最后写入的那个字节,则读出的数据的最高位(P0.7)是原来写入字节最高的反码,写周期完成后,有效的数据就会出现在所有输出端上,此时,可进入下一个字节的写周期,写周期开始后,可在任意时刻进行数据查询。
[0097]Ready/Busy:字节编程的进度可通过RDY/BSY输出信号监测,编程期间,ALE变成高电平“H”后P3.4端电平被拉低,表示正在编程状态。编程完成后。P3.4变为高电平表示准备就绪状态。
[0098]程序校验及芯片擦除
如果加密位LB1、LB2没有进行编程,则代码数据可通过地址和数据线读回原编写的数据。采用下发明电路。程序存储器的地址由Pl和P2 口的P2.0-P2.3输入,数据有PO 口读出,P2.6、P2.7和P3.6、P3.7的控制信号保持低电平,ALE、和RST保持高电平。校验时PO 口须接上1K左右的上拉电阻。
[0099]加密位不可直接校验,加密位的校验可通过对存储器的校验和写入状态来验证。
[0100]利用控制信号的正确组合并保持ALE/引脚1ms的低电平脉冲宽度即可将PEROM阵列(4k字节)和三个加密位整片擦除,代码阵列在片擦除操作中将任何非空单元写入“ I ”,这步骤需再编程之前进行。
[0101]读片内签名字节及编程接口
AT89C51单片机内有3个签名字节,地址为030H、031H和032H。用于声明该器件的厂商、型号和编程电压。读签名字节的过程和单元030H、031H和032H的正常校验相仿,只需将P3.6、P3.7保持低电平,返回值意义如下:
(030H) =IEH声明产品由ATMEL公式制造。
[0102](031H) =51H 声明为 AT89C51 单片机。
[0103](032H)=FFH声明为12V编程电压。
[0104](032H)=05H声明为5V编程电压。
[0105]编程接口:采用控制信号的正确组合可对Flash闪速存储阵裂中的每一代码字节进行写入和存储器的整片擦除,写操作周期是自身定时的,初始化后它将自动定时到操作完成。
[0106]AT89C51的极限参数:
极限参数:工作温度..................-550C to+125°C
储藏温度..................-65 0C to+150。。
任一引脚对地电压.........-1.0Vto+7.0V
最高工作电压...........................6.6V
直流输出电流........................15.0mA
显示电路
在单片机应用系统中,如果需要显示的内容只有数码和某些字母,使用LED数码管是一种较好的选择。LED数码管显示清晰、成本低廉、配置灵活,与单片机接口简单易行。LED数码管是由发光二极管作为显示字段的数码型显示器件,其中七只发光二极管分别对应a?g笔端构成“日”字形,另一只发光二极管Dp作为小数点。因此这种LED显示器称为七段数码管或八段数码管。
[0107]LED数码管按电路中的连接方式可分为共阴型和共阳型两大类,共阳型是将各段发光二极管的正极连在一起,作为公共端C0M,公共端COM接高电平,a?g、Dp各笔段通过限流电阻接控制端。某笔段控制端低电平时,该笔段发光,高电平时不发光。控制某几段笔端发光,就能显示出某个数码或字符。共阴型是将各段发光二极管的负极连在一起,作为公共端COM接地,某笔段通过限流电阻接高电平时发光。
[0108]在自动加料机控制系统中运行是要显示输送、排料、满料、空料时间,有时间切换键和标志哪条生产线的发光二极管表示,显示的位数少,所以就采用静态显示的方式。LED显示器工作于静态显示方式时,各位的共阴极(或共阳极)连接在一起并接地(或+5V);每位的段选线(a~dp)分别与一个8位的锁存器输出相连。所以称为静态显示。各个LED的显示字符一经确定,相应锁存器的输出将维持不变,直到显示另一个字符为止。也正因此如此,静态显示器的亮度都较高。这种显示方式接口编程容易。若用I/O接口,则要占用4个8位I/O 口,若用锁存器接口,则要用4片74LS373芯片。如果显示器位数增多,则静态显示方式便无法适应。
[0109]在发明中,LED显示电路采用74LS377驱动器和MC14511B译码器控制LED数码管。
[0110]74LS377 芯片介绍
?DO?D7:8个信号输入端。
[0111].QO?Q7:8个信号输出端。
[0112].CLK:时钟信号输入端。
[0113].:锁存允许信号。当=0时,CLK端的上跳变将把8位D输入端的数据打入8位锁存器。
[0114]74LS377 真值表 CLK D Q
I X X QO
Ofll
OfOO X O X QO MC14511B芯片介绍.A?D:四个信号输入端。
[0115].a?g:七个信号输出端。
[0116].LT、B1:接地。
[0117].LE:接电源。
[0118]LED 接口电路
LED显示电路采用74LS377驱动器和MC14511B译码器控制LED数码管。两个LED显示一条生产线一个工作过程的秒数。两片MC14511B把PO 口的高四位和低四位译码成十进制控制LED显示。
[0119]继电器控制电路
在电气控制领域或产品中,凡是需要逻辑控制的场合,几乎都需要使用继电器,从家用电器到工农业应用,甚至国民经济各个部门,可谓无所不见。继电器是一种利用各种物理量的变化,将电量或非电量信号转化为电磁力(有触头式)或使输出状态发生阶跃变化(无触头式),从而通过其触头或突变量促使在同一电路或另一电路中的其它器件或装置动作的一种控制元件。根据转化的物理量的不同,可以构成各种各样的不同功能的继电器,以用于各种控制电路中进行信号传递、放大、转换、联锁等,从而控制主电路和辅助电路中的器件或设备按预定的动作程序进行工作,实现自动控制和保护的目的。被转化或施加于继电器的电量或非电量称为继电器的激励量,当继电器被激励,从一个起始位置达到预定的工作位置,并完成电路的切换动作,称为继电器的工作特性,包括吸合。不吸合,保持与释放状态。当输入量变化到高于它的吸合值或低于它的释放值时,继电器动作,对于有触头式继电器其触头闭合或断开,对于无触头式继电器起输出发生阶跃变化,以此提供一定的逻辑变量。
[0120]自动加料机是把塑料粒子送到一个真空管,在输送时真空管关闭合,排料时真空管需要打开,将粒子送到排料漏斗。本发明共需2个继电器控制交流接触器,一个接带动生产的电动机。另一个为控制工作方向的方向阀。经考虑采用4
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1