第三章 系统整体设计
本方案以STC89C52单片机系统为核心来对温度、湿度、光照度进行实时控制和巡检。各检测单元能独立完成各自功能,并根据主控机的指令对温湿度进行实时采集。主控机负责控制指令的发送,并控制各个检测单元进行温度采集,收集测量数据,同时对测量结果进行整理和显示。其中包括单片机、复位电路、温度检测、湿度检测、光照度检测、键盘及显示、报警电路、系统软件等部分的设计。
系统方框图如图3—1:
图3—1
3.1 信号采集
3.1.1 光照度传感器 1 TSL2561简介
TSL2561是TAOS公司推出的一种高速、低功耗、宽量程、可编程灵活配置的光强度数字转换芯片。该传感器具有数字式输出端口和标准 I2C总线接口,测
12
量的照度范围为1~70000lx,功耗仅为0.75mW。TSL2561具有高速、低功耗、宽量程、可编程配置的特点。可以编程设置光强度上、下报警阈值,当光照度超出该阈值范围时,INT管脚给出中断信号。该芯片的主要特点如下: (1)可编程配置许可的光强度上下阈值,当实际光照度超过该阈值时给出中断信号;
(2)数字输出符合标准的SMBus(TSL2560)和I2C(TSL2561)总线协议; (3)模拟增益和数字输出时间可编程控制;
(4)1.25 mm×1.75 mm超小封装,在低功耗模式下,功耗仅为0.75 mW; (5)自动抑制50 Hz/60 Hz的光照波动。 2 TSL2561的引脚功能
TSL2561有2种封装形式:6LEAD CHIPSCALE和6LEAD TMB。封装形式不同,相应的光照度计算公式也不同。图3—2为这两种封装形式的引脚分布图。
图3—2 TSL2561封装 各引脚的功能如下:
脚1和脚3:分别是电源引脚和信号地。其工作电压范围是2.7~3.5V。 脚2:器件访问地址选择引脚。由于该引脚电平不同,该器件有3个不同的访问地址。访问地址和电平的对应关系如表3—1所列。
表3—1 器件访问地址和引脚2电平的对应关系
脚4和脚6:I2C或SMBus总线的时钟信号线和数据线。
脚5:中断信号输出引脚。当光强度超过用户编程配置的上或下阈值时,器件会输出一个中断信号。
3 TSL2561的内部结构和工作原理
13
TSL2561是第二代周围环境光强度传感器,其内部结构如图3—3所示。通道0和通道1是两个光敏二极管,其中通道0对可见光和红外线都敏感,而通道1仅对红外线敏感。积分式A/D转换器对流过光敏二极管的电流进行积分,并转换为数字量,在转换结束后将转换结果存入芯片内部通道0和通道1各自的寄存器中。当一个积分周期完成之后,积分式A/D转换器将自动开始下一个积分转换过程。微控制器和TSL2561可通过标准的SMBus( System Management Bus) V1.1或V2.0实现,TSL2561则可通过I2C总线协议访问。对TSL2561的控制是通过对其内部的16个寄存器的读写来实现的,其地址如表3—2所列。
图3—3 TSL2561内部结构图
表3—2 TSL2561内部寄存器地址及作用
14
4 硬件设计
TSL2561能够通过I2C总线访问,所以硬件接口电路很简单。假如所选用的微控制器带有I2C总线控制器,则将该总线的时钟线和数据线直接和TSL2561的I2C总线的SCL和SDA分别相连;假如微控制器内部没有上拉电阻,则还需要再用2个上拉电阻接到总线上。假如微控制器不带I2C总线控制器,则将TSL2561的I2C总线的SCL和SDA和普通I/O口连接即可[6];但编程时需要模拟I2C总线的时序来访问TSL2561,INT引脚接微控制器的外部中断。硬件连接如图3—4所示。
图3—4 微控制器和TSL2561的硬件连接图 图3—5 软件设计流程 5 软件设计
微控制器能够通过I2C总线协议对TSL2561进行读写。写数据时,先发送器件地址,然后发送要写的数据。TSL2561的写操作过程如下:先发送一组器件
15
地址;然后写命令码,命令码是指定接下来写寄存器的地址00h~0fh和写寄存器的方式,是以字节、字或块(几个字)为单位进行写操作的;最后发送要写的数据,根据前面命令码规定写寄存器的方式,能够连续发送要写的数据,内部写寄存器会自动加1。TSL2561的软件设计流程如图3—5所示。
3.1.2 温度传感器 1 DS18B20简介
DSl8820是美国DALLAS公司最新推出的数字式温度传感器,与传统的热敏电阻有所不同的是它可直接将被测温度转化成串行数宁信号供微机处理,并且根据具体要求,通过简单的编程实现9位的温度读数。并且多个DSl8820可以并接到多个地址线上与单片机实现通信。由于每一个DSl8820出厂时都刻有唯一的一个序列号并存入其ROM中,因此CPU可用简单的通信协议就可以识别,从而节省了大量的引线和逻辑电路。 2 DS18B20功能特点 ? 3.0~5.5V单电源供电
? 微型化、低功耗、抗干扰能力强、易与微处理器接口 ? 温度测量范围为—55°C~+125°C,测温分辨率可达0.5°C ? 3引脚TO—92小体积封装或8引脚μSOP封装 ? 可编程为9位~12位A/D转换精度 ? 只需一根端口线就能与微处理器通讯
? 每只DS18B20有唯一的序列号并可存入其ROM中,便于实现多芯片多点测量
? 在使用中不需要任何外围元件 ? 用户可定义的非易失性温度报警设置
16