DIY编程器网

标题: 80C196KC-ADMC401接口电路设计及其应用 [打印本页]

作者: liyf    时间: 2014-10-5 10:51
标题: 80C196KC-ADMC401接口电路设计及其应用
80C196KC-ADMC401接口电路设计及其应用


摘要:结合80C196KC和ADMC401双CPU接口电路图,详细介绍了系统的设计过程,并对主要部件的基本功能以及需要注意的问题做了分析和说明。最后以静止无功发生器(SVG)装置为例,介绍了双CPU系统的应用。    关键词:80C196KC ADMC401 SVG IGBT-IPM
随着微机控制技术的发展和广泛应用以及控制系统复杂性和实时性要求的不断提高,使得很多系统需要用两个甚至更多的控制器,实现被控对象提出的各种要求。尤其是在工业应用领域中,要完成大量的数据采集和处理、控制信号的接收和发送等诸多功能,对系统的运算速度、接口资源、稳定性以及成本方面有着非常高的要求。设计一个实用、合理、经济的高性能控制系统是成功投入现场运行的关键。
在SVG(静止无功发生器)装置中涉及到大量的复杂计算(如滤波计算、瞬时无功计算)和先进的控制手段(如矢量控制)以及诸多信号的采集和发送,使得单个CPU很难满足系统要求。因此采用高集成度的嵌入式处理器与DSP芯片组成双CPU系统来实现对整个系统的控制。

1 系统设计

1.1 系统的组成及原理
双CPU系统的原理图框图如图1所示。系统采用80C196KC和ADMC401两个芯片作为核心处理器。ADI公司的ADMC401芯片是基于DSP的控制器,非常适于工业应用领域中的高性能控制。该芯片集成了一个高速的DSP内核,且其内核具有一套完备的外围控制接口,以便在高度集成的环境中快速实现控制。Intel公司的80C196(KB/KC)是一款高性能且价格低廉的16位单片机,同样适用于高速控制和需要多个外设的场合。两个CPU在运行时独立执行存放在不同器件中的程序,同时保持相互之间的协调工作。考虑到系统本身的复杂性,如果使用传统的RAM、ROM和逻辑译码器件分离的系统接线方式,必定会使得整个控制电路过于庞杂,给调试带来很大困难,同时也降低了系统的稳定性。因此,该系统用到了可编程系统外围接口器件PSD产品中的PSD4235和PSD311。它们分别作为两个CPU的外部扩展器件,并和CPU组成一个双CPU—PSD系统(简称双CPU系统),如图1所示。两个CPU间的相互通信采用了双口RAM(IDT7132),通过它可以顺利实现两个CPU之间的数据传输。键盘管理部分用82C79接口芯片。输出显示部分用以SED1520为驱动芯片的MGLS-12032A液晶模块(LCD)。系统中专门增加了额外的串行E2PROM,主要用于掉电时数据的保护以及记录部分操作参数。此外,组成系统的还有WATCHDOG电路、UART电路等。它们在系统中的资源分配、功能实现都是通过对控制器的软件编程来完成。下面将详细介绍各部分的接口电路设计以及相应的工作原理。
1.2 80C196KC部分设计
16位的80C196KC芯片是Intel公司MCS-96系列单片机中重要的新成员,也是目前该系列单片机中性能最强的产品之一,在各类自动控制系统、数据采集系统和高级智能仪器中都有广泛的应用。80C196KC芯片的特点如下:振荡信号频率达16MHz,指令的运算速度更快,16位乘法1.75μs,32位除法3.0μs;8个A/D通道,可以方便地实现被控对象多点电压和电流采样;通过CPU的串行口可实现与上位PC机之间的通信;新增100H~1FFH内部RAM,在垂直窗下具有更灵活的运用;具有三路脉宽调制(PWM)输出;在80C196KB的基础上又增加了5条(KB已经增加了6条),使程序编制更加方便;16位多路复用地址数据/地址线可以与PSD直接接口,同时通过锁存器后,可将地址和数据分别接至双口RAM,实现多个CPU之间的数据传输等。详细的性能参数和特点请参见文献1~2。在双CPU系统中,80C196主要完成的功能有键盘控制、显示输出、数据保存、信号传送等。由于涉及的内容复杂,而且还需要与很多外围接口,所以用到了大容量、多端口的PSD4000系列芯片与它配合,图2所示即为80C196KC部分的电路图。

