首页 > 技术 > 内容

基于复杂可编程逻辑器件ATF1508AS实现多入多出系统的设计

时间:2026-01-20  作者:Diven  阅读:0

1引言

SoC(System on Chip)是将来电路设计的一个趋势,由于CPLD(Complex ProgRAMmable LogIC DevICe)芯片密度不断增加和新一代EDA(Electronic Design Automatic)开发工具的使用,利用CPLD器件实现SoC已成为可能,而单片机与CPLD之间的通信和合作方法亦成为目前单片机应用的一个热门方向。

通过水流、气流的喷射和循环以达到按摩功效并具备一些辅助功能的按摩浴缸已经成为时尚产品,而目前市场上的一般产品往往采用在浴缸中安装机械式阀门,并在浴缸表面配以手动的开关、旋钮来实现诸如背部、脚部及其部位的出水按摩效果,这样的方式一来用户使用不方便,二来安装难度增加,三者维护成本高。

在新型的按摩浴缸产品中,为了满足高端用户的需求,往往综合了水泵、气泵、加热器、电控阀门、灯光、收音机、消毒、电话等设备的控制,而控制部分通常会选用价格低廉、功能强大的各种8位单片机产品。由于单片机I/O端口的数量限制,在输入输出的数量较多的情况下,如果直接使用单片机的I/O端口会造成单片机数量的增加以及系统设计的难度增加,同时还会造成系统的成本增加。

按照新型按摩浴缸的模型设计,需控制的输出包括水泵1路、气泵1路、加热器1路、电控阀门12路、灯光6路、消毒泵1路,共22路输出,另外还包括了故障检测(19路)及液位检测(2路)共21路输入。在单片机尚要兼顾键盘LCD显示及遥控器的情况下,直接使用其I/O端口显然是不现实的。通过引入CPLD的设计可以解决上述多输入输出的控制问题。

2 CPLD介绍

ATF1508AS是ATMEL公司生产的电可擦写、可在线编程的逻辑电路器件,内含128个逻辑宏单元,可以通过LogicDoubling技术进行逻辑功能设计的扩展,可以灵活地实现用户设计的要求。

ATF1508AS共有84个管脚,其中61个管脚可作为I/O使用,完全可以满足上述新型浴缸的控制要求。图1是ATF1508AS的组成示意图。

图1 ATF1508AS的组成示意图

3 CPLD应用开发

CPLD的设计方法包括电路原理图法、Verilog编程、VHDL编程等,本设计中采用电路原理图的设计方法,下面说明相关设计过程。

显然CPLD是处于单片机与驱动控制电路之间的接口部分,单独将抽象出来,则其输入输出框图如图2所示:

图2 CPLD输入输出框图

3.1 输出部分设计

由于前述新型浴缸模型中有22路输出,所以输入信号应设计五位地址输入线(25=32》22)以满足输出数量的要求,另外相应的控制信号线还包括复位、时钟及输出开关控制信号共三个。显然,对输出部分来说,CPLD的功能类似于5线-22线的译码器,但由于输出信号之间要求相互不能影响,所以在译码器的基础上需增加触发器以实现上述要求,同时还需加入相应输出设备的开关控制信号。

5线-22线译码器是用两片4线-16线译码器74154扩展而成的(多余的输出不用), 对于4线-16线译码器74154来说,有两个片选信号控制端G1N和G2N,只有当G1N和G2N都为逻辑“0”时,74154芯片才能正常译码。利用G1N进行两片74154的扩展,再利用G2N作为输出设备的开关控制信号刚好可以满足设计需求。扩展后的译码器电路能实现5线-32线的译码,可以满足22路输出的要求,因为输出设备存在多路共同输出的组合,通过在译码器的输出端添加多个双二输入JK触发器7474可以实现这一功能。分析JK触发器的特性方程:Qn+1=J + Qn可知,当

(1) J=1,K=0时Qn+1=1;对应于相应设备关闭;

(2) J=0,K=1时Qn+1=0;对应于相应设备开启;

(3) J=K=0时Qn+1=Qn;对应于相应设备保持原开关状态;

