DS2450 A/D转换器的特性与应用
2009-02-24
作者:耿建平 陈尚松
摘 要: 简介了DS2450 A/D转换器的主要特性、工作原理、单总线协议及其设置方法,并具体介绍了DS2450在工程应用中与计算机的接口技术和软件编制特点。
关键词: DS2450 A/D转换器 单总线技术 接口技术
DS2450是美国达拉斯(Dallas)半导体公司1999年新推出的符合单总线协议的四路A/D转换器。每个输入通道有各自的寄存器组来存储输入电压的范围、分辨率和报警门限值以及当输入电压偏离指定范围时的使能标志。DS2450可与单片机端口的一个引脚(如P1.0)直接相连;也可与PC机的RS232串行口经适配器转换后相连,且可挂上多个DS2450,使用很方便。下面介绍DS2450的主要特性与工程应用。
1 DS2450主要特性
· 用户可编程设置输入范围(2.56V,5.12V)、分辨率(1~16位)和报警门限;
· 单电源工作(5V);
· 很低的功耗:工作时2.5mW,空闲时2.5μW;
· 内置多点控制器允许在一条公共单总线上对多个DS2450识别和操作;
· 响应模拟电压超过报警门限时的条件查找;
· 未用作模拟输入的通道可用作闭环控制的漏极开路的数字输出;
· 直接与微处理器端口的一个引脚相连,并以16.3kbps的速率通信;
· 超速模式下通信速率可达142kbps;
· 片上16位CRC生成器能确保数据传输的正确性;
· 出厂前激光刻录和经过测试的64位唯一注册号(8位族码+48位序列号+8位CRC校验码)能保证绝对的跟踪能力,因为没有两个部分是相似的;
· 8位族码规定了器件与总线命令者通信的需求;
· 工作温度范围从-40°C~+85°C;
· 紧凑,低成本,8引脚SOIC表面安装封装。
2 引脚说明
DS2450为8脚贴片式封装,如图1所示。
3 DS2450工作原理与设置
3.1 原理框图
DS2450单总线四路A/D转换器是一个具有四选一多路转换开关的逐次逼近A/D转换器。其内部组成原理框图如图2所示。
图2中上部是工作电源。器件通过单总线或者从VCC引脚取得功率。如果不用VCC供电,器件在单总线为高期间把能量储存在一个内部电容器上,并且在单总线为低期间继续以“寄生”功率为动力工作,直到单总线为高时才补充寄生(电容器上)能量。这就提供了足够的能量。要进行A/D转换,需要将单总线强上拉到5V,或者使用VCC供电。中部4个方框是单总线协议控制和CRC校验。每一个 DS2450出厂前用激光刻录注册号,此注册号包含一个唯一的48位序列号、一个8位CRC校验码和一个8位族码(20H)。DS2450的64位ROM部分不仅是器件绝对唯一的电子标识,而且是定位和寻址器件以实现控制功能的一种手段。CRC(Cyclic Redundancy Check)称为循环冗余码检测,是数据通信中校验数据传输是否正确的一种常用方法。下部3个方框是A/D转换器及选通和控制电路。
3.2 单总线协议
DS2450采用达拉斯公司数据传输的单总线协议。与DS2450的通信需要一根双向线,典型地可以是单片机端口的一个引脚。单总线协议的层次结构如图3所示。单总线命令者首先必须发送七个ROM功能命令中的一个命令。七个ROM功能命令分别是:①读ROM(读取64位注册号);②匹配ROM(总线上有多个DS2450时,寻址某个DS2450);③查找ROM(系统首次启动后,需识别总线上各器件);④条件查找ROM(只查找输入电压超过设置的报警门限值的DS2450);⑤跳过ROM(总线上只有一个DS2450时,跳过读ROM命令直接向器件发送命令,以节省时间);⑥超速跳过ROM(超速模式下跳过读ROM命令);⑦超速匹配ROM(超速模式下寻址某个DS2450)。在成功执行上述命令之一后,总线命令者可发送任何一个可使用的命令来访问存储和控制功能。所有数据的读写都是从最低位开始的。
3.3 器件存储器
DS2450所有的寄存器都映射到一个由相邻24个字节组成的线性内存范围内,分为3页,每页8字节。第一页叫做转换读出页,内部逻辑将转换结果放在此内存区域以让总线命令者读取。从通道A最低地址00开始,每个通道有一个16位的区域用来存放转换结果,如表1所示。为节省篇幅,表1、表2、表3只列出了通道D。
上电时转换读出寄存器缺省为全零。不管分辨率如何,转换结果的最高位总是在同一位置。如果分辨率小于16位,转换结果的低位将用零填充来产生一个16位结果。对于不需要四路模拟输入的应用,应当将D作为第一个通道,C作为第二个通道,依次类推。这样做的优点是当读取转换结果时,可以较快地到达页尾和读取CRC16,并且可使单总线上的流量最小。
通道控制和状态信息存于第二页,如表2所示。其第一字节的低四位控制A/D转换位数,如1111为15位。位5不起作用,始终为0。位6为输出控制,OC为0该通道可以输出。位7是输出使能,OE为1表示通道可控。第二字节的位0选择输入电压的范围。当IR为0时,是2.55V。当IR为1时,是5.10V。位1不起作用,读出总是0,且不能置为1。位2和位3分别是AEL(低限报警使能)和AEH(高限报警使能),控制器件是否将响应条件查找(见ROM功能)。位4和位5分别是报警标志AFL(低)和AFH(高),告诉总线命令者在上次转换中输入电压是否超过了最低或最高门限。如果新的转换不产生报警,那么这些标志将自动清除,也可不通过转换而由总线命令者写为0。位6读出总是0,且不能置为1。位7为器件上电复位状态,当器件执行上电复位周期时,POR自动置为1。如果该位为1,器件将总是响应条件查找命令,以便通知命令者控制和门限数据不再有效,但不会产生一个复位周期。上电完毕后,总线命令者需将POR位置为1。该过程可与恢复控制和门限数据一起进行。因为POR位与器件而不是具体通道有关,因此使用的是最近一次的设置值。上电时每个通道的控制/状态数据的第一个字节为08H,第二个字节为8CH。
每个通道的报警门限电压存于第三页,见表3。低报警门限位于第一字节,低报警门限上电时缺省为00H,高报警门限为FFH。报警设置总是8位。当分辨率大于或等于8位时,如果转换结果比存储在高报警寄存器(AFH)中的值大,或者比存储在低报警寄存器(AFL)中的值小,那么就会设置报警标志。当分辨率低于8位时,忽略报警寄存器的最低位。
地址18到1F为第四页,工厂校准时使用该页。用户可以通过读内存和写内存命令来访问该页,该页数据的改变会使DS2450校准失灵或者失去功能。如果DS2450由VCC供电,那么必须在上电完毕后向地址1C写入十六进制40来使模拟电路永久地保持在工作状态。
4 工程应用
在单总线系统中,挂上DS2450A/D转换器后,则可通过传感器把各种物理量变为数字经单总线送计算机进行处理了。图4展示了以PC机作控制时的气象监测系统的部分示意图。图5是以单片微机作控制时的环境测控系统的部分示意图。
5 软件设计
为保证数据可靠地传送,任一时刻单总线上只能有一个控制信号或数据。进行数据通信时应符合单总线协议,计算机对某一测控对象操作时,一般有以下四个过程:(1)初始化信号;(2)传送ROM命令;(3)传送RAM命令;(4)数据交换。每次传送的数据或命令是由一系列的时序信号组成的,单总线上共有四种时序信号:(1)初始化信号(复位信号);(2)写0信号;(3)写1信号;(4)读信号。软件设计时要产生这四种时序信号波形。
在单总线系统中,软件设计是技术的关键。简洁的硬件配置是靠复杂的软件来支撑的。随着主控计算机的不同,可分为PC机控制和单片机控制两种情况。
5.1 PC机控制
在这种情况下,使用达拉斯公司授权软件开发商(ASDs)的TMEX套装软件开发工具来进行软件设计。上述四种时序信号波形程序已包含在TMEX中,编程时可直接调用。TMEX其实是一些动态链接库,提供了对单总线芯片进行访问和控制的函数,它支持Microsoft Windows及DOS的各种软件平台,可采用C、C++、Borland Delphi、Microsoft Access和Visual Basic等可视化编程语言来开发;还支持DS9097U通用串行口转换器、DS9097、DS9087E及“真正”接地串行口转换器和DS1410E、DS1410D并行转换口。因此,可以设计精美、生动的界面,既可看到监控系统的总布局图,又可查看某个监控现场的状态数据和指示信号,达到了现代化、自动化的管理水平。
5.2 单片机控制
在这种情况下,要采用单片机的汇编语言编程。根据单总线协议的规定,要编写产生上述的四种时序信号波形的程序,手册中对这四种波形参数(如脉冲上升时间、宽度和间隙等)都作了具体的要求,设计中应保证指令执行时间小于或等于时序信号中的最小时间。由于使用汇编语言编写单总线的系统程序和具体的应用程序,相比之下,要比使用PC机控制麻烦多了。
参考文献
1 Dallas. Products Data Book,1999(网络版)
2 Dallas. Application Net Book,1999(网络版)
3 吴江,陈尚松. 单总线技术在测控系统中的应用. 电测与仪表,1999(9)