您的位置 首页 模拟

一线式4通道逐次迫临式A/D转换器DS2450的功能特色和使用剖析

一线式4通道逐次逼近式A/D转换器DS2450的性能特点和应用分析-DS2450的内部结构如图1所示。光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS2450的地址序列码;64位光刻ROM的排列是:开始8位(20H)是产品类型标号,接着的48位是该DS2450自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个一线式器件的地址都各不相同,以便实现一根总线上挂接多个一线式电路。

1前语

DS2450是DALLAS公司出产的一线式4通道逐次迫临式A/D转化器,其输入电压规模、转化精度位数、报警门限电压可编程;每个通道有各自的存储器以存储电压规模设置、转化成果、门限电压等参数;一般方法下串行通讯速率达16.3kbps,超速作业时速率达142kbps,片内16位循环冗余校验码生成器可用于检测通讯的正确性;DS2450选用8引脚SOIC小体积封装方法,既可用单5V电源供电,也可选用寄生电源方法供电。电路正常作业时仅耗费2.5mW功率,不作业时耗费25μW。多个DS2450或其他功用的具有MicroLAN接口的一线式芯片能够并联,CPU只需一根端口线就能与许多一线式芯片通讯,占用微处理器的端口较少,可节约很多的引线和逻辑电路。

2DS2450的引脚摆放和内部结构

DS2450为8引脚SOIC型封装,其管脚功用如下:

1脚(VDD):作业电源接入端

2脚(N.C):空引脚

3脚(DATA):串行数据输入/输出端

4脚(GND):接地端

5脚(AIN-A):A路模仿电压输入端

6脚(AIN-B):B路模仿电压输入端

7脚(AIN-C):C路模仿电压输入端

8脚(AIN-D):D路模仿电压输入端

图1 DS2450的内部结构

DS2450的内部结构如图1所示。光刻ROM中的64位序列号是出厂前被光刻好的,它能够看作是该DS2450的地址序列码;64位光刻ROM的摆放是:开端8位(20H)是产品类型标号,接着的48位是该DS2450本身的序列号,最终8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个一线式器材的地址都各不相同,以便完结一根总线上挂接多个一线式电路。

关于一线端口,在ROM功用树立之前,其它功用是无法完结的。总线操控器有必要首要通过DATA引脚对DS2450供给7个ROM功用操控指令(8位)之一:(1)读ROM,指令字[33H];(2)匹配ROM[55H];(3)查找ROM[F0H];(4)越过ROM[CCH];(5)条件查找ROM[ECH];(6)超速越过ROM[3CH];(7)超速匹配ROM[69H]。其间,超速越过ROM或超速匹配ROM指令履行后,串行通讯速率可高达142kbps。假如多个器材衔接在一线上,这些指令对每个器材的64位ROM部分进行操作,并挑选出一个特定的器材。对选中的DS2450,履行下一步的A/D转化操控指令以及读写存储器的指令,一切指令或数据的读/写均从最低位开端。

3存储器安排方法

DS2450内部有24个地址毗邻的8位存储器,可将其分红3页,每页8字节。DS2450的存储器安排方法及各位意义如表1所示(高位地址为00H)。

第0页为A/D转化成果存储器,每个通道占2个字节16位,芯片上电复位时该页清0;其间00H、01H存储A通道转化成果,LSB?A为最低位,MSB?A为最高位;02H、03H存储B通道转化成果;04H、05H存储C通道转化成果;06H、07H存储D通道转化成果,对应位意义与A通道相同。