[attach]32427[/attach]
图2 80C196KC-PSD4235接口电路


    虽然CPU的数据与地址线可以直接与PSD连接,但是在双口RAM时,数据与地址信号必须分离。所需用到的锁存器在图2中省略了。PSD4235芯片是WSI公司2000年最新推出PSD4000系列产品,它能够适应多种不同的微处理器。其片内集成了4M位的闪速存储器,16个输出微单元、24个输入微单元的CPLD、译码PLD,52个单独可配置I/O端口,JTAG串行接口等,并且有支持掉电模式的低功耗可编程电源管理单元。PSD芯片对外地址分配和各接口的逻辑译码由专用的软件PSDSOFTTMLITE实现,具体情况请参考文献5~6或登陆www.waferscale.com站点查询。使用PSD后极大地简化了硬件电路的设计,减少了印制电路板的面积,提高了系统的稳定性。显示部分通过单片机控制图形液晶模块MGLS-12032实现。该模块有直接访问方式和间接访问方式两种。本系统以间接访问方式为基础。图2所示即为间接访问方式的电路。显示模块的时序通过对80C196编程实现。液晶模块MGLS-12032A是两片SED1520级联在一起,一片处于主工作方式,一片处于从工作方式,它们分别控制显示屏幕的左、右半屏。在编程时要特别注意汉字和字符显示时在边界区域两片SED1520间的切换。
系统中外部扩展了串行的E2PROM电路,用来存放系统的一些固定参数等,使用的芯片是Atmel公司的AT24C02。它只需通过80C196KC的高速输入、输出通道(HIS和HSO)产生连续的高低电平序列,便可实现与CPU之间的数据传输。从硬件的角度来看,该芯片不占用任何数据总线,连接简单且节约大量系统资源。
1.3 ADMC401部分设计
ADMC401芯片是一个基于单片DSP的控制器,适合工业应用领域中高性能控制。该芯片集成了一个26MIPS(13MHz晶振)定点内核ADSP-2171,单条指令执行时间为38.5ns,其编码与ADSP-21xxDSP 系列完全兼容。内核具有一套完备的外围控制接口,以便在高度集成环境中快速实现对元器件的控制;它还包含三个计算单元、两个数据地址发生器和一个程序定序器。其中计算单元包含一个算术逻辑单元ALU、一个乘法/累加器MAC和一个桶式移位器。内核还增加了位操作、平方、四舍五入和全局中断屏蔽等指令。除此之外,ADMC401芯片包括两个灵活的双缓冲器、双向的同步串行口。图3为ADMC401的功能框图。ADMC401芯片提供2K×24位的内部程序存储器RAM、2K×24位的内部程序存储器ROM、1K×16位的内部数据存储器RAM、1个高性能8通道12位模数转换ADC系统(它能经过4对输入实现双通道同时采样)、1个三相16位中心对称的PWM发生器(能以最小开销产生高精度的PWM信号)、1个灵活的增量编码器接口单元、2个可调频的辅助PWM输出、12条I/O数字信号线、1个双通道事件捕获系统、1个16位看门狗定时器、2个16位内部定时器等。

