0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OMAP-L137与ADS1178数据通信的实现解决方案介绍

电子设计 来源:郭婷 作者:电子设计 2019-04-28 08:14 次阅读

引 言

串行外围设备接口(Serial Peripheral InteRFace,SPI)总线技术是Motorola公司推出的一种高速同步串行输入/输出接口,近年来广泛应用于外部移位寄存器、D/A转换器、 A/D转换器、串行EEPROMLED显示器等外部设备的拓展。SPI总线是一种三线同步总线(CLK、SI-MO、SOMI),可以共享,便于组成带多个SPI接口的控制系统。其传输速率可编程,连接线少,具有良好的拓展性。

ADS1178是一款典型的具有SPI接口的A/D转换器,它可以方便地与带有SPI接口的处理器控制器相连接。OMAP-L137是一款处理能力强、外接存储空间大、集成度高、外设管理方便的新型工控芯片

目前,ADS1178与OMAP-L137的数据通信主要通过SPI接口直接连接实现。通过配置,使OMAP-L137工作在主模式,ADS1178工作在从模式,由OMAP-L137提供用来进行数据传输的时钟。但是,采用此模式结合EDMA进行数据接收时,每接收一组采样数据都需要通过中断来改变接收数据的存放地址,即完成N组数据的接收需要N个中断来完成,这会给系统的资源管理带来很大的麻烦。

本设计使OMAP-L137、ADS1178的SPI接口工作在从模式,由CPLD作主片来提供进行数据传输的时钟。在准确、快速完成数据传输的同时,节省了处理器资源,方便了系统资源的管理。

1 硬件设计

1.1 芯片概述

ADS1178是TI公司于2008年9月推出的一款A/D控制芯片,它采用△-∑模/数转换器结构,可以达到16位的数据采集精度,并且拥有良好的交流特性。其带宽达25 kHz,具有97 dB的信噪比和-105 dB的总谐波失真。在正常工作时每通道的功耗只有31 mW,支持8路通道同时采样,并将数据依次连续地送上数据总线;在满足实时同步采样的同时,还具有52 ksps的转换速率。该芯片主要应用于三相交流电的实时监测、心电图监视器、质量流量计、振动系统的模态分析实验设计,同时还支持SPI和帧同步两种数据传输格式,并支持A/D间的级联。

OMAP-L137是TI司推出的针对工业控制领域的双核处理器,它综合了ARMDSP两个处理器各自在实时性和计算精度上的优势。两个处理器的主频均达到300MFHz(DSP的处理速度高达2 400MIPS/1 800MFLOPS)。可以外接2个存储空间EMIFA和EMIFB,并且在片上有着非常丰富的外设资源,主要针对工业应用环境的控制提供了EHRPWM、ECAP、EQEP、 EMAC等模块,并在各控制模块和各接口之间采用EDMA3模块进行数据传递。这大大减轻了双核处理器的负担,占用很少的处理器资源,同时在两个处理器之间开辟了一块128 KB的共享存储空间,可以使数据在双核之间快速地进行交换。

1.2 硬件原理

在SPI从模式下,设计使OMAP-L137、ADS1178作从片,CPLD作主片来提供进行数据传输的时钟。OMAP-L137的SPI接口支持3针、4针、5针三种传输模式,这里采用3针模式(即CLK、SIMO、SOMI)。OMAP- L137引出一个GPIO口作同步信号线SYCN,ADS1178的READY信号线送给CPLD用来产生采样时钟,硬件连接如图1所示。CLK用来传递接收和发送数据时的同步时钟信号,SIMO在OMAP-L137作主片时为输出数据线,在OMAP-L137作从片时为输人数据线。SOMI在此模式下不被采用。

OMAP-L137与ADS1178数据通信的实现解决方案介绍