第1页为A/D转化操控与状况存储器,08H、09H对应于A通道,其他通道顺次类推,各位意义相同。RC3、RC2、RC1、RC0的组合操控A/D转化的精度位数,0000为16位、0001为1位、……、1111为15位;特别值得注意的是,若操控转化精度缺乏16位,则在转化成果的“低位”补0,凑足16位,因而读出成果的16位值中,哪些是有用位与RC3、RC2、RC1、RC0的组合有关。关于用作模仿量输入的通道,输出使能位OE有必要为0,不然模仿输入不被承受,转化成果一直全为0,而此刻输出操控位OC能够不必关怀。不必作模仿量输入的通道能够作为漏极开路的数字输出端,外接上拉电阻器和作业电源,在输出使能位OE=1时,若输出操控位OC写入1,则输出高电平,OC写入0,则输出低电平。IR操控输入电压规模,IR=1时模仿输入高限为5.10V,IR=0时输入高限为2.55V。AEH、AEL别离为高、低门限电压报警答应操控端;AFH、AFL别离为模仿输入是否超越规则的高门限、低于规则的低门限的状况指示位,若输入超限,相应位主动置1。上电复位标志位POR与通道无关,上电复位时4个POR主动置1,阐明操控字和门限值等未准备好,该位可用软件清0。表中为0的位无效,读出时一直为0且不能写入1。DS2450上电复位时,默许的操控/状况数据的低位为08H、高位为8CH,即4个通道均作为模仿输入通道、8位转化精度、输入高限2.55V、答应凹凸限报警。

第2页为各通道输入高/低限报警值存储器,10H寄存A通道低门限8位报警值、11H寄存A通道高门限8位报警值,其他通道顺次类推,各位意义相同。在判别是否超限时,只将存储的门限值与转化成果的高8位进行比较,然后主动改动AFH、AFL的状况。上电复位时,高限值主动设置为FFH,低限值主动设置为00H。

4转化与读/写操控

4.1转化操控

通过DS2450的DATA端串行送出转化指令字[3CH],随后送出通道挑选字和预置操控字,发动A/D转化器进行转化。DS2450的通道挑选字和预置操控字的各位意义如表2所示。

在通道挑选字中,对应位为1表明该通道参加转化。一起挑选多个通道时,其转化次序为A→B→C→D,未选中的通道被越过。其A/D转化的时刻可用下式近似计算:转化时刻=通道数×转化精度位数×80μs+160μs。当一切通道转化结束,发读存储器指令能够获得转化成果和对应的状况。

图3DS2450与微处理器的典型衔接图

预置操控字能够对相应通道的转化成果存储器进行预置。SET、CLR=00,不预置,坚持前次转化值;SET、CLR=01,转化前预置为全0;SET、CLR=10,预置为全1;SET、CLR=11,无效组合。

4.2存储器读/写操控

读存储器指令用于读取转化成果、作业状况、门限设定值等。总线管理器首要送出读存储器指令字[AAH],然后送出两字节的16位“开端数据”存储器地址,从总线上读取一个字节的数据后,地址主动加1,可紧接着读取下一个数据;当一页读完后,随后读取的两个字节为内部主动发生的16位循环冗余校验码,它由前面送出的指令字、地址、读取的存储器数据,依据表达式CRC16=X16+X15+X2+1生成,对校验码生成和使用的详细资料可参看相关文献。

写存储器指令首要针对第1页和第2页的存储器,意图是写入各通道的作业方法操控字和对应通道的高、低门限设定值。总线管理器首要送出写存储器指令字[55H],然后送出两字节的16位存储器开端地址,接着逐一送出要写入的数据,其地址也是主动加1。若在刚写完一个数据后履行读操作,读出的数据应刚好为前一次写入的数据,可利用这一特色对写入和读出的数据进行比较,以判别传输的正确性。

假如通过软件校验,发现了读/写中的传输过错,则有必要对芯片进行初始化,偏重新进行读写操作。

4.3DS2450的作业时序

DS2450的一线作业协议流程是:初始化→ROM功用指令→存储器读写/转化操控功用指令→传输数据。其作业时序包含初始化时序、写时序和读时序,在一般速度作业形式下,如图2(a)(b)(c)所示。

初始化时序包含总线管理器(主机)宣布的复位脉冲和DS2450反应送出的存在脉冲两部分,存在脉冲告知主机DS2450在线且已准备好;读/写时序规则了在DS2450的DATA端串行读写数据位时的时序合作要求。

5DS2450与单片机的典型接口规划

图3以MCS-51系列单片机为例,示出DS2450与微处理器的典型衔接。其DATA端接AT89C51的P1.0,选用外接电源供电方法,其VCC端用5V电源供电。此例中仅对D通道进行A/D转化,AIN-D接模仿信号输入;AIN-A,AIN-B外接上拉电阻器和电源,其输出作为D通道的高、低限报警。

