数控信号源除了要求可实现正弦波、方波、锯齿波等常规波形的输出外,还要求能输出频率可调、幅度可调、相位可调的任意波形,因此,在数控信号源中,需要通过键盘控制信号的频率、幅度、相位等参数,同时需要显示当前所产生的信号的频率及调制方式等。但是,由于人机界面中的键盘、显示等慢速外设需占用系统太多的资源,从而造成处理速度下降,系统的可靠性降低。因此,本文采用具有串行接口的键盘显示智能控制芯片ZLG7289,并以它为核心设计的键盘、显示电路具有结构简洁,功能完备,可靠性高的特点,且使用方便,适于推广。
1 ZLG7289 I2C接口简介
ZLG7289 I2C键盘显示与接口是广州周立功公司研发的,具有SPI串行接口功能,可同时驱动8位共阴式数码管(和64只独立LED)的智能显示驱动芯片。该芯片同时还可连接多达64键的键盘矩阵,单片即可完成LED显示和键盘接口的全部功能,且不占用单片机系统资源。其技术特点为:
(1)串接口,MCU接口方便;
(2)无需外围元件就可直接驱动LED;
(3)各位独立控制译码/不译码及消隐和闪烁属性;
(4)循环)左移/(循环)右移指令;
(5)具有段寻址指令,方便控制独立LED;
(6)64键键盘控制器,内含去抖动电路。
该芯片可方便地应用于各种测试仪器仪表和工业的人机接口中。
2 系统硬件设计
2.1 ZLG7289与微处理器的接口
ZLG7289A与微处理器的接口设计如图1所示,ZLG7289的6~9脚分别与AT89C51的P0.1~P0.3及INT0相连。其中6脚为片选输入端CS,低电平有效,可向芯片发送指令及读取键盘数据;7脚为CLK,同步时钟输入端,向芯片发送数据及读取键盘数据时,此引脚电平上升表示数据有效;8脚为串行数据输入/输出端,当芯片接收指令时,此引脚为输人端;当读取键盘数据时,此引脚在“读”指令最后一个时钟的下降沿变为输出端;9脚为按键有效输出端KEY,平时为高电平,当检测到有效按键时,此引脚变为低电平。
2.2 ZLG7289与键盘和LED数码管的连接
ZLG7289A应连接共阴式数码管,应用中无需用到的数码管和键盘可以不连接,省去数码管和对数码管设置消隐属性均不会影响键盘的使用。使用按键电路中须有相应的下拉电阻如R6,阻值为100 kΩ,连接6个按键与位选线DIGO~DIG4的5只电阻R1~R5称为位选电阻。芯片应用中,下拉电阻与位选电阻应遵从一定的比例关系,下拉电阻应大于位选电阻的5倍而小于其50倍,典型值为10倍。图中位选电阻取值10 kΩ。在不影响显示的前提下,下拉电阻应尽可能地取较小的值,这样可以提高键盘部分的抗干扰能力。
2.3 其他外围电路
其他外围电路如图1所示,ZLG7289A需要一外接晶体振荡电路供系统工作。其典型值为f=12 MHz,C=15 pF。ZLG7289A的RESET复位端在一般应用情况下,可以直接和Vcc相连,只有在需要较高可靠性的情况下,才需要连接一外部复位电路或直接由微处理器控制。因为芯片可直接驱动LED码管显示,电流较大,且为动态扫描方式。为尽量消除电源噪声干扰,提高电路抗干扰能力,应用时可在电源的正负极间并人一个100μF的电容。
3 ZLG7289在数控信号源中的应用
3.1 硬件设计
该数控信号源的人机接口电路如图1所示,由ZLG7289控制一个5×6的矩阵键盘和8个LED数码管的显示。该系统以AT89C51和DDS芯片AD9852为核心组成信号发生器的主体电路,由DDS输出的信号经过信号调理电路滤波、放大、衰减成为最终输出信号,系统框图如图2所示。
AT89C51作为系统的主控制器与人机接口电路通过ZLG7289的SPI接口实现双向数据通信,接收处理人机接口发来的各种控制信息,控制DDS及信号调理电路实现各种调制信号的输出,再经过低通滤波器得到频谱纯净的波形,滤波器输出的波形经过乘法器、功放电路和衰减电路得到用户所需的输出波形。