您的位置 首页 知识

串行数据转换器接口

本站为您提供的串行数据转换器接口,串行数据转换器接口
问:我现在需要安装节省空间的数据转换器,认为串行式转换器比较适合。为了选择 和使用这种转换器,请问我需要了解些什

串行数据转化器接口

问:我现在需求装置节约空间的数据转化器,以为串行式转化器比较适宜。为了挑选 和运用这种转化器,请问我需求了解些什么?


答:首要咱们看一下串行接口的作业原理,然后再将它与并行接口相比较,然后能够消 除对串行接口数据转化的神秘感。


图10?1示出了一种8通道多路转化12位串行式模数转化器(ADC) AD7890与一种带串行接 口的 数字信号处理器(DSP) ADSP?2105接线图。图中还示出了运用DSP与ADC通讯的时序图。通过 一根线以串行数据流的办法传输12位转化成果。串行数据流还包含3位地址,用来标明AD789 0当时被选中的多路转化器中的输入通道。为了区别不同组的数据串行位流,有必要供给时钟 信 号(SCLK),一般由DSP供给。有时ADC作为输出信号供给这种时钟信号。DSP一般(但不总是) 供给一个附加的成帧脉冲,它要么在通讯开端榜首个周期有用,要么在通讯期间(例如TFS/R FS)有用。
a1001.gif (66643 字节)
图10?1 串行式ADC与DSP之间的接线图

在这个实例中,运用DSP的串行端口来设置ADC内部5位寄存器。这个寄存器的位控功用包 括:挑选通道、设定ADC处于电源休眠办法和起动转化。显着,这种状况下串行接口必 须双向作业。


从另一方面来说,并行式ADC的数据总线直接(或或许通过缓冲器)与带接口的处理器的 数 据总线相连。图10?2示出了并行式ADC AD7892与ADSP?2101的接线图。当AD7892完结一次 转化后,中止该
a1002.gif (78471 字节)
图10?2 并行式ADC AD7892与ADSP?2001接线图


DSP,DSP呼应后,依照ADC的译码内存地址读一次数据。串行式数据转化器与并行式数据转化器之间的重要不同在于需求的衔接线数。从节约 空间的视点来看, 串行式数据转化器有显着的长处。由于它减少了器材的引脚数目,然后有或许做成8脚DIP或 SO封装的12位串行式ADC或DAC。更重要的是它节约了印制线路板的空间, 由于串行接口只需衔接几根线条。


问:我的数模转化器(DAC)有必要离中心处理器及其它处理器间隔很远。我最 好选用何种办法?


答:首要你有必要确定是运用串行式DAC仍是并行式DAC。当运用并行式DAC时,你应该确 定每个DAC进入存储器I/O端口的地址,如图10.3所示。然后你应该对每个DAC编程,将写命 令直 接写入恰当的I/O口地址。但这种结构具有显着的缺陷。它不光需求并行数据总线,而且到 一切远处的端口都需求一些操控信号线。可是串行接口只需求为数不多的两条
a1003.gif (24777 字节)
图10?3 多个并行式DAC接线图

线,显着它比并行接口经济得多。 一般说来,尽管串行式数据转化器不能对处理器的存储器寻址,可是能够把许多串行DA C接到处理器的串行端口上,然后运用处理器的其它端口发生片选信号来逐个地发动每个DAC 。片选信号尽管仅需求一条线就能将每个DAC都接到串行接口上,可是接到处理器上传输 片选信号线的数目或许遭到限制。


处理这个问题的一种办法是选用菊花链(daisy?chained)式结构,将所用的串行式DAC 都连在一同。图10.4示 出了怎么将多个DAC衔接到一个I/O端口上。每个DAC都有一个串行数据输出(SDO)脚,将榜首 个DAC(即DAC0)的SDO脚接到本菊花链中的下一个DAC(即DAC1)的串行数据输入(SDI)脚。LDAC 和 SCLK以并行办法被送到本菊花链中的一切DAC。由于在时钟效果下送入SDI的数据终究都要到 达SDO(N个时钟周期之后),所以一个I/O端口能够寻址多个DAC。可是这个I/O端口有必要输 出很长的数据流(每个DAC占的N位乘以本菊花链中DAC的数目)。这种结构的最大长处是不需 要对寻址的DAC进行译码。一切的DAC在相同的I/O端口上都有用。菊花链式结构的首要缺陷 是可达性(accessibility)或等候时刻长。即便要改动某一个DAC的状况,处理器也有必要从该 I/O端口输出悉数数据流。
a1004.gif (47570 字节)
图10?4 多个串行式DAC菊花链式结构