(4) J=K=1时Qn+1= 。(实际上该种组合因电路设计的原因不存在)

针对图3所示的电路,经分析可知,左半部分的电路用于控制输出设备的开启,而右半部分的电路控制输出设备的关闭,且由于各个输出设备的控制码不同,所以不存在冲突的问题。输出部分的设计占用了CPLD的30个I/O端子,其中8个I/O端子用于与单片机的连接,另外22个I/O端子通过驱动控制电路与相应设备连接。

对于设计完成的输出控制部分来说,其与单片机连接的8位数据格式及相应定义如下:

CLRN CLK G2N G1N A B C D

CLRN:复位信号(低电平有效)

CLK:时钟信号(上升沿有效)

G2N:输出控制信号(“0”:开,“1”:关)

G1N、A、B、C、D:地址码输入

3.2输入部分设计

3.2.1 故障检测部分设计

该部分是针对浴缸控制器中关于故障检测的功能进行设计的,信号来自各相应设备的故障检测电路,并规定“1”表示设备发生故障,“0”表示设备正常。对故障检测的输入部分来说,CPLD相当于一个多路数据选择器。利用两片16选1数据选择器74150可以扩展成32选1数据选择器,从而满足19路故障检测信号输入的要求。具体的实现方法是利用74150的片选端EN作为扩展端,对于74150来说,只有当EN为逻辑“0”时,数据选择器才能正常工作,设计电路如图3所示。故障检测输入部分的设计占用了CPLD的27个I/O端子,其中6个I/O端子(5个地址码端子,1个选择输出端子)与单片机连接,其21个I/O端子通过接口电路与故障检测电路连接。

3.2.2 液位检测部分设计

液位检测是新型浴缸系统正常工作的一个重要组成部分。液位检测包括浴缸液位检测和消毒液液位检测两个部分,其中浴缸液位是否达到预定水位是系统中水泵、气泵等设备开启的必要条件,而消毒液液位是否高于正常位置也是系统能否正常消毒的充分条件。

实际设计中通过两个非接触式液位开关检测相关液位,液位开关的输出为标准的TTL电平信号,并规定“1”表示液位达到设定值,“0”表示液位未达到设定值。如果浴缸液位未达到设定值,则系统会提示加水信息,如果消毒液液位低于设定值,则系统会提示添加消毒液。

对于设计完成的输入控制部分来说,其与单片机连接的6位数据格式及相应定义如下:

Yselect:数据选择输出

A0、A1、A2、A3、A4:地址码输入

3.3 CPLD的烧录

上述关于CPLD输入输出功能的设计是使用MaxplusII工具进行的,设计完成后得到的结果是*.pof文件,使用Pof2Jed工具将*.pof 转换为 *.jed 文件, 然后利用 AtmIsp 工具将相应的*.jed烧录到CPLD中,就完成了整个CPLD芯片的设计、实现过程。

图3 CPLD 设计示意图

4 CPLD的应用效果[1][2]

4.1 输出设备控制

在所有的控制设备中,除了气泵、多路水阀及灯光以外,其均是简单的开关控制。现在以气泵及灯光的控制说明CPLD的应用效果。

4.1.1气泵控制

根据气泵电机的组成原理,经过实际测试,可以通过PWM调节实现气泵的调速,而用单片机实现不同的脉冲输出或PWM波形是非常简单的功能,具体的电路连接示意图如下图所示。

通过实验,我们实现了气泵的无极调速。下面是典型的脉冲波形输出示意图。

4.1.2灯光控制

一般情况下,浴缸中安装三个彩灯及三个白灯,均是由高亮度发光二极管构成,彩灯按照红、篮、绿三色由2个、3个、2个共7个发光二极管组成,白灯由7个白色发光二极管组成,要求白灯能够实现亮度的控制,彩灯能够实现几种不同周期循环状态的控制。

白灯亮度的控制采用控制不同发光二极管组合的方式实现,亮度共分7级,分别对应相应数量的白灯点亮,具体实现时,将白灯分成三组:第一组1个白色发光二极管,第二组2个白色发光二极管,第三组4个白色发光二极管,通过这三组白色发光二极管的组合就可以实现7级亮度的调节。

