具体来说,数字温度传感器的主要构成包括一个双电流源、一个Δ-ΣA/D转换器、数字逻辑和一个通向数字器件(如与一个微处理器或微控制器连接)的串行接口(如I2C总线、SMBus或SPI)。数字温度传感器有两种:本地或远程温度传感器,它们均采用某种方法强制两个成比例的电流通过一个连接成二极管形式的NPN或PNP晶体管,均用于测量所导致的VBE变化,使用Δ-ΣA/D转换器对电压采样并将数值转换成数字格式。强制电流一般采用约10:1的比例。通过强制施加比例电流和测量两个VBE的差值,可消除二极管上IS这一与工艺相关参数的一阶效应。 每个温度传感器在生产过程中均会进行调整,以便与要使用的二极管的理想参数匹配。远程二极管的特性取自2N3904/6。由于本地温度传感器在硅衬底上只是一个简单的NPN或PNP结构,远程温度传感器几乎总是集成一个本地温度传感器。因此,远程传感器的作用几乎总是像两个传感器一样。本地温度传感器在同一封装集成了一个热二极管。对于本地传感器,根据封装和位于IC衬底上的本地二极管,热时间常数(即达到zui终温度的63.2%所需的时间)为几分钟。总线负载过重或转换过快会造成器件自加热并影响温度精度。 温度数据变为可用所需的时间称为转换速率。该速率由器件内部振荡器和A/D分辨率决定,一般低于100Hz或长于10ms。转换速率越快,温度数据可检索的速度就越快,同时温度传感器消耗的功率也就越大。由于存在自加热效应,转换速率通常较低。 I2C总线或SMBus温度传感器的优点 zui流行的数字温度传感器是那些带有串行总线接口的传感器。温度传感器总线的选择很大程度上取决于所选微处理器或控制器上有哪些可用的接口。控制器的选择取决于工程师对其拥有的经验多少。对于需要经常进行数据流传输的系统数据,SPI是,因为它拥有较快的时钟速率,速率可从几兆赫兹到几十兆赫兹。然而,对于系统管理活动,如读取温度传感器的读数和查询多个从器件的状态,或者需要多个主器件共存于同一系统总线上(系统冗余常会要求这一点),或者面向低功耗应用,这时I2C或SMBus将是接口。下面几部分将介绍每种串行总线及其优缺点。 1.SPI SPI是一种四线制串行总线接口,为主/从结构,四条导线分别为串行时钟(SCLK)、主出从入(MOSI)、主入从出(MISO)和从选(SS)信号。主器件为时钟提供者,可发起读从器件或写从器件操作。这时主器件将与一个从器件进行对话。当总线上存在多个从器件时,要发起一次传输,主器件将把该从器件选择线拉低,然后分别通过MOSI和MISO线启动数据发送或接收。 SPI时钟速度很快,范围可从几兆赫兹到几十兆赫兹,且没有系统开销。SPI在系统管理方面的缺点是缺乏流控机制,无论主器件还是从器件均不对消息进行确认,主器件无法知道从器件是否繁忙。因此,必须设计聪明的软件机制来处理确认问题。同时,SPI也没有多主器件协议,必须采用很复杂的软件和外部逻辑来实现多主器件架构。每个从器件需要一个单独的从选择信号。总信号数zui终为n+3个,其中n是总线上从器件的数量。因此,导线的数量将随增加的从器件的数量按比例增长。同样,在SPI总线上添加新的从器件也不方便。对于额外添加的每个从器件,都需要一条新的从器件选择线或解码逻辑。在地址或命令字节后面跟有一个读/写位。数据通过MOSI信号写入从器件,通过MISO信号自从器件中读出。 2.I2C总线 I2C是一种二线制串行总线接口,工作在主/从模式。二线通信信号分别为开漏SCL和SDA串行时钟和串行数据。主器件为时钟源。数据传输是双向的,其方向取决于读/写位的状态。每个从器件拥有一个*的7或10位地址。主器件通过一个起始位发起一次传输,通过一个停止位终止一次传输。起始位之后为*的从器件地址,再后为读/写位。