OMAP-L137的SPI接口工作在从模式的配置如下:SPIGCR1寄存器的低2位配置为00,选择SPI工作在从模式;通过配置SPIPC0和 SPIPC1寄存器来选择采用的针模式和引脚的信号方向,这里选择使能CLK、SIMO、SOMI三根信号线,并分别配置为输入、输入和输出;配置 SPIFMT0寄存器先输出每组数据的“大端MSB”,根据ADS1178手册中对数据输出时序的要求,配置数据在CLK信号的下降沿输出,使CLK信号工作在13MHz,同时配置现在的数据总线为16位。SPI的参考配置如表1所列。

OMAP-L137与ADS1178数据通信的实现解决方案介绍

在采样数据送到OMAP-L137的SPI接口时,可以启动EDMA模块来对采样数据进行搬移。EDMA的触发事件为SPI的每一通道数据(16位)的接收中断,相当于完成一组(8通道)数据的传输需要8个触发事件。EDMA的参数相关配置如图2所示。其中,OPT、DSTCINT、SRCCIND和 CCNT都需要根据应用情况来进行参数配置。

OMAP-L137与ADS1178数据通信的实现解决方案介绍

2 软件设计

2.1 CPLD程序设计

CPLD中主要实现ADS1178对数据格式的要求。在检测到READY信号的电平变化后,以外部时钟ECLK为时钟基准,产生128个时钟周期 (CLK)分别送给OMAP-L137和ADS1178,来完成8通道的数据传输。图3为等效原理图,CPLD程序流程如图4所示。

OMAP-L137与ADS1178数据通信的实现解决方案介绍

OMAP-L137与ADS1178数据通信的实现解决方案介绍

2.2 采样程序设计

代码调试中的主要工作是测试同步采样A/D的8路通道。SPI和EDMA的参考配置及使能在上面已经完成。当ADS1178开始数据采集时,通过GPIO口由OMAP-L137先向ADS1178发送一个由低变高的同步信号来通知 ADS1178开始工作。当ADS1178完成了数据转换时,向OMAP-L137发送一个由高到低的READ-Y信号,通知OMAP-L137数据已经准备就绪,等待主芯片的时钟将数据送到数据线上;并在CPLD送出采样时钟后,等待EDMA的数据接收中断,当中断到来时完成数据的采集工作。采样程序流程如图5所示。

OMAP-L137与ADS1178数据通信的实现解决方案介绍

3 系统测试

通过示波器可以观测到CLK(图6中上面的曲线)和SIMO(图6中下面的曲线)引脚的波形图。采样结果放在数组Adresult中,如图7所示。

OMAP-L137与ADS1178数据通信的实现解决方案介绍

从图6和图7中可以看出,采用SPI从模式的数据传输方法,可以通过CPLD上的程序设计得到128个连续的采样时钟,数据传递的连续性好,每组时钟之间不存在时钟间隔。在程序处理的后续阶段,通过配置EDMA的接收事件就可以连续接收多组数据,在数据全部接收到OMAP-L137中时触发一次中断便可完成接收工作,从而节省了处理器资源。

4 结 论

在OMAP-L137与ADS1178的实时采集数据传递问题上,采用SPI主模式进行数据接收时,每接收一组数据后都需要通过中断资源来变更接收地址。而本文通过SPI从模式进行数据接收,可以在接收完多组数据后仅用一次接收中断便结束工作,节约了处理器资源,并且实际测试表明,传输数据的连续性和实时性较好。由此看出,采用SPI从模式配合CPLD来处理OMAP-L137与ADS1178数据通信问题无疑是一种很好的解决方案。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19159

    浏览量

    229104
  • cpld
    +关注

    关注

    32

    文章

    1247

    浏览量

    169201
  • 通信
    +关注

    关注

    18

    文章

    5969

    浏览量

    135849