彩灯循环状态的控制采用脉冲式输出的方式实现,配合定时器及外围添加逻辑或门的方式可以具体实现彩灯循环的控制。

4.2 输入设备控制

4.2.1 故障检测控制

故障检测是本文作者针对新型多功能浴缸提出的全新功能,一方面可以提醒用户关于系统故障的信息,另一方面,也为浴缸生产厂家的维护人员提供了全面的检测、维修信息。

如前所述,故障检测的信号来自各相应设备的故障检测电路,并规定“1”表示设备发生故障,“0”表示设备正常。在软件实现的过程中,首先要建立一个设备与地址A4-A0的对应表,然后定时轮询CPLD的相应端子,采集故障检测信息,并根据相应的信息进行显示及驱动蜂鸣器报警。同时软件系统还会存储累积的设备故障次数,以方便厂家分析故障原因。

4.2.2 液位检测控制

系统响应按键操作需进行关于水泵、气泵、加热器、阀门的启动时,均会先行采集液位开关的输入状态,并根据采集的信息判断是进行设备开启操作,还是显示错误提示。

5 结束语

本文作者的创新点在于将单片机控制与CPLD的应用综合在新型浴缸的设计和生产过程中。从以上CPLD的实际应用效果可以出,使用CPLD不但可以简化控制电路的设计,而且可以获得稳定、可靠的控制效果,同时还降低了系统开发的成本,完全达到了设计要求。可以预见的是,随着CPLD芯片密度的进一步提高,必然会将单片机及CPLD的设计加入SoC,以形成更加专用的SoC系统,进一步降低产品的生产成本,并提高系统的保密性。

猜您喜欢


电子元器件中,贴片电阻因其体积小、性能稳定而被应用于各种电路设计中。对于初学者或非专业人士来说,理解贴片电阻上的数字标识尤为重要。例如,贴片电阻“163”代表多...
2025-11-28 03:00:04
中秋国庆假期前夕,9月27、28日,前后两天两家国产传感器企业获批/上市,这两家企业的第一大客户都是中国新能源汽车巨头比亚迪。随着比亚迪等国产新能源汽车厂商的崛...
2023-10-23 08:10:00
电容器在电子设备中非常重要。用于储存电能,并在电路中起到关键作用。电容器有很多种类,各自有优缺点。本文将详细介绍几种常见电容器的特点。陶瓷电容器陶瓷电容器常见。...
2025-03-27 15:31:07
贴片电阻501,这种小型电子元件在各种电子电路中扮演着至关重要的角色。501代表其阻值为500欧姆,而紧凑的贴片式设计使其非常适合现代电子设备对小型化和高密度的...
2024-11-26 11:29:59
电子元器件领域,电感器作为重要的无源元件,应用于各种电路设计中。随着电子产品的小型化和高性能化,贴片电感和功率电感成为了两种常见的电感器类型。许多工程师和电子爱...
2025-11-11 21:31:14
PTC热敏电阻因其独特的自恢复过流保护功能而被应用。作为行业知名品牌,金凤冠PTC热敏电阻凭借优良的性能和稳定的质量,受到市场青睐。本文将详细介绍金凤冠PTC热...
2019-03-19 19:54:30
现代电子技术中,二极管作为重要的半导体器件,应用于整流、限流、开关等电路中。根据材料的不同,二极管可分为锗二极管和硅二极管。本文将对锗二极管与硅二极管的型号进行...
2025-04-09 05:31:40
在选择放大镜或显微镜时,了解其参数非常重要。放大倍数是关键指标,通常以倍数表示,如2x、5x等,表示物体的放大程度。视野直径也是重要参数,决定了观察时能看到的范...
2025-02-25 00:00:00
还在为繁琐的贴片电阻计算而烦恼吗?现在,一款便捷的贴片电阻计算器手机版来帮您!完全免费下载,让您随时随地轻松计算电阻值。这款计算器操作简单,界面直观,即使您不是...
2025-04-14 15:02:34