问:已然串行式数据转化器节约许多空间和线路,那么为什么不在每个要求节约空间的 运用场合都运用它们呢?


答:串行式数据转化器的首要缺陷是为了节约空间然后下降了速度。例如,对并行DAC 编程,只用一个写脉冲便能够把数据总线上的数据在时钟效果下送入DAC。可是,假如要把 数据写入串行DAC,那么DAC的位数有必要等于相继的时钟脉冲数(N位DAC需求N个时钟脉冲), 每个时钟脉冲后还要跟从一个装入脉冲。所以这种处理器的I/O端口与串行数据转化器通讯 要花费适当多的时刻。因而吞吐率高于500 ksps 的串行式DAC平常是罕见的。


问:我的8位处理器没有串行接口,有什么办法能够把一个12位串行 式ADC(例如AD7993)接到该8位处理器总线上?


答:当然我能够运用外部移位寄存器,将数据用串行(和异步)办法装入移位寄存器,然 后在时钟效果下进入处理器的并行端口。可是,假如这个问题的着眼点是“没有外部逻辑” ,那么能够把这个串行式ADC看作1位并行式ADC来衔接。将该ADC的SDATA脚接到该处理器 数据总线的一条数据线上,这儿接到数据线D0。如图10.5所示。运用某种译码逻辑电路 , 能使 该ADC的口地址看作是该处理器的一个存储器地址,以便用12个逐次读指令读取ADC的转化结 果。然后用附加的软件指令把12个字节的LSB组合起来,拼成一个12位的并行字。
a1005.gif (58359 字节)
图10?5 没有串行口的8位处理器与串行式ADC的接口

上面介绍的办法有时称作“位拆裂”(bit banging)。从软件的观念来看,这种办法是很 不经济的,可是当处理器的运转速度远远高于ADC的转化速度时,这种办法能够选用。


问:在前面的比如中,运用了处理器的写信号门控办法来 起动AD7893转化。请问这种办法是否有问题?


答:我很快乐你看出这一点。在这个比如中,每转化一次都要对AD7893的寻址存储器发 出一个空操作的写指令。尽管没有数据交流,可是处理器依然供给开端转化所需求的写脉冲 。从硬件的观念来看,这种结构十分简略,由于它不用再发生一个转化信号。


可是,对信号有必要进行周期性采样的沟通数据收集运用场合,不引荐这种办法。即便程 控处理器,对ADC宣布周期性写指令,写脉冲的相位颤动将会严峻下降实践得到的信噪比。 通过门控之后写脉冲会颤动得更坏。例如,假定采样时钟相拉颤动只是1 ns,对一个抱负的 100kHz正弦波来说,其信噪比会降到大约600dB(低于10有用位分辨率)。别的一个缺陷是, 过冲和采样信号噪声都会进一步下降模数转化的完整性。


问:我应该在什么时候挑选具有异步串行接口的数据转化器?


答:异步通讯办法答应设备之间交流信息,不用借助于时钟。为了运用相同的数据格式 ,有必要对设备初始化,其间包含设置一种传输速率(一般用波特率标明,或位数每秒)。还应 该规则转化成果怎么开端传送和完毕传送。咱们运用简略辨认的带有开端位和中止位的数据 序列来传送数据。传送进程还包含奇偶校验位,用来检测设备犯错。


图10?6示出了AD1B60数字化信号调节器与PC机异步通讯端口之间的接线图。这是一种3 线双向接口(为了简明,地线省去未画)。应该留意发送线与接收线在线路的另一端方位交流 。
a1006.gif (27744 字节)
图10?6 AD1B60与PC机之间的异步通讯接口


异步通讯线路对仅限于设备涣散式通讯运用场合是很有用的。由于在每次传送中都包 括开端位和中止位,所以设备在任何时刻只需输出其数据就能够开端通讯。别的设备之间 的接线数目也减少了,由于时钟和操控信号线都不需求了。


问:有一种ADC产品阐明在串行接口中引荐运用非接连时钟,为什么?


答:这种技能要求或许是指ADC在转化进程期间要求其时钟信号无效。有的ADC有这种要 求,由于接连的时钟信号能够馈送到ADC的模仿部分,反过来会影响转化成果。假如I/O端 口有一个帧脉冲,那么接连的时钟信号在转化期间或许变成不接连。这个帧脉冲用作门控信 号,只要在数据传递时才答应将串行时钟送到ADC。


问:怎么使设备与SPI或MICROWIRE接口规范兼容?


