基于ADmC812和DSP实时数据采集系统设计

2011-11-12 10:32:19来源: 互联网

引言 

    ADmC812是ADI公司的以8051(8052)内核为控制核心的新型微转换器。由于ADmC812内部集成了大量的外围设备。它本身就是一个完全可编程、自校准、高精度的数据采集系统,可以取代传统的MCU+A/D+ROM+RAM高成本、大体积产品,尤其是它的高精度和高速度A/D模块,特别适应于智能传感、瞬时获取、数据采集和各种通信系统。但是,对于需要采集数据量大、运算复杂、实时性又要求较高的场合,由于在结构和速度上的限制,往往是无法满足要求的。本文针对这种情况,提出了基于ADmC812和DSP的数据采集系统。在这个系统中,ADmC812作为主机,完成ADC、DAC、显示、键盘等功能,而DSP作从机,专注于复杂的数据运算,两者通过通用的SRAM实现数据的交换和通信。


                             系统结构图

    ADmC812和TMS320F206简介

    ADmC812微转换芯片

    ADmC812是具有16位计数/定时和32条可编程I/O接口的8051/8052微控制器,内置一个8通道、5ms转换时间、精度自校正、12位逐次逼近的ADC;2个12位DAC,10.5KB的闪存EEPROM,256字节的SRAM。还包括一些重要功能模块,如看门狗定时器和电源监控器,ADC与数据存储器之间的DMA方式,存储保护功能,一个通用异步串行收发器(UART)、SPI和I2C总线接口。

    ADmC812内丰富的外设,使它不需要外部总线扩展就可以组成一个完整数据采集系统,有很高的性价比。更值得注意的是在ADmC812内集成了8路12位高精度、自校准4ppm/℃的ADC电路。而且,当工作条件(如时钟频率、模拟输入范围、基准电压或电源电压)发生变化时,为了得到高精度的ADC结果,可以用软件对ADmC812内4个用于校正的特殊功能的寄存器设置,达到进一步校正ADC的目的。ADmC812通过设置ADCON1~3 三个特殊功能寄存器,可以使ADC工作于3种不同的模式,实现单次转换、连续转换和DMA模式的A/D转换,可以根据具体的需要选择,在DMA模式下,允许ADC在每次设置寄存器ADCCON1~3后连续采样,并将结果写入外部RAM中。这种自动捕获功能大大地方便了主从处理器之间的数据交换。

    数字信号处理器TMS320F206

    TMS320F206(以下简称F206)是TI公司生产的TMS320C2000系列DSP之一。是继C2X和C5X之后推出的低价格高性能的16位定点DSP,由于它采用了改进的哈佛结构,具有分离的程序总线和数据总线,采用四级流水线作业,其运行速度可达40MIPS,具有高速运行的特点。同时提供丰富的指令集,增强的模块化结构设计,使它通用化得以提高,应用领域不断拓宽,现已成为高档单片机的理想替代品。F206片内有32K的闪速存储器,用户通过F206自带的、符合IEEE标准1149.1的JTAG接口,可以对程序进行仿真与调试,并将程序代码烧录到片内,极大地方便了用户的系统设计与程序调试。

    TMS320F206提供直接存储器访问(DMA)功能,通过使用HOLD操作允许对外部程序、数据以及I/O空间进行直接存储器访问。该过程是由、两个信号控制。外部设备可以把引脚驱动到低电平,从而请求对外部总线的控制。如果中断线被允许,那么将触发中断。F206在相应中断时,软件逻辑可以使处理器发出应答信号,表示它将放弃对外部总线的控制。根据,外部地址信号(A15~A0)、数据信号(D15~D0)以及存储器控制信号(、、、、、、)被置为高阻状态,实现DMA功能。

    系统硬件设计

    系统的硬件结构如图1所示,存贮器62256作为DSP的全局数据存储器,同时又是ADmC812的外部存储器,两控制器分别通过总线和数据存储器62256相连,实现存储器共享。为了保证两控制器能分别独立地工作。在ADmC812和62256之间插入了4片74HC245进行总线隔离。这样,在ADmC812的控制下,每一时刻只有一个控制器访问62256。图中62256作为ADmC812的外部存储器,A15为片选信号,地址范围为8000H~FFFFH;作为F206的全局数据存储器,用作片选线,使用高端32K字地址范围(8000H~FFFFH)。两片选信号经一与非门和62256的片选线CS2相连,实现片选信号的隔离。

    ADmC812通过P1.0、P3.2(INT0)分别和DSP的、XF脚相连,由P1.0向DSP申请总线控制,在DSP响应ADmC812的请求后,DSP的CPU被挂起,并出让外部总线。ADmC812通过A15打开总线驱动器,并经与非门后选中62256,获得62256的控制权,实现对62256的读写操作。而F206也可以通过向ADmC812请求中断,ADmC812在响应中断INT0后,进行相关事务的处理。另一方面,ADmC812通过读引脚的电平,可以确认F206是否被挂起;而通过对脚的控制,实现F206程序的分支转移,增加系统的灵活性。

    整个系统分为事务性模块和数据处理模块,ADmC812控制事务模块,进行数据的采集、LED显示、开关量的输入输出,模拟量的输出及串行通信等功能。F206控制数据处理模块,主要进行数据的处理,完成复杂的算法。另外,也可以根据数据处理结果直接处理一些重要的出口控制功能,以弥补ADmC812 I/O端口的不足,加快系统的反应速度。两个相对独立的功能模块通过62256进行数据交换。

    系统软件设计

    由于系统的两个模块在功能上相对独立,相应的软件也包括两个主要模块,ADmC812在程序加载完成后,就进入程序正常运行。系统初始化后,首先通过P1.0向F206请求DMA操作,且得到响应后,ADmC812获得62256控制权。这时,通过配置3个特殊功能寄存器ADCCON1~3,可以使ADmC812工作在不同的模式下。其中在DMA模式下,ADC可以连续转换,并把采样值捕获到外部RAM空间而不需要来自微处理器的任何干预,由中断位ADCCON2.7表示DMA转换结束。在A/D转换结束且采样点达到预定的数量后,ADmC812就通过ADC中断,放弃对62256的控制并通知DSP进行数据处理。而后ADmC812进入显示、键功能、I/O操作、串口通信等事务性的工作。

    F206在接收到ADmC812的DMA请求后,进入到等待状态,并放弃对外部总线的控制权。62256通过ADmC812获得采样数据,当采样结束后,DSP从等待状态返回到正常运行状态并获得总线的控制权,进行数据处理,将运算结果放回62256。F206的DMA操作过程是:F206引脚/上获得一个有效的下降沿,当CPU转移到0002H地址单元,CPU从0002H地址单元提取中断矢量并进入中断服务程序,在对MODE=0进行成功的测试后,该中断服务程序就执行一个IDLE指令,使F206进入到等待状态。当检测到/脚上的一个上升沿后,CPU退出IDLE状态,并使外部总线返回其正常状态,执行数据处理程序。

    软件使用C语言设计,分别在两个开发系统上进行程序设计和调试。利用ADI公司提供的软件开发工具,能够快速高效地完成ADmC812应用程序的设计,并通过ADmC812的通用串行口在线调试和代码下载。F206用闻亭公司提供的TDS-510开发工具进行软件设计。最后将ADmC812和F206进行联机调试,完成整个软件的开发。

    结语

    以上设计方案,适合于采集数据量大、算法复杂、有一定实时要求的应用领域。由于双CPU系统无需额外的附加双口RAM、FIFO及复杂的控制电路,降低了成本,简化了电路,也扩展了ADmC812的应用范围。

关键字:ADmC812  DSP  实时数据采集

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/2011/1112/article_3930.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
ADmC812
DSP
实时数据采集

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved