毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

基于51单片机自动加料机控制系统设计 第8页

更新时间:2010-2-24:  来源:毕业论文
基于51单片机自动加料机控制系统设计 第8页
(3)确定是否有多键同时按下。有时一次按下的键不止一个,这在一般情况下是由于误操作引起的,是不应该出现的通常称为窜键。出现这种情况时,就可能有不止一次会得到列信号不为全1,这时就不容易判断哪个键是真正需要按下的。为了处理这种情况可采取两种办法:一是行扫描一定是扫到最后一行才结束,而不是检测到列信号不为全1时就结束,以便发现窜键;二是如果出现了窜键,最简单的处理办法就是这次行扫描不算,再来一遍,即以最后放开的那个键为准。实际上,由于扫描的速度很快,真正找到两个键同时按下的情况是很少的。
(4)消除键抖动。一般按键在按下的时候有抖动的问题,即键的簧片在按下时会有轻微的弹跳,需经过一个短暂的时间才会可靠地接触。若在簧片抖动时进行扫描就可能得出不正确的结果。因此,在程序中要考虑防抖动的问题。最简单的办法是在检测到有键按下时,等待(延迟)一段时间再进行“行扫描”,延迟时间为10~20ms。这可通过调用子程序来解决,当系统中有显示子程序时,调用几次显示子程序也能同时达到消除抖动的目的。
3.5.2  8255A芯片介绍
   自动加料系统有8个按键:启动两条生产线的“启动1”键和“启动2”键、分秒选择键、时间设置加/减键、显示生产线状态切换键,时间设置键,时间切换键,由于单片机的并行口有限。本系统采用8255A扩展并行口。
(1).8255A的内部结构
8255A的内部结构有以下几部分组成:
a.并行I/O端口A、B、C 8255A的内部有3个8位并行I/O口:A口、B口、C口。3个I/O口都可以通过编程选择为输入口或输出口,但在结构和功能上有所不同。
A口:含有一个8位数据输出锁存/缓冲器和一个8位输入锁存器。
B口:含有一个8位数据输出锁存/缓冲器和一个8位输入锁存器(不锁存)。
C口:含有一个8位数据输出锁存/缓冲器和一个8位输入锁存器(不锁存)。
当数据传送不需要联络信号时,这3个端口都可以用作输入口或输出口。当A口B口需要有联络信号时,C口可以作为A口和B口的联络信号线。
b.工作方式控制电路:8255A的三个端口在使用使可分为A、B两组。A组包括A口8位和C口高4位:B组包括B口8位和C口低4位。两组的控制电路中分别有控制寄存器,根据写入的控制字决定两组的工作方式,也可对C口每一位置“1” 或清“0”。
c.数据总线缓冲器:数据总线缓冲器是三态双向的8位缓冲器,是8255A与单片机数据总线的接口,8255A的D0~D7可以和AT89C51单片机的P0.0~P0.7直接相连。数据的输入输出、控制字和状态信息的传递,均可通过数据总线缓冲器进行。
d.读/写控制逻辑:8255A读/写控制逻辑的作用是从CPU的地址和控制总线上接受有关信号,转变成各种控制命令送到数据缓冲器及A组和B组的控制电路,控制A、B、C3个端口的操作。
3.5.3   8255A引脚功能
8255A共有40个引脚,一般为双列直插DIP封装,40个引脚可分为与CPU连接的数据线、地址和控制信号以及与外围设备连接的三个端口线。
.D0~D7:双向三态数据总线。
.RESET:复位信号,输入,高电平有效。复位后,控制寄存器清0,A口、B口、C口被置为输入方式。
. :片选信号,输入,低电平有效。
. :读信号,输入,低电平有效。 有效时,允许CPU通过8255A D0~D7读取数据或状态信息。
. :写信号,输入,低电平有效。有效时,允许
.A1A0:端口控制信号,输入。2位可构成四种状态,分别寻址A口、B口、C口和控制寄存器
.PA0~PA7:A口数据线,双向。
.PB0~PB7:B口数据线,双向。
.PC0~PC7:C口数据/信号线,双向。当8255A工作于方式0时,PC0~PC7分为两组(每组4位)并行I/O数据线;当8255A工作于方式1或方式2时,PC0~PC7为A口、B口提供联络信号。
   A1A0与  、 、 信号一起,可确定8255A的操作状态,如图所示:
8255A功能操作
A1 A0 
操    作
0
0
1 0
1
0 0
0
0 1
1
1 0
0
0 A口→数据总线
B口→数据总线
C口→数据总线 
输入操作
0
0
1
1 0
1
0
1 1
1
1
1 0
0
0
0 0
0
0
0 数据总线→A口
数据总线→B口
数据总线→C口
数据总线→控制口 
输出操作
x
1
x x
1
x X
0
1 x
1
1 1
0
0 数据总线为高阻态
非法状态
数据总线为高阻态 
禁止操作
   8255A与AT89C51接口电路。
在连接键盘电路采用8255A为扩展I/O口时,要在中间加入一个74LS373,74LS373是一个三态门的8D锁存器,它可以作为AT89C51外部的一个扩展输入口,借口电路的工作原理是当外设把数据准备好后,发出一个控制信号加到373的G端,即锁存端,使输入数据在373中锁存,同时信号加到AT89C51单片机的中断请求 端,单片机响应中断,在中断服务程序中执行下面程序:
   MOV  DPTR,#0BFFFH
   MOVX  A,@DPTR
在执行上面的第二条指令时,P2.6=0, 有效,通过或门后加到373的 端,即373的三态门控制端,使三态门畅通,锁存的数据读入到累加器A中。
电路如图所示:
3.6   外部存储器扩展电路
自动加料机存在两条生产线的输送、排料、满料、空料,共8个设置的重要数据需要读/写,并且能够提供掉点保护,所以就需要外阔程序存储器。程序存储器一般采用自读存储器,因为这种存储器在电源关断后,仍能保存程序,在系统上电后,CPU可取出这些指令予以重新执行。只读存储器简称ROM。ROM中的信息一旦写入之后,就不能随意更改,特别是不能在程序运行的过程中写入新的内容,故称之为只读存储器。
向ROM中写入信息叫做ROM编程。根据编程的方式不同,ROM分为以下几种:
(1)掩膜ROM是在制造过程中编程。因编程是以掩膜工艺实现的,因此称为掩膜ROM。这种芯片存储结构简单,集成度高,但由于掩膜工艺由于成本较高,因此只适合于大批量生产。
(2)可编程ROM(PROM)
PROM芯片出厂是并没有任何程序信息,是由用户用独立的编程器写入的,但PROM只能写入一次,写入内容后,就不能在进行修改。
(3)EPROM
EPROM是用电信号编程,用紫外线擦除的只读存储器芯片。在芯片外壳上的中间位置有一个圆形窗口,通过这个窗口照射紫外线射就可擦除原有的信息。

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

基于51单片机自动加料机控制系统设计 第8页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。