答:SPI(串行外围接口)与MICROWIRE别离是美国摩托罗拉公司和国家半导体公司研发的 串行接口规范。大多数同步串行式数据转化器都很简略与这两种接口衔接,可是在有些状况 下或许需求附加衔接逻辑(glue logic)。


问:好,我抛弃成见,在我的当时规划中决议运用串行ADC。我依照产品阐明的技能要求 刚刚把线路接好。当用MICROWIRE规范转化成果时,ADC的输出如同总是FFF HEX (不管 模仿输入电压怎么改动),这是怎么回事?


答:这或许是通讯问题。首要咱们需求查看ADC与处理器之间的衔接问题,即守时和操控 信号线是否接好。咱们还需求查看一下处理器的中止结构。与时序有关的或许差错有许多。你要想查看这个问题,首要将一切的时序信号要么接到逻辑分析仪上,要么接到多通道示波 器 上(至少需求3个通道才干一同检测悉数时序信号)。你在仪器的荧光屏上应该观察到相似图1 0.7所示的时序图。首要确保从微处理器或从独立的信号源发生一个发动转化指令CONVST) 。常见的过错是所施加的CONVST信号极性不对。尽管也能发动转化,但不是依照你希望的时 序转 换 。别的应该记住的是,一般要求CONVST信号有一个最小的脉冲宽度(典型值约为50ns)。一般 来自快速微处理器的写脉冲或读脉冲宽度都不能满意这个要求。假如脉冲宽度太窄,可用软 件办法刺进等候周期来增大脉冲宽度。
a1007.gif (44808 字节)
图10?7 串行ADC时序图

其次应该确保在读周期开端之前微处理器一直在等候模数转化完结。为了使微处理器产 生中止信号,你的运用软件应该知道完结A/D转化所需求的时刻,或等候ADC转化完毕(EOC) 宣布的指示信号。还要确保EOC信号极性正确,避免ADC在转化进程中会发生中止。假如微处 理器对中止不呼应,你应该查看软件中止的设置。


别的,假如转化器寻址不对,查看一下串行时钟序列(SCLK)的状况也是很有必要的。正 如 前面的评论所述,有些DAC和ADC在接连时钟效果下,作业不正常。除此以外,还有些DAC和A DC要求SCLK在某一指定状况总得有一个闲音(idles)。


问:我现在现已发现了我的软件中的问题和一些处理办法,使问题有所改进。当改动输 入电压时,ADC输出的数据也发生改动,可是转化成果如同不行辨认,这是怎么回事?


答:或许发生的差错源依然许多。ADC的转化成果或许直接用二进制数据办法标明,或许 用2的补码办法标明(BCD码用得不太多)。为了使微处理器承受适宜的数据格式,应该查看它 的装备。假如微处理器的装备不能直接承受2的补码,你应该将转化数据与100…00二进制数 进行异或操作,将其转化成二进制数。


一般运用串行时钟的前沿(上升或下降沿)选通ADC的数据输出而且进入数据总线。然后 运用时钟的后沿使数据进入微处理器。应该确保微处理器与ADC在同一转化条件下正常作业 ,确保一切准备时刻和坚持时刻都满意要求。假如串行ADC的转化成果刚好是希望值的一半 或二 倍时,这是一个告警信号,它阐明这个数字成果(尤其是MSB)是由于受过错的时钟边缘效果 。相同一个问题,关于串行DAC则表现为其输出电压刚好为希望值的一半或二倍。


驱动转化器的数字信号应该洁净。过冲或欠冲除对器材或许引起长时刻损坏以外,还能产 生转化差错和通讯差错。图10?8示出了用来驱动单电源转化器的时钟输入 具 有很大过冲的尖脉冲信号。在这种状况下,时钟输入驱动PNP晶体管的基极。依照常规,将 器材的P型衬底内部衔接到最负的电位,这儿为地。在SCLK线上大于地电位以下0?3V的起伏 完 全能使N型晶体管的基极和P型衬底之间的寄生二极管开端导通。假如经常呈现这种状况,而 且效果时刻很长,或许会导致器材损坏。
a1008.gif (31721 字节)
图10?8 过冲或欠冲波形及其损坏器材的机理


假如效果时刻很短,尽管不会损坏器材,可是会增强器材中一般不起效果的衬底对其它 晶体管的影响,然后导致将每个效果脉冲检测为多个时钟脉冲。这种脉冲颤动对串行式转化 器影响很厉害,而对并行式转化器则差一些。由于读周期和写周期一般都取决于所施加的 榜首 个脉冲,而后边的脉冲无关紧要。可是,假如在转化期间呈现这种搅扰信号,无论是串行还 是并行式转化器都要遭到噪声的影响。


