TSL2561传感器介绍
本文主要是http://wenku.baidu.com/view/a5d4c0c49ec3d5bbfd0a74d6.html的文章,主要不便于阅读,我处理编辑了下,方便大家查阅
TSL2561是光-数字转换器,它将光强转换成数字信号输出,具有直接I2C接口或者SMBus接口。每个设备都连接一个带宽的光敏二极管和在单独CMOS集成电路上的一个红外响应的光敏二极管,这个集成电路具有提供20bit动态范围的近-适光响应的能力。两个集成的ADCs将光敏电流转换成一个数字输出,这个数字输出表示测量每一个通道的发光。这个数字输出可以是一个微处理器的输入。在这个微处理器里亮度(周围光的水平)使用试验化公式来得到。TSL2560设备允许SNB
TSL256x是TAOS公司推出的一种高速、低功耗、宽量程、可编程灵活配置的光强传感器芯片。本文简要介绍了TSL256x的基本特点、引脚功能、内部结构和工作原理,给出了TSL2561的实用电路、软件设计流程连同核心程式。
关键词 光强传感器 TSL256x I2C总线积分式A/D转换器
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为这两种封装形式的引脚分布图。
图1 TSL256x封装
各引脚的功能如下:
脚1和脚3: 分别是电源引脚和信号地。其工作电压范围是2.7~3.5V。
脚2: 器件访问地址选择引脚。由于该引脚电平不同,该器件有3个不同的访问地址。访问地址和电平的对应关系如表1所列。
表1 器件访问地址和引脚2电平的对应关系
脚4和脚6:I2C或SMBus总线的时钟信号线和数据线。
脚5: 中断信号输出引脚。当光强度超过用户编程配置的上或下阈值时,器件会输出一个中断信号(用户配置上下阈值的作用是什么?)。
3 TSL256x的内部结构和工作原理
TSL256x是第二代周围环境光强度传感器,其内部结构如图2所示。通道0和通道1是两个光敏二极管,其中通道0对可见光和红外线都敏感,而通道1仅对红外线敏感。积分式A/D转换器对流过光敏二极管的电流进行积分,并转换为数字量,在转换结束后将转换结果存入芯片内部通道0和通道1各自的寄存器中。当一个积分周期完成之后,积分式A/D转换器将自动开始下一个积分转换过程。微控制器和TSL2560可通过标准的SMBus( System Management Bus) V1.1或V2.0实现,TSL2561则可通过I2C总线协议访问。对TSL256x的控制是通过对其内部的16个寄存器的读写来实现的,其地址如表2所列。
图2 TSL256x内部结构图
表2 TSL256x内部寄存器地址及作用
4 TSL256x应用设计
TSL256x的访问遵循标准的SMBus和I2C协议,这使得该芯片软件和硬件设计变得很简单。这两种协议的读写时序虽然很类似,但仍存在不同之处。下面仅以TSL2561芯片为例,说明TSL256x光强传感器的实际应用。
4.1 硬件设计
TSL2561能够通过I2C总线访问,所以硬件接口电路很简单。假如所选用的微控制器带有I2C总线控制器,则将该总线的时钟线和数据线直接和TSL2561的I2C总线的SCL和SDA分别相连;假如微控制器内部没有上拉电阻,则还需要再用2个上拉电阻接到总线上(为什么I2C需要上拉电阻)。假如微控制器不带I2C总线控制器,则将TSL2561的I2C总线的SCL和SDA和普通I/O口连接即可;但编程时需要模拟I2C总线的时序来访问TSL2561,INT引脚接微控制器的外部中断。硬件连接如图3所示。
图3 微控制器和TSL2561的硬件连接图
4.2 软件设计
微控制器能够通过I2C总线协议对TSL2561进行读写。写数据时,先发送器件地址,然后发送要写的数据。TSL2561的写操作过程如下:先发送一组器件地址;然后写命令码,命令码是指定接下来写寄存器的地址00h~0fh和写寄存器的方式,是以字节、字或块(几个字)为单位进行写操作的;最后发送要写的数据,根据前面命令码规定写寄存器的方式,能够连续发送要写的数据,内部写寄存器会自动加1。对于I2C协议具体的读写时序,能够参考相关资料,在此不再赘述。TSL2561的软件设计流程如图4所示。
图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转换器,采用数字信号输出,因此抗干扰能力比同类芯片强。该芯片在光强监测控制领域已得到广泛应用。
参考文献
[1] Texas Advanced Optoelectronic Solutions Inc. TSL2560,TSL256 LIGHTTODIGITAL CONVERTER, 2005.
[2] http://www.smbus.org/specs.
[3] http://www.semiconductors.philips.com/logic/i2c
问题,
1.用户配置上下阈值的作用是什么
2.i2c为什么要配置上拉电阻
I2C接口的输出端是漏极开路或集电极开路,所以必须在接口外接上拉。
上拉电阻的范围很宽,但也需要跟据功耗、信号上升时间等具体确定。
http://www.52rd.com/bbs/Archive_Thread.asp?SID=76730&TID=2
TSL2561传感器介绍相关推荐
- 超声波传感器介绍及其使用(STM32)
超声波传感器介绍及其使用(STM32) 超声波传感器型号 实物图 引脚 超声波传感器原理图 特点 工作原理 超声波传感器时序图 测量误差的产生 注意 超声波传感器部分代码 实验现象 源码获取 超声波传 ...
- 噪声传感器介绍和组成
噪声传感器介绍和组成 噪声传感器由电源模块.噪声传感模块.变送模块.漂零及噪声补偿模块.数据处理模块等组成.传感器内置信号采样及放大.漂零及噪声补偿功能,用户接口简洁.方便.外型小巧轻便,便于携带和 ...
- Sensors传感器介绍(一)
Develop > API Guides > Location and Sensors > Sensor OverView 传感器介绍 大多数android设备都配备了传感器以测量动 ...
- [转帖]Android操作系统11种传感器介绍
Android操作系统11种传感器介绍 在Android2.3 gingerbread系统中,google提供了11种传感器供应用层使用. #define SENSOR_TYPE_ACCELEROME ...
- MTK Android操作系统11种传感器介绍
Android操作系统11种传感器介绍 1 加速度传感器 2 磁力传感器 3 方向传感器 4 陀螺仪传感器 5 光线感应传感器 6 压力传感器 7 温度传感器 8 接近传感器 9 重力传感器 10 线 ...
- 微弱信号检测_机动车检测线常用传感器介绍
机动车检测线中经常会运用到各种传感器,这些传感器相当于车辆检测系统的"眼睛"."鼻子"和"耳朵",通过台体装置和装在台体中的传感器,能够把车 ...
- IoT -- (二) 物联网传感器介绍
传感器(Sensor)可以说是 物联网(Internet of Things, IoT)架构下,让智能自动化设备与智能联网产品,像是智能机器人.智能工厂.智能电动车.智能手环.智能医疗装置.智能家电. ...
- android传感器介绍
因为墙的原因翻译备用,先贴上原文链接:https://developer.android.google.cn/guide/topics/sensors/sensors_motion.html 传感器简 ...
- Android传感器介绍及指南针的实现
Android平台支持的丰富的传感器是其亮点之一,虽然相比iPhone来说稍有逊色,但相对于原来占据智能市场的Synbian等手机平台有一个明显的飞跃.我们现在看到的旅游出行必备的指南针,甩一甩就显示 ...
最新文章
- linux快速上手之多服务器间路由配置
- 【 FPGA 】组合逻辑中的竞争与险象问题(五)
- es6数组初始化_ES6 迭代器(Iterator)和 for...of循环使用方法
- Java NIO——Selector机制源码分析---转
- Marketing Cloud demo环境和API使用方法说明
- C++之类的静态成员变量和静态成员函数
- 如何完成一次Apache的版本发布
- neo4j docker
- 3D Max2018安装教程
- RDIFramework.NET ━ 9.10 岗位(职位)管理 ━ Web部分
- 【题解】【中国大学MOOC】(北京大学)人工智能与信息社会测验——8人工智能与人类社会未来
- Java+Springboot+Mybatis+Mysql+Bootstrap+Maven实现景区旅游管理系统
- Spring boot启动报错ERROR 5208 --- [ restartedMain] o.s.b.d.LoggingFailureAnalysisReporter
- windows 2008 R2 断电进入修复模式,并且无法使用usb键盘鼠标的解决方法
- deepstream视频数据流分析工具包安装使用教程
- 绿色版软件怎么添加鼠标右键菜单里
- android平板值得买吗,最值得买大推荐 全新安卓平板你选谁?
- python的快车智能车牌号码识别系统的开发
- mac 在连接wifi时出现 无互联网连接 的警告,叹号
- 设置git使用vimdiff比较差异