毕业设计-基于C51单片机的步进电机控制系统设计(6)

2019-06-11 13:54

扬州大学本科毕业设计(论文) 毕业设计用纸

CPU和ZLG7290间的数据/命令传送。

●CLK(系统时钟):输入线,为ZLG7290提供内部时钟的输入端。 ●RESET(复位):输入线,当RESET=1时,ZLG7290复位,其复位状态为:16个字符显示;编码扫描键盘;程序时钟编程为31。

●CS(片选):输入线,当CS=0时ZLG7290被选中,允许CPU对其读,写,否则被禁止。

●A0(数据选择):输入线.当A0=1时CPU写入的数据为命令字,读出数据为状态字;A0=0时CPU读,写的字节均为数据。

●RD、WR(读、写信号):输入线.低电平有效,来自CPU的控制信号,控制ZLG7290的读、写操作。

●IRQ(中断请求):输出线.高电平有效。

在键盘工作方式中,当FIFO/传感器RAM村有数据时,IRQ为高电平。CPU每次从RAM中读出数据时,IRQ变为低电平。

●SL0~SL3(扫描线):输出线.用来扫描键盘和显示器。它们可以编程设定为译码(4中取1)或编码输出(16取1)。

●RL0~RL7(回复线):输入线.它们是键盘矩阵或传感器矩阵的列(或行)信号输入线。

●SHIFT(移位信号):输入线,高电平有效。该输入信号是ZLG7290键盘数据的次高位(D6),通常用来扩充键的功能,可以用作键盘上、下档功能键。在传感器方式和选通方式中,SHIFT无效。 ●CNTL/STB(控制/选通):输入线,高电平有效。

在键盘工作方式时,该输入信号是键盘数据的最高位(D7),通常用来扩充键开关的控制功能,作为控制功能键用。 在传感器方式下,该信号无效。

●OUTA0~OUTA3(A组显示信号):输出线.

22

扬州大学本科毕业设计(论文) 毕业设计用纸

●OUTB0~OUTB3(B组显示信号):输出线.

这两组引线都是数据输出线,与多位数字显示(LED数码管)的扫描线SL0~SL3同步。两组可以独立使用,也可以合并使用,合并使用时OUTA0为最低位,OUTB3为最高位。

●BD(显示消隐):输出线,低电平有效。该信号在数字切换显示或使用消隐命令时,将显示消隐。

ZLG7290的数据输入/输出

对ZLG7290输入数据(如显示数据,输入键扫描数据、传感器矩阵数据等)时,要选择数据输入输出口地址。ZLG7290的数据输入输出口地址由CS=0,A0=0确定。在键盘扫描方式中,ZLG7290中键入数据时按下列格式存放。

D7 D6 D5D4D3 D2D1D0 CNTL SHIFT SCAN RETURN ﹡RETURN (D2D1D0)为键所在的行号,由RL0~RL7状态确定。 ﹡SCAN (D5D4D3)为键所在列号,由SL0~SL2状态确定。 ﹡SHIFT( D6)为控制键SHIFT的状态位。 ﹡CNTL( D7) 为控制键CNTL的状态位。

控制键SHIFT、CNTL为单独的开关。CNTL与其它键连用作特殊命令键,SHIFT可作为上、下档控制键。

在传感器方式或选通方式中,8位输入数据为RL0~RL7。 D7 D6 D5 D4 D3 D2 D1 D0 RL7 RL6 RL5 RL 4 RL 3 RL 2 RL 1 RL 0 23

扬州大学本科毕业设计(论文) 毕业设计用纸

3.5.3 ZLG7290键盘、显示接口电路设计

利用键盘、显示专用芯片ZLG7290能够以较简单的硬件电路和较少的软件开销实现微型机与键盘和LED显示器接口。下面讨论其硬件电路的工作原理和设计问题。 1.外时钟脉冲产生

AT89C51的ALE既可用作低8位地址的锁存信号,也把它接到ZLG7290的CLK引脚用作ZLG7290的外时钟脉冲信号的输入。脉冲信号频率并非固定不变,好在ZLG7290并不要求时钟频率固定不变,因此,这样安排还是可以的。不过应该注意,对于MCS--51系列单片机来说,ALE脉冲频率经常是振荡周期频率fosc的六分之一,这也是MCS--51单片机的ALE最高频率,通过对ZLG7290的程序时钟命令字节的编程,ZLG7290可以对来自CLK引脚的脉冲实行2~31分频,从而得到ZLG7290内部工作所需要的100kHZ内部时钟。如果fosc=12MHz,分频应为20。 2.译码电路

