新技术新工艺2016年 第12期 基于ADS7230与ADSP21363的SPI通信接口电路设计 杨 侃,金肖依 (北方电子研究院集团有限公司微电子部,江苏苏州215163) 摘 要:针对数字信号处理系统中的模拟信号转换的要求和系统连线简单、结构紧凑的考虑,采用串 行接口的A/D芯片来完成模拟信号转换成数字信号。根据TI公司的双通道、低功耗、高精度A/D转换 器ADS7230的性能特点,以及AD公司的SHARC系列ADSP21363内设接口特点,设计了基于AD— SP21363与ADS7230的SPI通信接口电路,并给出了接口的硬件电路图,SPI口串口通信软件程序流程 图,以及部分驱动程序代码。实际应用结果表明,该设计合理可行。 关键词:ADS723o;模数转换;SPI;ADSP21363 中图分类号:TP 334 文献标志码:A YANG Kan,JIN Xiaoyi SPI Communication Interface Circuit Design based on ADS7230 and ADSP21363 (Microelectronics Department,North Electronics Research Institute Group Co.,Suzhou 215163,China) Abstract:Mainly introduce ways of adopting serial interface of A/D chip to convert the analog signal into digital signa1. On the study of per[ormance characteristic of A/D converter ADS7230,it is characterized as dual channel,low power con— sumption,and high precision.The SPI communication interface circuit is designed based on ADS7230 and ADSP21363.Dis— play the hardware circuit diagram,SPI serial communication software program flow chart,and parts of drive codes.The ac— tual application shows that the design is reasonable. Key words:ADS7230,A/D converter,SPI,ADSP21363 数字信号处理器(DSP)的应用广泛,数据采集 与信号处理是DSP系统应用中不可分割的2个部 分。而自然界的信号多以模拟信号的形式存在,因 布线板级,本文选取TTSOP封装形式。 1.1.2模数转换芯片ADS7230工作原理 ADS723O拥有一个2至l输入多路复用器,使 此如果进行数字信号处理,则须进行模数信号的转 换。在DSP与A/D芯片连接时通常采用串口和并 得每个ADC都能将2个通道进行数字化,减少了组 件数,缩小了板级空间。ADS7230必须采用外部基 口等2种接口形式,并口接口的优点在于资源丰富, 但是使用过程中需要加入译码电路,这样不仅连线 复杂,增加了布线的面积,而且一定程度上或将引入 准源,外部参考电压为O.3~5 V,内部自带采样保 持功能。 ADS7230在数据转换时采用内部自带的时钟 干扰和不稳定的因素;串行接口的优势在于连线简 单、布线少,相对并口接口而言更稳定,但是硬件资 源较少。基于连线简单、结构更加紧凑方面的考虑, 一信号或通过SCLK管脚输入外部的串行时钟信号。 ADS723O自带的一个振荡器作为内部时钟,用于控 制模数转换的速度,时钟的最小频率为21 MHz。 该振荡器一直处于工作状态,除非芯片处于低功耗 些信号处理系统通常会采用串行接口的A/D芯 片 。 状态,或者使用可编程的外部时钟源SCLK作为转 换时钟_3]。采用内部时钟时,最小采样时间需要3 个时钟周期,转换时间需要12个时钟周期。当模数 转换的时钟源采用外部的串行时钟SCLK信号时, 1 SPI通信接口电路的硬件设计 1.1 模数转换芯片ADS7230的特点和工作原理 1。1.1模数转换芯片ADS7230的特点 使整个电路达到系统同步的效果。使用外部时钟信 号时具体时序如图1所示。 外部时钟最高可达50 MHz,SCLK首先将被 二分频成CCLK时钟周期,如果转换过程指定必须 在外部时钟信号的上升沿开始转换时,那么必须确 保CONVST和时钟信号SCLK上升沿之间的建立 时间,而这一配置确保了数据的转换能够在18个 TI公司的ADS7230是一款高速、低功耗、高性 能的电容逐次逼近型SPI接口A/D转换器,采样率 高达1 MHz。可以选择多种电源管理模式,并支持 菊花链接口模式和软件配置方式,工作电压为2.7 ~5.5 V,具有极好的直流和交流特性I2]。该器件 有16脚QFN和TSSOP等2种外形封装。为方便 84 I 《新技术新工艺》兵器技术研究 兵器技术研究 ADS7230外部基准采用5 V供电,数字供电范 围为1.65~5.5 V,取3.3 V工作电压,以匹配于 ADSP21363的i/o口电压,无需电平转换芯片 j。 ADSP21363的MOSI管脚对应连接ADS7230的数 据输入SDI管脚,MISO管脚对应数据输出SDO管 脚,时钟管脚SPICLK提供ADS7230的时钟控制管 脚SCLK,DPI—P9与ADS7230片选CS控制管脚, 图1 ADS7230外部时钟时序图 DPI—P17与ADS7230的转换开始标志CONVST管 CCLK时钟周期内完成。为了确保CONVST和时 脚相连。ADSP21363的EOC引脚为转换输出结束 钟信号的同步,该建立时间应≥20 ns。在大多数情 标志引脚。 况下,模拟转换在时钟信号SCLK的1个周期后就 2 SPI通信接口电路的软件设计 开始了,这样完成整个模数转换需要19个CCLK 时钟周期;因此,在实际应用中,对同步要求不是很 2.1 ADS7230串口转换时序 高的时候,没有必要用20 ns的建立时间。 ADSP21363和ADS7230都拥有各自的硬件 1.2 DSP处理器的选择 SPI接口,因此只需按照ADS7230的SPI的读写时 ADI公司的SHARC系列浮点DSP产品具有 序图编写软件程序。首先对ADS7230的SPI接口 运行速度快、片内资源丰富和接口齐全的特点。本 工作时序(见图3)进行分析。每一次操作循环是从 电路选择SHARC系列处理器的第3代产品AD— FS/CS下降沿开始的,首先是通过ADSP21363的 SP21363做DSP处理器,其主要优势在于:1)时钟 SPI的相关寄存器的设置,把其配置为从模式,接着 频率高达300 MHz,指令周期为3.3 ns,运算能力 对SPI的字长、波特率和时钟模式等进行相应的配 为1 800 MFLOPs,采用单指令、多数据运算方式, 置;然后通过ADSP21363的GPIO口的DPI—P9片 支持32 bit定点和32/40 bit浮点运算;2)片上存储 选ADS7230,并通过GPIO口的DPI—P17启动ADC 器容量大,SRAM为2 Mbit,ROM为4 Mbit;3)片 的转换,当转换控制输入CONVST到一个下降沿 上接口丰富,数字外设接口包括2个SPI、2个 时,片内采样保持器由采样模式转换为保持模式,保 UART、3个定时器和1个两线I C,数字应用接口 持模拟输入信号,并启动转换过程,此时EOS信号 包括8个串行端口SPORT、s/PDIF TX/RX、8通 一直保持低电平;转换完成后,EOS信号变成高电 道异步采样率转换器ASRC、4个精密时钟发生器、 平,CS信号置低,在ADS7230的输出脉冲SCLK的 16个PWM、1个TWI和32 bitSDRAM接口l_2]。 控制下,把12位的采集数据结果送到指定的存储单 特有的数字应用接口(DAI)和数字外设接口(DPI) 元。 均允许用户将任何外设引脚功能分配到他们想要的 任意一个引脚。这种灵活性显著减少了支持特殊系 统所需的外部引脚数量,有助于硬件设计的简化,进 一步降低成本。 1.3 ADS21363与ADS7230接口电路 图3 sPI通信时序图 ADSP21363具有2个SPI接口资源,采用串行 2.2软件实现 工作方式,不仅满足了采集的快速性要求,在硬件上 采集程序在VisualDSP++5.0环境下采用c 也较容易实现。ADSP21363的SPI接口与 语言编程,包括系统初始化程序、SPI接口配置程序 ADS7230硬件连接如图2所示。 等。ADS7230的内部寄存器一共16位,分为两部 分:4 bit的(CMR)命令寄存器和12 bit(CFR)配置 囊 囊 莹 寄存器。本电路采用查询方式读取SPI口数据 图 4为SPI口串口通信程序流程图。 图2 ADS21363与ADS7230接口电路示意图 《新技术新工艺》兵器技术研究 85 新技术新工艺2016年 第1 2期 开始 3 实验结果 ADS7230的输入模拟量Ⅵ 一2.5 V时的串口 通信记录图如图5所示。图5中.通道CHI为SPI、 的输出时钟SCI K,通道CH2为ADS7230的SDO ADsP初始化 ADS7230 SPI初始化(字长、 波特率、SPI控制寄存器) 引脚输出的12位数据。 启动ADS7230模数转换 跳平 \/ 上是 读取SPIRW(ADC—INI, ADSP21363SPI)数据 图5 串口通信记录图 4 结语 本文通过对TI公司的高速、低功耗12位A/D 图4 SPI口串口通信程序流程图 为了实现SPI接口通信,编写了两者接口的驱 芯片ADS723O与ADI公司的SHARC系列AD— 动程序,该驱动程序功能主要由以下2个函数完成。 1)ADSP21363SPI的初始化函数Init—SPI()。 InitSPI() SP21363的研究,设计了基于两者SPI高速串口通 信接口电路,实现了硬件电路和软件设计。该嵌入 式数据采集电路设计简洁,程序采用C语言在AD— SP集成开发环境VisualDSP++5.0下编写、调试 { SRU(HIGH,PBEN1 7I); 完成。该A/D芯片的字长和波特率配置灵活,传输 速度快,实现了与ADSP的SPI接口的串口通信, SRU(HIGH,DALPB17_I); SRU(HIGH,PBEN09I); 一满足了嵌入式数据采集电路的高速数据传输要求。 SRU(HIGH,DALPB09一I); ADS7230一SPI—Initial(10,WI 16);//初始化AD— 参考文献 [1]张扬.集成开关电源的数字功放模块的设计[D].成都: 电子科技大学,2009. SP21363的SPI口,频率10MHz,字长16bit SRU(IX)W,DAIPB09_1); —temp=SPIRW(Oxeffc,ADSP21363SPI); 一1 2 l Datasheet for ADS7230.Texas Instrument,Ine.2009 delayms(10oo); 1-33康华光,陈大钦.电子技术基础模拟部分[Mq.4版.北 京:高等教育出版社,1999. 一SRU(I OW,DAIPB09_I); —temp=SPLRW(0xe79d,ADSP21 363SPI); dat=SPIRW(ADC—IN1,ADSP21363SPI); —一1 4 I SHARC Processors ADSP一21361/ADSP一21362/ADSp- 21363/ADSp-21364.Analog Devices。Inc.2009 } 2)读数据函数。 unsigned int SPIRW(unsigned int cmd,unsigned int —作者简介:杨侃(I 979一),男,高级工程师,硕士,主要从事数 模混合集成技术和传感器应用技术等方面的研 究。 spiport) —{ unsigned int temp; asm(”rO= —收稿日期:2Ol6一O9—25 0;”::”d”(cmd)); 一责任编辑马彤 if(spiport一一ADSP21363SPI) { asm(”dm(TXSPI):r0;”); while(( pSPISTAT&RXS)!一RXS); } return temp;//返回SPI数据 } 86 l 《新技术新工艺》军民融合技术专栏