[attach]32428[/attach]
图3 单片数字信号处理器ADMC401功能框图


    PSD3XX芯片内部同样提供了许多应用系统需要的全部元件和外围。对于8051、80196和68HC11等微控制器来说与PSD相配合是极为有用的。ADMC401与它结合同样非常有效。考虑到ADMC401内部程序的长度以及接口并不象80196控制器那么多(80196需要完成人机界面实现、信号传送、外围器件接口等),所以采用PSD311(现有价格最低的3系列产品)。ADMC401芯片的引导程序装载可以通过两个引脚MMAP和BMODE的各种不同状态产生。如果引脚MMAP和BMODE电位都为0,那么ADMC401芯片工作在所谓的EPROM引导程序模式,其中被称为“引导存储器”的专用外部存储空间将允许芯片和字节宽度的EPROM相连,并在上电时通过存储器接口从外部装载程序;如果引脚MMAP和BMODE设置为其它电位将会产生不同的引导模式;另外,401芯片有一个专门的低电平有效信号——引导存储器选择BMS(Boot Memory Select)简化了引导存储器的接口。以上这些功能极大地方便了ADMC401与PSD接口。图4为ADMC401与PSD311的接口电路图(图中还包括了一些其它外围)。ADMC401与PSD311的连接几乎和它与标准的EPROM连接一样简单。由于总线的通路布在ADMC401内部,PSD311的8根数据线并不与ADMC401的D7~D0相连,而是与D15~D8C相连。还要注意,地址的最高位由ADMC401的D22线提供(在ADMC401中没有A14地址线)。BMS信号充当EPROM的片选并与PSD311的A19输入相连接。A19在PSD的程序里将被定义为芯片使能信号。ADMC401生成低有效读和写选通脉冲,它们与PSD311的RD和WR输入相连。这些选通脉冲在传输中用来选通PSD311的EPROM和RAM。ADMC401有2K×24位的内部程序存储空间。在采用EPROM引导程序模式时(MMAP=0,BMODE=0),外部程序通过ADMC401内部的定序器按照24位命令格式一次性全部下载到其内部程序存储空间。当然应用程序可能大于ADMC401内部程序存储空间,不过程序如果执行到后面的代码,ADMC401会自动重新引导。引导程序存储器由八页组成,每页8K字节长。一页中除了第一个字节外每隔三个字节是一个空字节,第一个字节是该页的长度,在两个相邻空字节中每组三个字节包含一个要装入DSP 内部程序存储器的24位指令。也就是说2K×24位的内部程序存储空间需要8K×8位的外部存储空间。在ADMC401的开发工具中有一个程序存储器PROM分配器实用程序“SPL21.exe”。它为用户程序计算正确的页长度,并且根据适当的协议为用户程序的字节排序,极大地方便了程序代码的生成。这些生成的代码可以直接写入PSD311。

[attach]32429[/attach]
图4 ADMC401-PSD311接口电路图

2 80C196KC—ADMC401两片系统在SVG装置中的应用

SVG(Static Var Generator)——静止无功发生器也被称为STATCOM(Static Synchronous Compensator),是灵活交流输电系统FACTS(Flexible AC Transmission System)技术中一个重要的基础部件。虽然SVG装置的成本要高一些,但其灵活的动态调节特性、优越的补偿效果以及更小的设备体积都是其他无功补偿装置不能比拟的。很多文献资料对SVG装置的原理和研制都有介绍。图5为两片系统的SVG装置结构图。
系统共分为三个主要部分。第一部分是由80C196KC—ADMC401两片系统构成的检测控制部分。80196主要负责人机界面的完成以及向上位机发送信号等功能。ADMC401的高速流水线式的8路A/D采样端口也为电压电流的快速采集提供了保证,同时ADMC401还要完成数字滤波计算、无功计算、PWM控制信号的产生发送等功能。第二部分是由IGBT模块构成的逆变电路。SVG装置的关键部件就是它的逆变桥路部分,而ADMC401集成的专用6路PWM波发生器正好提供了灵活的控制方法。此外,逆变电路部分采用富士电机最新推出的R系列IGBT-IPM模块7MBP100RA-120。它将过去的IGBT单元、驱动电路、保护电路等结合在一个模块中,极大地提高了实际应用系统的稳定性,简化了设计的难度,缩小了装置的体积。第三部分是由电力二极管构成的全波整流电路。整流电路采用日本富士公司的三相全波整流模块6RI100G-160。主要将三相线路上的交流电压变为直流输出,从而维持直流电容两端电压的稳定,为逆变电路提供一个直流电。这样避免了要轻微改变逆变器的触发工作角来达到提高和稳定电容上电压的情况。电流的检测是利用KT100-P型电流传感器完成,电压的检测是利用CHV-50P电压传感器完成。输出显示部分是用以SED1520为驱动芯片的MGLS-12032A液晶模块。以上各部件功能都是通过对ADMC401数字信号处理芯片和80C196KC软件编程实现。

[attach]32430[/attach]
图5 SVG装置结构图


    80C196KC和ADMC401组成的两片系统,应用范围相当广泛,非常适合计算量大、多外设、高速度的场合。
作者: 李小路    时间: 2021-6-25 09:20
谢谢分享!




欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2