基于TSL256x系列传感器实现光强度监测系统的设计

1 TSL256x简介

TSL2560和TSL2561是TAOS公司推出的一种高速、低功耗、宽量程、可编程灵活配置的光强度数字转换芯片。该芯片可广泛应用于各类显示屏的监控,目的是在多变的光照条件下,使得显示屏提供最佳的显示亮度并尽可能降低电源功耗;还可以用于街道光照控制、安全照明等众多场合。该芯片的主要特点如下:

◇ 可编程设置许可的光强度上下阈值,当实际光照度超过该阈值时给出中断信号;

◇ 数字输出符合标准的SMBus(TSL2560)和     I2C   (TSL2561)总线协议;

◇ 模拟增益和数字输出时间可编程控制;

◇ 1.25 mm×1.75 mm超小封装,在低功耗模式下,功耗仅为0.75 mW;

◇ 自动抑制50 Hz/60 Hz的光照波动。

2 TSL256x的引脚功能

TSL256x有2种封装形式: 6LEAD CHIPSCALE和6LEAD TMB。封装形式不同,相应的光照度计算公式也不同。图1为这两种封装形式的引脚分布图。

 基于TSL256x系列传感器实现光强度监测系统的设计_设计制作_制造/封装

图1 TSL256x封装

各引脚的功能如下:

脚1和脚3: 分别是电源引脚和信号地。其工作电压范围是2.7~3.5V。

脚2: 器件访问地址选择引脚。由于该引脚电平不同,该器件有3个不同的访问地址。访问地址与电平的对应关系如表1所列。

表1 器件访问地址与引脚2电平的对应关系

 基于TSL256x系列传感器实现光强度监测系统的设计_设计制作_制造/封装

脚4和脚6: I2C或SMBus总线的     时钟   信号线和数据线。

脚5: 中断信号输出引脚。当光强度超过用户编程设置的上或下阈值时,器件会输出一个中断信号。

3 TSL256x的内部结构和工作原理

TSL256x是第二代周围环境光强度     传感器   ,其内部结构如图2所示。通道0和通道1是两个光敏     二极管   ,其中通道0对可见光和红外线都敏感,而通道1仅对红外线敏感。积分式A/D转换器对流过光敏二极管的电流进行积分,并转换为数字量,在转换结束后将转换结果存入芯片内部通道0和通道1各自的     寄存器   中。当一个积分周期完成之后,积分式A/D转换器将自动开始下一个积分转换过程。微控制器和TSL2560可通过标准的SMBus( Sys     te   m Management Bus) V1.1或V2.0实现,TSL2561则可通过I2C总线协议访问。对TSL256x的控制是通过对其内部的16个寄存器的读写来实现的,其地址如表2所列。

 基于TSL256x系列传感器实现光强度监测系统的设计_设计制作_制造/封装

图2 TSL256x内部结构图

表2 TSL256x内部寄存器地址及作用

 基于TSL256x系列传感器实现光强度监测系统的设计_设计制作_制造/封装

4 TSL256x应用设计

TSL256x的访问遵循标准的SMBus和I2C协议,这使得该芯片软硬件设计变得非常简单。这两种协议的读写时序虽然很类似,但仍存在不同之处。下面仅以TSL2561芯片为例,说明TSL256x光强传感器的实际应用。

4.1 硬件设计

TSL2561可以通过I2C总线访问,所以硬件接口电路非常简单。如果所选用的微控制器带有I2C总线控制器,则将该总线的时钟线和数据线直接与TSL2561的I2C总线的SCL和SDA分别相连;如果微控制器内部没有上拉电阻,则还需要再用2个上拉电阻接到总线上。如果微控制器不带I2C总线控制器,则将TSL2561的I2C总线的SCL和SDA与普通I/O口连接即可;但编程时需要模拟I2C总线的时序来访问TSL2561,INT引脚接微控制器的外部中断。硬件连接如图3所示。

 基于TSL256x系列传感器实现光强度监测系统的设计_设计制作_制造/封装

