基于BH1750芯片的测光系统设计与实现
目前,大多数测光系统的光强采集元件都是使用光电三极管或光电池. 由于信号放大电路、A/D转换电路等是这两类采集元件必不可少的部分,其系统设计的复杂度较高. 高级的测光系统还需要设计多档放大电路来实现大量程测光. 这些电路无疑增加了传统测光系统的能耗和空间开销,降低了其灵活度. 并且传统的测光系统非常容易受到如红外线、紫外线等非可见光的干扰.
本系统采用新型单片测光芯片BH1750,较好地解决了传统测光系统的弊端[1]. BH1750是半导体制造商ROHM为适应以移动电话手机为首的便携式机器和液晶电视等的要求而开发出的具有优良光谱灵敏度特性、16bit串行输出的单片数字照度传感器. 由于其面世不久,关于它的资料十分稀少,目前有关BH1750的实用资料仅有一份其官方网站发布的英文版芯片手册. 本文在参考该手册基础上,结合笔者的实际测试经验,主要以源程序并适当解释为读者呈现出用51系列单片机[2,3]配合BH1750的简单使用实例,为相关开发人员提供一定的借鉴参考.
1 系统设计
1.1 硬件框架
在该系统中,主控器为宏晶公司的51系列单片机STC12LE5A60S2,光强传感器使用BH1750,人机界面为显示部分+控制按键. 显示部分采用2.0寸176×220分辨率TFT彩色液晶屏. 由于本文的重点在BH1750部分,其他部分如显示屏驱动等从略.
图1是系统的硬件框架图. 主控器通过IIC(Inter -Integrated Circuit)通讯接口读取BH1750采集到的数据,然后按照用户要求的形式通过界面将数据呈现. 从系统的框架图可以看出,使用BH1750搭建测光系统相对比较简单. 因此,开发人员可以很容易地将此IC嵌入到其他需要测光功能的系统中,从而降低系统的复杂度.
1.2 BH1750与单片机的接线图.
如图2所示,BH1750只需占用主控器的3个I/O端口就可以正常工作. 如果系统需要是采用多片此IC,则每两片BH1750可以共用这3个I/O端口,只需将其中一片的地址脚ADDR接高电平,另一片接低电平就可以互不干扰. 主控器将通过不同地址访问不同 IC. 文中系统评估部分的两片BH1750就是使用这种接法.
1.3 BH1750的通讯协议及过程
BH1750与主控器之间的通讯使用标准的IIC通讯协议. IIC总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备. IIC总线在传送数据过程中共有三种类型信号,它们分别是:开始信号、结束信号和应答信号.
主控器通过IIC接口向BH1750发送各种控制命令以及读取测量数据.
(1)主控器向BH1750发送控制命令步骤:①主控器产生通讯启动信号;②主控器发送8bit的地址数据(其中地址的最后一位应为0,表示写命令);③主控器读取BH1750的应答信号;④主控器发送8bit的命令数据;⑤主控器读取应答;⑥主控器产生停止信号.
相关文章
- 2023-02-27梳齿式微加速度计优化设计与仿真分析
- 2022-09-23基于CAN总线的电气火灾监控系统设计
- 2022-07-05一种嵌入式ARM开发平台设计与实现
- 2024-10-09PIV应用于气固多相流动的研究现状
- 2024-08-19游标卡尺测量误差来源分析



请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。