标题:
一种基于ARM的多路同步的A/D和D/A设计
[打印本页]
作者:
520503
时间:
2014-8-8 13:04
标题:
一种基于ARM的多路同步的A/D和D/A设计
关键字:数据采集 多路同步 高精度 ARM
介绍一种基于ARM的
高精度
多路同步
的
数据采集
与输出控制系统的设计方法。设计选用德州仪器公司生产的AD芯片ADS8556和DA芯片DAC8574,分别采用SPI接口和IIC接口与ARM9芯片S3C2440连接,阐明其硬件设计与软件设计方法。系统可实现多路且同步、高速高精度的数据采集与输出控制功能。
ARM
处理器
是一种32位精简指令集RISC
微处理器
,片内集成了丰富的硬件资源,广泛的应用于许多
嵌入式
系统中。S3C2440是一款基于ARM920T内核的32位RISC嵌入式处理器,运行主频可达400MHz。本文阐述选用S3C2440处理器设计的一种同步、高速、高精度、多通道的数据采集与信号输出系统的设计方法。
1 多路同步A/D设计
1.1 ADS8556的功能
系统选用TI公司生产的16位6路同步逐次逼近型模数转换芯片ADS8556。输入模拟信号电压范围为-12V~+12V。常规应用下功耗为251.7mW,最大功耗为298.5mW,信噪比可达91.5dB。ADS8556芯片内部包含6个独立的采样保持模块和对应的6个独立的模数转换模块,可实现对6路信号的同时同步的模数转换。ADS8556工作模式分为硬件模式和软件模式,本设计采用硬件模式。在硬件模式下ADS8556的功能设置(如每对通道的转换使能、参考电压选择等)都是通过对相关引脚设置高低电平实现的。ADS8556支持并行和串行接口方式,本设计采用串行SPI接口与S3C2440连接。采用串行接口的优点是节约S3C2440的引脚资源,S3C2440绝大多数引脚是功能复用的,若采用并行接口会占用其16个I/O引脚资源。
ADS8556具有3个串行数据输出端口SDO_A、SDO_B、SDO_C,转换结果通过端口使能可选择这3个串行端口中的1个、2个或3个工作。当3个端口都选用工作时,每个串行端口上输出对应2路每路16位共32位的转换结果,输出时间需要32个时钟周期,每路最大采样率可达450kS/s。当选择2个串行端口时,每个端口输出3路共48位转换结果,输出时间需要48个时钟周期,每路最大采样率可达375kS/s。由于S3C2440只有2个SPI串行接口,所以至多选择ADS8556的2个串行输出端口与其连接。
1.2 ADS8556与S3C2440接口电路设计
本设计选用ADS8556的1个SPI串行输出端口SDO_A与S3C2440的1个SPI接口SPI0连接,SDO_A端口输出全部6路共96位转换结果,输出时间需要96个时钟周期,每路最大采样率可达250kS/s。SPI串口以主从方式工作,S3C2440作为主机,ADS8556作为从机,需要4根或3根线连接,3根用于单向传输,4根连接线分别是MOSI(主机输出/从机输入),MISO(主机输入/从机输出),SCLK(时钟信号),CS(片选使能),连接方式如图1所示。其中SPI0接口只用了3根连接线SPIMISO0、SPICLK0和NSS0,未使用SPIMOSI0,这是由于本设计选择ADS8556工作于硬件模式,S3C2440没有给ADS8556输入数据,其功能的设置(如每对通道的转换使能、参考电压选择等)都是通过对相关使能引脚设置高低电平实现的。若在软件模式下,这些功能的选择是由S3C2440通过SPIMOSI对ADS8556内部相应寄存器进行赋值实现的,此时其相关使能引脚均接地。
图1 ADS8556与S3C2440接口连接示意图
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0