收藏 人收藏

    评论

    相关推荐

    omap-L137这款处理器是否能跑vxworks操作系统

    omap-L137这款处理器是否能跑vxworks操作系统?如果能跑的话,是指在arm核里运行还是两核协调工作?
    发表于 06-21 00:54

    OMAP-L138与L137兼容吗

    现在使用OMAP-L137做设计,如果在OMAP-L138的开发板上开发的程序(使用137与138共有的硬件资源),能在137上运行吗
    发表于 06-21 16:08

    请问谁有八通道模数转换器ADS1178的前级数据采样电路?

    谁有八通道模数转换器ADS1178的前级数据采样电路(主要是对电网电压的采样),谢谢
    发表于 06-06 09:49

    ADS1178读的数据全部是0

    关于ADS1178:当前我们使用SPI数据模式.CLK的频率为250K.通道为全部有效,高电平状态.发送SYNC信号后,接收到DRDY信号下降沿,读取不到数据,全部为低电平.电路图如下所示.请问是什么原因造成的?
    发表于 06-13 06:58

    请问OMAP-L137的DSP的cache怎么打开?

    cache文档看的云里雾里的,看不懂。请问OMAP-L137的DSP的cache怎么打开啊?DSP是TMS320C674x,开发环境是CCS3.3谢谢啦~~~
    发表于 08-21 06:00

    OMAP-L137 pdf datasheet (低功耗应用

    The OMAP-L137 application processor offers multimedia performance combined with low power to enable
    发表于 08-07 23:08 46次下载

    ADS1178/ADS1178,pdf (Quad/Octa

    The ADS1174 (quad) and ADS1178 (octal) are multiple delta-sigma (ΔΣ) analog-to-digital converters
    发表于 06-03 16:50 34次下载

    航电数据通信综合解决方案

    本内容介绍了航电数据通信综合解决方案
    发表于 07-07 17:45 26次下载
    航电<b class='flag-5'>数据通信</b>综合<b class='flag-5'>解决方案</b>

    无线数据通信ZigBee测量解决方案

    根据IEEE 802.15.4 的标准需求以及ZigBee 的基本原理的介绍,全面介绍了罗德与施瓦茨公司对无线数据通信ZigBee 完整而成熟的测试解决方案
    发表于 03-28 16:06 6次下载

    OMAP-L137_C6000_DSP和ARM处理器技术参考手册

    The OMAP-L137 Processor contains two primary CPU cores: an ARM RISC CPU for general-purpose
    发表于 11-21 11:45 1次下载
    <b class='flag-5'>OMAP-L137</b>_C6000_DSP和ARM处理器技术参考手册

    OMAP-L137 C6000 DSP+ARM 处理器

    电子发烧友网为你提供TI(ti)OMAP-L137相关产品参数、数据手册,更有OMAP-L137的引脚图、接线图、封装手册、中文资料、英文资料,OMAP-L137真值表,
    发表于 10-17 14:27
    <b class='flag-5'>OMAP-L137</b> C6000 DSP+ARM 处理器

    ADS1174和ADS1178模数转换器(ADC)数据

    电子发烧友网站提供《ADS1174和ADS1178模数转换器(ADC)数据表.pdf》资料免费下载
    发表于 07-24 09:51 0次下载
    <b class='flag-5'>ADS</b>1174和<b class='flag-5'>ADS1178</b>模数转换器(ADC)<b class='flag-5'>数据</b>表

    OMAP-L137 OMAP-L137低功耗应用处理器数据

    电子发烧友网站提供《OMAP-L137 OMAP-L137低功耗应用处理器数据表.pdf》资料免费下载
    发表于 08-07 11:22 0次下载
    <b class='flag-5'>OMAP-L137</b> <b class='flag-5'>OMAP-L137</b>低功耗应用处理器<b class='flag-5'>数据</b>表

    OMAP-L137功耗汇总

    电子发烧友网站提供《OMAP-L137功耗汇总.pdf》资料免费下载
    发表于 10-12 09:28 0次下载
    <b class='flag-5'>OMAP-L137</b>功耗汇总

    OMAP-L137配套产品

    电子发烧友网站提供《OMAP-L137配套产品.pdf》资料免费下载
    发表于 10-14 11:11 0次下载
    <b class='flag-5'>OMAP-L137</b>配套产品