《基于复杂可编程逻辑器件实现键盘接口电路的设计.docx》由会员分享,可在线阅读,更多相关《基于复杂可编程逻辑器件实现键盘接口电路的设计.docx(6页珍藏版)》请在第一文库网上搜索。
1、基于复杂可编程逻辑器件实现键盘接口电路的设计1引言无功补偿装置是用于补偿电网无功功率的不足,提高功率因数,保证供电系统安全运行和节约电能的设备,其核心是控制仪。本控制仪集无功补偿、电度量计量、电能质量监测及通信于一体,对电网参数进行实时采样与计算并把各项参数显示在1CD上,还可通过键盘进行系统参数设置,用于改变控制仪的运行模式等。控制仪的最小系统由单片机80C196KC和可编程单片机外围接口芯片PSD834F2组成,这样既省去了地址锁存器和译码器等一些小规模芯片,使硬件电路得到了简化,又提高了系统的可靠性。系统运行所需要的程序、数据和参数均放在PSD834F2中。用复杂可编程逻辑器件(曲)取代
2、一些数字器件扩展系统的外围电路,进一步提高了系统的性能,还便于调试和维护。本文以下将具体介绍如何用CP1D来扩展键盘和显示电路。2键盘输入模块的硬件设计键盘输入主要用于现场电流变比,电容器组数,单组电容器容量,电压上、下限,谐波上限,控制仪地址编号等系统参数设置。而且与显示模块配合用于查看各相电压、电流,无功功率,有功功率,功率因数等的情况。设计键盘时,如果采用软件扫描的方式,虽然硬件电路简单,但扫描会耗去CPU不少时间,降低系统的整体性能;如果采用接口芯片8279来管理键盘,虽可代替CPU完成对键盘的控制,减轻CPU的负担,但8279体积大且功能单-O所以,本系统采用复杂可编程逻辑器件(CP
3、1D)来设计键盘的接口电路,完成对键盘的扫描工作,当有键按下时,则产生中断信号供CPU读取扫描码。除此之外,CP1D还可实现其它模块的接口电路以及完成地址译码等功能。本系统采用4X4键盘,其硬件电路如图1:图14X4键盘框图CP1D采用1attiCe公司的isp1SI1016E-1001器件,该器件包括32个I/O引脚,4个专用引脚,集成密度为2000个P1D等效门,引脚至引脚的延迟为7.5ns,工作频率为IOOMHz。该器件由集总布线区(GRP)和万能逻辑块(G1B)构成,G1B通过GRP连接起来。page对复杂可编程逻辑器件(CP1D)内部逻辑功能的描述方式有多种,本系统采用了原理图输入与
4、VHD1语言描述相结合的方式,这样可以发挥两者的优势,加快开发进程。设计时采用层次化设计,描述系统总体功能的最上层使用原理图输入,而原理图中的某些功能模块采用VHD1编写。实际原理图如图2:IAH图2键盘逻辑实际原理图XE尸图2键盘逻辑实际原理图上图中MOdU1e1模块实现分频功能,C1K来自单片机80C196KC的C1KOUT脚,其周期为3个时钟振荡周期,占空比为33%。若单片机用16M晶振,其频率约为:16M3=5.33M0Modu1e1把频率降至约IK,Modu1e2模块以一秒的问隔使0300依次循环输出低电平进行键盘扫描。当有键按下时,13IO中有一个为低电平,异或门输出1个高电平脉冲
5、,锁存键盘状态并向单片机申请中断。系统为键盘分配的地址空间为OXf1OOOXfIff,在此范围内可读取键盘的扫描码。由于篇幅有限,以下只给出ModUIe2的VHD1语句,具体如下:1IBRARYieee;USEieee.STd1ogic1164.A11;USEieee.std_1ogic_unsigned.A11;ENTITYModu1e2ISPORT定义端口(e1k:INstd_1ogic;q:OUTstd_1ogic_vector(3DOWNTO0);ENDModu1e2;ARCHITECTUREModu1e2ofModu1e2ISBEGINPROCESS(e1k)VARIB1Esum:i
6、nteger:=0;定义变量SUnb初值为0BEGINIF(c1k,eventANDc1k,1,)THENsum:=sum+1;CIk为上升沿时,SUnI加1IF(sum=5)THENsum:=1;ENDIF;ENDIF;CASEsumIS根据SUn1输出相应的值WHEN1=q=“1110”;WHEN2二q二“1101”;WHEN3二q二“1011”;WHEN4=q=011,;WHENTHERS=q图3系统参数设置处理流程图图3系统参数设置处理流程图5结束语用复杂可编程逻辑器件(CP1D)扩展的键盘接口经过实用,效果较好,既提高了单片机的响应速度,又简化了硬件电路。此外,CP1D还可用于其它的接口设计,使其性能得到进一步体现。责任gt