图10?9示出了怎么很简略地减小过冲。在呈现问
a1009.gif (28926 字节)

图10?9 用来减小过冲的低通滤波器

题的数字输入信号线上串联一个小电阻。这个电阻与数字输入端的寄生电容 C par 结合起来可构成一个低通滤波器,然后可 以消除承受信号的任何振动。一般引荐运用50Ω的电阻,可是做一些试验或许是必要的。如 果数字输入端的内部电容不够大,还可在这个输入端加一个外接电容。这时试验是必要的, 但开端最好选10pF左右的电容。

问:你现已谈到时钟信号过冲会使转化器的噪声恶化。从接口技能的视点来看,是否有 其它办法来改进其信噪比?


答:由于你的体系在混合信号(模仿与数字)环境下作业,所以接地办法至关重要。你可 能知道,由于数字电路是一种噪声源,所以模仿地与数字地应该分隔,只在一点会集。这种 接地办法一般只用在电源上。实践上,假如模仿器材和数字器材共用一个电源,例如+5V或+ 3?3V单电源体系,只要衔接模仿地与数字地才干在电源回来,别无挑选。详细数据转化器 的 产品阐明或许辅导你对器材的AGND脚和DGND脚怎么衔接。假如在两点接地,那么应该怎么避 免发生接地环路呢?


图10?10示出了处理这种窘境的办法。关键在于数据转化器的引脚中符号的AGND和DGND 脚 都是相对转化器的部件而言的,用来与其它引脚衔接。数据转化器作为一个全体,应该按模 拟器材来处 理。所以将AGND和DGND脚衔接到一同后,应该用一根线接到体系的模仿地。假如真的这样做 ,会使转化器的数字电流流入模仿接地平面,但这样要比一般把转化器的DGND脚接到噪声数 字接地平面带来的损害要小。这个比如还示出了一个接数字地的数字缓冲器,用来使转化 器的串行数据引脚与有噪声的串行数据总线相阻隔。假如数据转化器的引脚与微处理器的引 脚直接相连,那么能够不用这种缓冲器。


图10?10还示出了怎么处理混合信号体系单电源


供电这样一个越来越引人重视的遍及性问题。正如接
a1010.gif (64878 字节)

图10?10 模仿地与数字地的接线办法
地相同,咱们将电路中的模仿部分与数字部分的电源线(最好是电源平面)分隔。咱们将 数据转化器的数字电源按模仿电源处理。可是有时候将模仿电源引脚与数字电源引脚用一种 电感的办法阻隔起来是很必要的。请留意,转化器的两个电源引脚都应别离接去耦电容器。 具 体产品阐明将引荐选用适宜的电容器,但好的经历规则是0?1μF。假如空间答应,每个器 件都应接一个10μF电容器。


问:我想在ADC与微处理器之间用光阻隔器规划一个串行接口。当我运用这些器材时,应 该知道些什么?


答:为了结构一个简略而又经济的高压阻隔器能够运用光阻隔器(又称光耦合器)。在数 据转化器与微处理器之间电流阻隔效果的经历还标明模仿体系的地与数字体系的地不用再连 接起来。正如图10.11所示,精细ADC AD7714 与通用的微操控68HC11之间的
阻隔串行接口只用3个光阻隔器便可完成。
a1011.gif (62855 字节)
图10?11 ADC与微处理器之间的阻隔串行接口


规划者应该知道,光阻隔器的上升时刻和下降时刻十分慢。它与CMOS数据转化器一同使 用会呈现问题,即便在串行通讯时以低速运转也是如此。CMOS逻辑输入端规划成用规则的逻辑“0”或逻辑“1”来驱动。在这种状况下,输入端 供给和吸收很少数的电流。可是,当输入电压处于逻辑“0”与逻辑 “1”之间的变迁状况时(0?8V到2?0 V)逻辑门耗费的电流数量即将添加。假如所用的光阻隔器的上升时刻和下降时刻适当慢,那 么绝大部分时刻都糟蹋在“死区”,然后发生逻辑门的自热。这种自热导致逻辑 门的阈值电压向上漂移,然后导致转化器将一个时钟脉冲看作多个时钟脉冲。为 了避免这种阈值颤动,应该运用施密特触发器来缓冲来自光阻隔器的信号线,以便将快速、 陡沿的时钟信号传送给数据转化器。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/70509.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部