图3 微控制器与TSL2561的硬件连接图

4.2 软件设计

微控制器可以通过I2C总线协议对TSL2561进行读写。写数据时,先发送器件地址,然后发送要写的数据。TSL2561的写操作过程如下: 先发送一组器件地址;然后写命令码,命令码是指定接下来写寄存器的地址00h~0fh和写寄存器的方式,是以字节、字或块(几个字)为单位进行写操作的;最后发送要写的数据,根据前面命令码规定写寄存器的方式,可以连续发送要写的数据,内部写寄存器会自动加1。对于I2C协议具体的读写时序,可以参考相关资料,在此不再赘述。TSL2561的软件设计流程如图4所示。

 基于TSL256x系列传感器实现光强度监测系统的设计_设计制作_制造/封装

图4 软件设计流程

限于篇幅,在此给出对TSL2561读写操作的部分程序:

unsigned char TSL2561_write_byte( unsigned char addr, unsigned char c) {

unsigned char status=0;

status=twi_start();//开始

status=twi_writebyte(TSL2561_ADDR|TSL2561_WR);//写TSL2561地址

status=twi_writebyte(0x80|addr);//写命令

status=twi_writebyte(c);//写数据

twi_stop( );//停止

delay_ms(10);//延时10 ms

return 0;

}

unsigned char TSL2561_read_byte( unsigned char addr, unsigned char *c) {

unsigned char status=0;

status= twi_start( );//开始

status=twi_writebyte(TSL2561_ADDR|TSL2561_WR);//写TSL2561地址

status=twi_writebyte(0x80|addr);//写命令

status=twi_start( );//重新开始

status=twi_writebyte(TSL2561_ADDR|TSL2561_RD);//写TSL2561地址

status=twi_readbyte(c,TW_NACK);//写数据

twi_stop( );

delay_ms(10);

return 0;

}

当积分式A/D转换器转换完成后,可以从通道0寄存器和通道1寄存器读取相应的值CH0和CH1,但是要以Lux(流明)为单位,还要根据CH0和CH1进行计算。对于TMB封装,假设光强为E(单位为Lux),则计算公式如下:

① 0《CH1/CH0≤0.50

E=0.030 4×CH0-0.062×CH0×(CH1/CH0)1/4

② 0.50《CH1/CH0≤0.61

E=0.022 4×CH0-0.031×CH1

③ 0.61《CH1/CH0≤0.80

E=0.012 8×CH0-0.015 3×CH1

④ 0.80《CH1/CH0≤1.30

E=0.001 46×CH0-0.001 12×CH1

⑤ CH1/CH0》1.30

E=0

对于CHIPSCALE封装,计算公式可以查看相应的芯片资料。

5 结论

采用TSL256x实现光强度实时监测的系统,具有精度高、成本低、体积小等优点。芯片内部集成了积分式A/D转换器,采用数字信号输出,因此抗干扰能力比同类芯片强。该芯片在光强监测控制领域已得到广泛应用。

43
102
0
63

相关资讯

  1. 1、联想电脑Win7如何禁止开机声音1425
  2. 2、360游戏大厅怎么禁止游戏热点开启?360游戏大厅游戏热点关闭教程1866
  3. 3、黄油相机怎么拍出有特色照片?黄油相机拍出有特色照片的方法3221
  4. 4、Win10系统systemserviceexception蓝屏如何解决?4509
  5. 5、如何远程关闭局域网内其他电脑?远程关闭局域网内电脑操作1789
  6. 6、Win7怎么进入安全模式?Win7进入安全模式的方法2594
  7. 7、如何设置重置微信二维码样式?设置重置微信二维码样式的方法3665
  8. 8、如何设置淘点点外卖闹钟淘点点外卖闹钟设置教程4359
  9. 9、电脑处理器哪种好?电脑处理器排行榜分享1005
  10. 10、Win10字体在哪里?手把手教你找到字体文件夹2089
全部评论(0)
我也有话说
0
收藏
点赞
顶部