资源简介
bh1750.c bh1750.h 直接添加到项目中,main.c 中的两个函数在 应用app(我用的是SampleApp.c)里添加进去,就可以直接读出光照数值!

代码片段和文件信息
#include “bh1750.h“
static void delay_nus(void)
{
int i;
int n=100;
for(i=0;i {
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
}
}
static void delay_nms(int n)
{
while(n--)
{
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
asm(“nop“);asm(“nop“);asm(“nop“);asm(“nop“);
}
}
/****************************
*****************************/
static void start_i2c(void)
{
SDA_W() ;
//LIGHT_SCK_0() ;
//delay_nus(20);
LIGHT_DTA_1();//
LIGHT_SCK_1() ;//
delay_nus() ;
LIGHT_DTA_0() ;
delay_nus() ;
LIGHT_SCK_0() ;
delay_nus() ;
//delay() ;
}
/********************************
缁撴潫I2C
鏁版嵁鍦ㄦ椂閽熼珮鐢靛钩鐨勬椂鍊欎粠浣庡線楂樿穬鍙?********************************/
static void stop_i2c(void)
{
SDA_W() ;
LIGHT_DTA_0() ;
delay_nus();
LIGHT_SCK_1() ;
delay_nus();
LIGHT_DTA_1() ;
delay_nus();
LIGHT_SCK_0() ;
delay_nus();
}
/******************************
鍙戦€佸瓧鑺傚苟涓斿垽鏂槸鍚︽敹鍒癆CK
褰撴敹鍒癆CK杩斿洖涓?锛屽惁鍒欒繑鍥炰负1
******************************/
static char i2c_send(unsigned char val)
{
int i;
char error=0;
SDA_W();
for(i=0x80;i>0;i/=2)
{
if(val&i)
LIGHT_DTA_1();
else
LIGHT_DTA_0();
delay_nus();
LIGHT_SCK_1() ;
delay_nus();
LIGHT_SCK_0() ;
delay_nus();
}
LIGHT_DTA_1();
SDA_R();
//delay_nus();
LIGHT_SCK_1() ;
delay_nus();
if(LIGHT_DTA())
error=1;
delay_nus();
LIGHT_SCK_0() ;
return error;
}
/***************************
璇诲彇I2C鐨勫瓧鑺傦紝骞朵笖鍙戦€丄CK
褰撳弬鏁颁负1鐨勬椂鍊欏彂閫佷竴涓狝CK(浣庣數骞?
**************************/
static char i2c_read(char ack)
{
int i;
char val=0;
LIGHT_DTA_1();
//SDA_R();
for(i=0x80;i>0;i/=2)
{
LIGHT_SCK_1() ;
delay_nus();
SDA_R();
//SDA_W();
//LIGHT_DTA_0();
//LIGHT_DTA_0() ;
//delay_nus();
if(LIGHT_DTA())
val=(val|i);
delay_nu
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4786 2015-08-11 18:18 1750光照数字传感器\bh1750.c
文件 1267 2015-08-11 18:19 1750光照数字传感器\bh1750.h
文件 709 2015-08-11 18:20 1750光照数字传感器\main.c
目录 0 2015-08-11 18:22 1750光照数字传感器
----------- --------- ---------- ----- ----
6762 4
- 上一篇:Erlang B公式计算器
- 下一篇:全志H3核心板原理图
相关资源
- 《赛普拉斯 接近传感器》pdf
- ds18b20温度传感器编程指令功能
- 温度传感器DS18B20序列号批量搜索算法
- 多传感器标定算法
- 激光位移传感器的特点及应用解析
- 位移传感器应用全面解析
- phong模型(简单光照模型)
- 单片机与温度传感器DS18B20的程序设计
- 毕业论文之温度传感器DS18B20(源码
- stm32 ds18b20 温度传感器 测试通过
- HX711 称重传感器 C程序
- ADNS-3080光流传感器测试程序Arduino
- 28335写的用spi读取传感器数据并用CA
- SCA60角度检测传感器模块程序
- 基于能量和距离的无线传感器网络分
- 无线传感器网络基于分簇的路由协议
- 将光照射到可极化的深色颗粒上
- ADXL362中文说明手册
- 传感器应用七十二变
- 在各城市的窄带物联网中传感器起到
- 基于PIC的TCP/IP网络协议和zigbee无线传
- 传感器应用领域的扩大发展强劲
- 物联网中无线传感器节点和RFID数据融
- 用于无线传感器网络应用的超声波传
- 有关面向工业物联网的无线传感器网
- 物联网无线传感器网络的7大特点
- 传感器在潜水设备的应用
- 旋转活塞式流量计的测量原理
- 基于ARM7 PWM定时器的图像传感器时序信
- IEEE 802.15.4的CC2530无线数据收发设计
评论
共有 条评论