1)ZLG7290片选译码电路

对ZLG7290的片选译码电路可根据实际电路的地址分配设计。 2)键盘、显示扫描译码器

在对“键盘/显示方式设置命令字”的编程设置为编码凡是(D0=0)时,那么ZLG7290内部不译码,从SL3~SL0输出的不是键盘的列和显示器的位信号(高电平有效)。而是列和位号的编号的BCD码(SL3是最高位)。在这种情况下应外接译码器,对SL3~SL0译码,以产生列和位信号。

ZLG7290可以对8位或16位显示器以及8列8行键盘扫描。在16位显示时,对显示器扫描和对键盘扫描必须各有自己的译码器,显示器采用

24

扬州大学本科毕业设计(论文) 毕业设计用纸

4~16线译码器,例如74LS154;键盘采用3~8译码器,例如74LS138。BD是消隐信号输出端,当BD=0时,74LS138不译码,显示器均为暗。应该说明,在初始化时必须置“键盘/显示方式设置命令字”的D3=0,以设定8279工作于8位显示方式,否则会出现混乱现象。这是因为,如果设置为16位显示,74LS138只对SL2~SL0译码,这样,当SL3,SL2,SL1,SL0=000时,Y0为低,选中0号显示器(最左端),OUTA3~OUTB0上出现显示RAM的0单元的内容,从而使0号RAM所规定的字符。但是当扫描到SL3,SL2,SL1,SL0=1000H(=8)时,仍使Y0=0,选中0号显示器,但此时OUTA3~OUTB0上出现的却是显示RAM中8号单元内容,从而使0号显示器现在显示8号单元所规定的字符。可见出现显示混乱。反之,如果硬件电路设计为16位显示。而软件却设置为8位,另外8位得不到显示。 3.驱动电路

由74LS138输出(Y0~Y7)的显示器的位选信号和由A3~B0输出的段选信号的输出电流太小,不足以点亮LED显示器。可采用共阴极LED:BS202(发红光的BSR202或发绿光的BSG202),因此位驱动器选用集电极开路(OC门)同相输出门电路72LS07,段选信号由两个同相输出的功率驱动器75491提供。

表4-2“八段码(字形码)”表的内容。 4.中断请求线

在键盘中的某键按下,ZLG7290在测得其按下并在去抖动(延时10ms)之后再检测认为此键仍在按下状态,便确认此键已按下。在ZLG7290确认某键已按下时,便把此键的键只存于FIFO寄存器中,此时FIFO内有内容,称为FIFO存储器不空。只要FIFO存储器不空,便使IRQ为高电平,就直接通过EXINT端向8089请求中断。但由于AT89C51的INT0或

25

扬州大学本科毕业设计(论文) 毕业设计用纸

INT1是低电平或下降沿请求中断。因此应把IRQ反相后加到AT89C51的INT1端。当单片机读取FIFO的内容后,IRQ就回到低电平。如果FIFO存储器中还有未读到的键值,会重新使IRQ变为高电平,向单片机请求中断。由于FIFO存储器是先进先出RAM,因此先读走的键值对应于先按下的键。 5.SHIFT和CNTL

可用这两个键增加键盘的功能。例如上档键和下档键。这两键在按下时使SHIFT(或CNTL)为低电平。当这两个弹起时,使SHIFT(或CNTL)脚悬空,但由于此两引脚内部有上拉电阻,当它们悬空时实际上是高电平。

3.6脉冲分配

实现脉冲分配的方法有两种:软件法和硬件法。 1、软件法

图3-7是用这种方法控制三相步进电动机的硬件接口例子利用AT89C51的P1.0~P1.2这3条I/O线,向三相步进电动机传送控制信号。

3-7 用软件实现脉冲分配的接口电路

P1.0 P1.1 P1.2 AT89C51 A相驱动 B相驱动 C相驱动 下面以三相步进电动机工作在六拍方式为例,说明如何设计软件。

26


毕业设计-基于C51单片机的步进电机控制系统设计(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:学校校际交流公开课简报 - 图文

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

马上注册会员

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