4.2 串行接口
TMP275的两线数据线SDA和时钟线SCL兼容I2C协议,而且只能作为从器件。它支持快速模式(1~400kHz)和高速模式(1 kHz~3.4 MHz)。该器件的地址是由固定的高4位1001以及受控于A0、A1、A2的低3位决定。
4.2.1 I2C总线综述
初始化传输的设备称为“主设备”,受主设备控制的是“从设备”。主设备产生串行时钟(SCL),控制总线接入,以及产生启动(START)和停止(STOP)条件。只有在总线不忙时,才可以传送数据。在传送期间,时钟信号线为高电平时,数据线SDA必须保持不变;只有在启动/停止信号到来后,数据线SDA才能改变。
TMP275作为从设备,只有接收到启动信号后,芯片才开始工作。若接收到的地址无误,则发出一个确认信号,并根据R/W位的状态进行读/写操作。当停止信号到来后,所有工作结束。
4.2.2从设备接收模式
接收模式下,主设备先向TMP275发送TMP275的地址信息和状态信息(R/W=0),然后发送数据,写入地址指针寄存器。下一个字节或者几个字节再依据指针寄存器的内容写入相应的寄存器。对于每一个成功接收到的数据,TMP275都将发送确认信息。主设备通过发送停止信号而终止数据传输。
4.2.3从设备发送模式
发送模式下,主设备先向TMP275发送TMP275的地址信息和状态信息(R/W=1),然后读取由地址指针寄存器指定的数据。对于每一个成功接收到的数据,TMP275都将发送确认信息。主设备通过发送停止信号而终止数据传输。
5、TMP275在家庭环境监控中的应用
5.1 节点简介
本文的讨论是以基于蓝牙(Bluetooth)技术的家庭环境监控系统的节点为平台,介绍温度传感器TMP275在环境监控中的具体应用。该节点包括处理器、蓝牙模块、温度传感器TMP275和电源4部分,如图4所示。
5.2 处理器部分和温度传感器部分
节点处理器选用AVR单片机ATmega128。它是基于AVR RISC结构的8位低功耗CMOS微处理器。由于其先进的指令集及单周期指令执行时间,ATmega128的数据吞吐率高达1 MIPS/MHz,从而缓解了系统在功耗和处理速度之间的矛盾。
ATmega 128提供一种兼容于I2C的TWI总线接口,因此TMP275的SDA和SCL引脚可以直接与处理器的引脚相连,另外还需接上拉电阻。TMP275的报警输出方式设置为低电平输出,接有上拉电阻。A0、A1和A2全部接低电平,这样TMP275器件的写地址为0x90,读地址为0x91。TMP275的连接原理图如图5所示。