用于实时控制系统的嵌入式系统经常需要对模拟量进行测量,通常的方法是以MCU为主产生采集控制时序控制模数转换器,并通过中断或查询的方式读取转换后的结果。由MCU产生采集控制时序将占用较多的系统软硬件资源。而在一般复杂的多路信号测控系统中,MCU需要进行数据存储,通讯,数据处理等多项工作,如果再需要其频繁地产生模数转换控制器的控制时序,将会影响系统的性能,严重时将会成为系统的瓶颈。本文采用CPLD产生A/D转换器的控制时序,使得CPLD主要实现A/D时序控制的功能,DSP主要实现闭环控制算法的功能。
1 系统总体结构
系统以DSP和CPLD为核心,模拟信号从模拟多路开关CD4067接人,利用CPLD进行使能其输入。使用DSP的GPIO口作为模拟多路开关的通道号的选择。A/D转换器使用MAXIM公司的MAX194,其控制时序由CPLD产生。当A/D转换结束后,将会产生一个EOC信号,该信号作为LF2407的外部中断,当DSP接收到该转换结束信号,进入相应的外部中断程序,使用SPI总线来接收A/D转换的数字值,并进行相应的处理。系统的总体结构图如图1所示。
2 硬件设计
2.1 主控DSP芯片TMS320LF2407A
系统的主控制器采用了TMS320LF2407A,3.3 V静态CMOS工艺,40 MIPS,具有16位地址总线,16位数据总线,3个独立的存储空间,包括可用的64 kB程序空间,35.5 kB数据空间以及64 kB的I/O空间。访问不同的存储空间时,DSP有相应的引脚作为选通信号,PS对应程序空间,DS对应数据空间,IS对应IO空间,均为低电平有效。本系统将MAX194 A/D转换器映射到I/O空间0000H-7fffH,其使能的逻辑表达式为:CS=A15+IS。多路模拟开关映射到I/O空间的8000H-ffffH,其使能逻辑表达式为:CS=A15+IS。式中IS是I/O空间选通信号线。
TMS320LF2407A的内部具有32 kB FLASH程序存储器,2.5 kB RAM数据存储器。FLASH可满足DSP系统程序存储的需要,而2.5 kB的数据存储器可能不够。而且研发阶段一般将程序写在RAM上,所以设计选用了Cypress Semiconductor公司的CY7C1021V33的SRAM,该SRAM为64 kB,设计中设定0000H-7ffffH为程序空间,8000H-ffffH为数据空间。外扩SRAM的逻辑表达式为:CS=(A15+PS+DS)(A15+PS+DS)。式中CS是SRAM的片选信号线,A15是DSP的第16根地址线,PS是程序空间选通信号线,DS是数据空间选通信号线。
2.2 模数转换模块MAX194
TMS320LF2407A芯片内置16通道A/D转换器,但是只能输入单极性电压,只有10位的分辨率,精度很不理想,所以需要外扩A/D转换芯片。经过多方比较,笔者选用了MAXIM公司的MAXl94芯片,它是一种逐渐次比较型的模数转换器,具有高精度,低功耗等特点。MAX194的内部设有校准电路,用于保证全温度范围内的线性度,且不需要外部的调整电路。分开的模拟和数字供电,最大限度地减少了数字耦合噪声。其主要特征有:14位分辨率,1/2 LSB非线性度,82 dB的信噪比,低功耗,单极性或双极性输入,三态串行输出。
MAX194具有两种接口模式:同步模式和异步模式。同步模式:MAX194在转换过程中,每转换完一个,数据位就输出一位。此时,SCLK应该接地,CLK即作为ADC的转换时钟又作为串行接口的移位输出时钟。异步模式:DSP只能在MAX194完成一次转换之后才能将转换结果读出,然后启动下一次的转换。这种模式降低了MAX194连续转换的速度。
使用CPLD来控制MAX194,可以方便地控制MAX194工作在同步或者异步状态,而不需要对硬件电路做任何改动,仅需要修改CPLD中的程序即可。本设计将MAX194设定在异步工作模式下,
根据图2所示的时序图,将采样控制过程分成了4个状态:
(1)初始状态:MAX194采样控制信号初始化,各采样控制状态置零。
(2)启动采样状态:将MAX194的启动转换信号START置低并保持至少两个CLK周期。
(3)转换结束状态:将MAX194的启动信号START置高并检测转换结束状态信号EOC,当它由高电平变成低电平时即表示转换已经结束。因此,这个状态与上个状态一样是看EOC信号是否有变化,若是有变化,则转到下个状态,若是没有变化,则将一直在这个状态中循环,直到EOC信号有变化为止。
(4)转换结果输出状态:将MAX194的芯片使能信号CS置低,DSP通过SPI口将A/D转换得到的数据传人DSP中。
根据以上工作状态的描述,使用了VHDL语言编写了A/D转换采样控制模块的程序,并进行了仿真,仿真结果如图3所示。从仿真图中看出设计的A/D转换控制模块是完全符合设计要求的。
3 软件设计
TMS320LF2407A是基于C2000平台的,提供两种编程语言:C/C+十语言或汇编语言。其中,C语言编写的程序可读性、可移植性强,且大大缩短了开发周期,但执行效率低,程序出错时不易诊断。汇编语言程序效率高,但编写比较繁琐。通常做法是程序核心部分(即经常调用部分)采用汇编语言编写,以提高整个系统的执行效率,对实时性要求不高的部分采用C语言编写以降低程序的复杂度,提高程序的可读性和可修改性。本文采用C语言和汇编语言混合编写的多文件结构,主要包括主程序、读取A/D转换结果的中断程序的设计。
软件流程如图4所示。主要分成三部分:SPI配置部分,模拟开关控制部分,A/D转换控制和转换结果的读取。
3.1 SPI配置部分
对于LF2407A,串行SPI外设接口有9个寄存器,用于控制其操作。在本设计中将LF2407A的SPI接口设定在主模式下,在该模式下,采用主控制器发送伪数据,从控制器发送数据。主控制器可在任何时刻启动数据传送,因为它控制着SPICLK信号。但软件决定了主控制器如何检测从控制器何时准备发送数据。SPI接口模块的初始化程序如下:
3.2 模拟多路开关选通部分
由于多路模拟开关映射到DSP的I/O空间中的0X8000-0XFFFF之间,所以在DSP程序中,对0X8000-0XFFFF之间进行一个读操作,由DSP的GPIO选择的通道就被选通,信号由CD4067输出到A/D转换器MAXl94。
读地址产生的低电平信号CS的保持时间由访问I/O空间的等待时间决定的,通过设置等待状态寄存器来保证获得有效的延时时间。
3.3 MAX194转换控制部分
由于A/D映射DSP的I/O空间的0x0000~0x7fff之间,类似于模拟多路开关,也需要对该空间进行一个读操作。
4 结语
多路数据采集系统在嵌入式测控系统中具有很强的实用价值。本文设计了一个基于TMS320LF2407A与EPM570T100C5N的MAX194的多通道采集系统,详细描述了MAX194,CPLD与DSP之间的硬件与软件设计,该系统在笔者参与的嵌入式测量控制系统中得到了成功的应用。
关键字:DSP CPLD MAXl94 CD4067
引用地址:
基于DSP与CPLD的多通道数据采集系统的设计
推荐阅读最新更新时间:2024-05-02 20:48
DSP芯片与触摸屏的接口控制
摘要: 简述了液晶触屏控制产品的工作原理以及用于触摸屏控制的专用芯征ADS7843的工作原理。无线数字扩频通信平台是无线扩频通信的一种开放式平台,在此基础上增加液晶触摸屏控制,可实现文字和图形的编辑无线传送,使该产品用途更加广泛。
关键词: 电阻式触摸屏 DSP ADS7843
以DSP(数字信号处理)芯征和FPGA(现场可编程逻辑门阵列)为核心的无线数字扩频通信平台是无线扩频通信的一个开放式平台,可用于无线接入、无线图像和音频传送、移动INTERNET、精确区域定位LPS、智能遥控探测等高科技领域。我们在此基础上增加了液晶显示和触摸控制,从而实现文字和图形信息的编辑和无线传送,使该产品用
[工业控制]
一款DSP的逆变电源模糊PID控制
1、引言 由于逆变器传递函数不易得到,而且电压输出经常波动,传统的单纯PID控制难以达到快速和稳定的响应,而模糊控制与PID相结合的控制方法,通过对误差量的变化实时分析,调整PID参数,达到快速响应和无差跟踪,可实现逆变 电源 的高精度实时控制。 模糊控制系统原理 模糊PID控制器以电压偏差e和偏差变化量ec作为输入,PID参数模糊自整定是找出PID三个参数与e和ec之间的模糊关系,在程序运行中通过不断检测e和ec,根据模糊控制原理对三个参数进行在线修改,以满足不同e和ec对控制参数的不同要求,从而使被控对象有良好的动、静态性能。其在线自校正工作流程如图1所示。 图中:ki、kp、kd分别为积分增益系
[嵌入式]
基于FPGA+DSP技术的Bayer格式图像预处理
高分辨率图像实时处理在通信、医学、军事、航天航空、信息安全等领域有着广泛的应用和发展。在图像实时处理的过程中,下层 图像预处理 的数据量大,运算简单,但是要求运算速率高,可以用 FPGA 硬件来处理,上层所处理的数据量少,算法结构复杂,适于运算速度快,寻址灵活的 DSP 数字信号处理器进行处理。这里提出了一种FPGA+DSP相结合的实时图像处理系统,并应用于传像光线束传递图像。CMOS实际采集的是光线束的出端图像,FPGA将CMOS采集的Bayer格式的图像转换为RGB格式的亮度信号。由于光纤出、入端结构不同,需要DSP准确每根光纤的中心位置,重新排序才能输出正确的图像信息。该系统充分发挥了FPGA和DSP各自的
[安防电子]
基于CPLD的LED点阵显示控制器
在系统可编程技术(ISP—In System Programming)及其在系统可编程系列器件,是90年代迅速发展起来的一种新技术和新器件。 现场可编程器件(FPGA和CPLD)等ISP器件无须编程器,利用器件厂商提供的编程套件,采用自顶而下的模块化设计方法,使用原理图或硬件描述语言(VHDL)等方法来描述电路逻辑关系,可直接对安装在目标板上的器件编程。它易学、易用、简化了系统设计,减小了系统规模,缩短设计周期,降低了生产设计成本,从而给电子产品的设计和生产带来了革命性的变化。 1、系统结构及工作原理 LED点阵显示控制的传统方式是采用单片机或系统机作为CPU来实现,当系统显示的信息比较多时,由于单片机的输入/输出端口(I/O
[电源管理]
基于DSP+ARM的便携式电能质量分析仪设计
随着国家工业规模的扩大和科学技术的发展,电网负荷结构发生了很大的变化,一方面,非线性、冲击性和不平衡负荷的大量增长使得电能质量恶化;另一方面,随着信息技术的发展。越来越多的敏感负载对电能质量的要求也越来越高。这就要求电能质量检测分析设备具有实时检测、快速分析、实时显示的能力。采用高性能数字信号处理器( DSP )和嵌入式计算机系统( ARM )双处理器架构设计电能质量分析仪能满足上述要求。 DSP 系统实现电压、电流信号的实时采集处理,通过加窗傅里叶变换和小波算法得到电能质量参数; ARM 嵌入式平台运行WinCE操作系统完成人机交互、数据存储、实时显示等功能。该系统为仪器的可扩展性和智能化建立了良好的软硬件平
[嵌入式]
基于CPLD的系统中I2C总线的设计
摘要:在介绍I2C总线协议的基础上,讨论了基于CPLD的系统中I2C总线的设计技术,并结合工程实例设计了I2C总线IP核,给出了部分源代码和仿真结果。
关键词:I2C总线 IP核 CPLD
I2C总线是PHILIPS公司推出的新一代串行总线,其应用日渐广泛1~2。目前许多单片机都带有I2C总线接口,能方便地实现I2C总线设计;对没有I2C总线的微控制器(MCU),可以采用两条I/O口线进行模拟。在以单片机为MCU的系统中很容易实现I2C总线的模拟扩展,有现成的通用软件包可以使用2~3。
对有些基于CPLD的系统,要与带有I2C总线接口的外围器件连接,实现起来相对复杂一些。为实现系统中的I2C总线接口,可以另外引入单
[应用]
基于DSP的智能电机保护器设计
前言
由于生产自动化及各种自动控制、顺序控制设备的出现,要求电机经常运行在频繁的起动、制动、正反传、间歇以及变负荷等各种方式。电机的运行要求越来越高。同时,由于电机与配套机械连在一起,当电机发生故障时,经常波及生产系统。因此,对电机实行有效的保护是保证生产系统正常工作的一项重要任务。
随着科学技术的发展,电机保护装置中逐渐使用了电子保护装置。在国外,目前电子保护装置已在电力系统和电机保护装置中获得了广泛应用,国内也开始推广 。电子保护装置的优点是:基本上由静止元件组成。它动作速度快,不存在机械位移和磨损,精度和寿命一般均比有触点继电器高,耐冲击和振动,可靠性好。另外,电子电路动作功率小,灵敏度高。
数字信
[嵌入式]
基于FPGA/CPLD和USB技术的无损图像采集卡
摘要:介绍了外置式USB无损图像采集卡的设计和实现方案,它用于特殊场合的图像处理及其相关领域。针对图像传输的特点,结合FPGA/CPLD和USB技术,给出了硬件实现框图,同时给出了FPGA/CPLD内部时序控制图和USB程序流程图,结合框图和部分程序源代码,具体讲述了课题中遇到的难点和相应的解决方案。
关键词:无损图像采集 图像处理 FPGA/CPLD USB SAA7111A
现场图像采集技术发展迅速,各种基于ISA、PCI等总线的图像采集卡已经相当成熟,结合课题设计了一款USB外置式图像采集卡。该图像采集卡已成功应用于一个图像处理和识别的项目中,由于图像信号不经过压缩处理,对后续处理没有任何影响,因此图像处理和识别的效果比
[半导体设计/制造]