假定单片机体系所用的晶振频率为12MHz,依据DS2450的初始化时序、写时序和读时序,别离编写了3个子程序:INIT为初始化子程序,发送复位脉冲并接纳存在脉冲;WRITE为写(指令或数据字节)子程序,READ为读数据子程序。一切要读写的指令或数据字节均放在A寄存器中(限于篇幅,省略源程序,有爱好者可向作者讨取)。

主机操控DS2450完结A/D转化一般有必要通过以下几个过程:初始化使DS2450准备好、发ROM功用指令和相应的64位光刻ROM数据选中特定芯片、写入作业方法操控字和高/低限值、发转化操控指令、读取转化值及状况。

例如,将D通道设定为5.1V输入规模、转化精度为12位、高报警门限为3.0V(96H)、低报警门限为2.0V(64H)、通道A和B作为报警输出、转化成果放在如下30H和31H的子程序CTLAD中。

;--------------------------

CTLAD:LCALLINIT;发复位脉冲并接纳存在脉冲

MOVA,#0CCH

LCALLWRITE;发“越过ROM”指令

;设置4个通道作业方法操控字,写入存储器地址从0008H开端

FSKZ:MOVA,#55H

LCALLWRITE;发“写存储器”指令

MOVA,#08H

LCALLWRITE;发低8位地址

MOVA,#00H

LCALLWRITE;发高8位地址

MOVA,#0C0H

;A通道漏极开路数字输出方法

LCALLWRITE;发A通道作业方法低字节

MOVA,#00H

;与报警、输入规模等设置无关

LCALLWRITE;发A通道作业方法高字节

MOVA,#0C0H

;B通道漏极开路数字输出方法

LCALLWRITE;发B通道作业方法低字节

MOVA,#00H

;与报警、输入规模等设置无关

LCALLWRITE;发B通道作业方法高字节

MOVA,#01H

;C通道不必,可随意设置

LCALLWRITE;发C通道作业方法低字节

MOVA,#00H

;C通道不必,可随意设置

LCALLWRITE;发C通道作业方法高字节

MOVA,#0CH

;D通道12位A/D转化方法

LCALLWRITE;发D通道作业方法低字节

MOVA,#0DH

;5.1V输入规模,答应凹凸限报警

LCALLWRITE;发D通道作业方法高字节

;设置D通道高/低限值报警值,写入存储器地址从0016H开端

BJSZ:LCALLINIT;发复位脉冲并接纳存在脉冲

MOVA,#0CCH

LCALLWRITE;发“越过ROM”指令

MOVA,#55H

LCALLWRITE;发“写存储器”指令

MOVA,#16H

LCALLWRITE;发低8位地址

MOVA,#00H

LCALLWRITE;发高8位地址

MOVA,#64H

;低门限报警值2.0V(64H)

LCALLWRITE;送D通道低门限存储器

MOVA,#96H

;高门限报警值3.0V(96H)

LCALLWRITE

;送转化操控字,发动A/D转化。

QDZH:LCALLINIT;发复位脉冲并接纳存在脉冲

MOVA,#0CCH

LCALLWRITE;发“越过ROM”指令

MOVA,#3CH

LCALLWRITE;发“转化操控”指令字

MOVA,#08H

;仅D通道参加转化

LCALLWRITE;发通道挑选操控字

MOVA,#40H

;D通道转化前预置为全0

LCALLWRITE;发预置数据操控字

;读取D通道转化成果,放在31H、30H

RDDT:LCALLINTI;发复位脉冲并接纳存在脉冲

MOVA,#0CCH

LCALLWRITE;发“越过ROM”指令

MOVA,#0AAH

LCALLWRITE;发“读存储器”指令字

MOVA,#06H

LCALLWRITE;发低8位地址

MOVA,#00H

LCALLWRITE;发高8位地址

LCALLREAD

MOV30H,A

;低位转化成果放在30H

LCALLREAD

MOV31H,A

;高位转化成果放在31H

RET

……

假如一线上挂接多个DS2450和其他一线式接口芯片、选用寄生电源供电方法、作业在超速形式、通讯中进行校验,则子程序CTLAD的编写就要杂乱一些,限于篇幅,这一部分不再胪陈。

责任编辑:gt

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部