• 大小: 3KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-02
  • 语言: 其他
  • 标签: STM32  IIC  BH1750  

资源简介

通过STM32F103的硬件IIC读取光照传感器BH1750的数据,已通过测试,能够成功读取BH1750的光照数据。。

资源截图

代码片段和文件信息


#include “main.h“

float result_Sun=0;
u8 BUF[2]={0};
u16 result=0;
u8 Sun_Data[4];
unsigned char gBuf[4];
unsigned char *gTemp;
extern u8 I2C_Data[10]ret;
extern uf hex_float_value;
extern I2C_INIT_INFO I2C_Info;

void I2C_Comm_Init(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOBENABLE);
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10|GPIO_Pin_11;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOB&GPIO_InitStructure);
}

void Init_BH1750(void)
{
  I2C_Comm_Init();
GPIO_ResetBits(GPIOBGPIO_Pin_9);
GPIO_ResetBits(GPIOBGPIO_Pin_8);
delay_nus(5);
GPIO_SetBits(GPIOBGPIO_Pin_8);
}


void Start_BH1750(void)
{

  I2C_Data[0]=0x01;
I2C_HardWriteNByte(I2C20I2C_Data1);//传感器芯片上电命令
I2C_Data[0]=0x07;
I2C_HardWriteNByte(I2C20I2C_Data1);//软件复位
I2C_Data[0]=0x42;
I2C_HardWriteNByte(I2C20I2C_Data1);//寄存器高八位
I2C_Data[0]=0x65;
I2C_HardWriteNByte(I2C20I2C_Data1);//寄存器低八位
I2C_Data[0]=0x20;
I2C_HardWriteNByte(I2C20I2C_Data1);//精度
}
void Read_BH1750(void)

I2C_HardInit(&I2C_Info);     //
I2C_Data[0]=0x11;
ret = I2C_HardWriteNByte(I2C20I2C_Data1);//发送测量命令
    if(ret)
  {
  I2C_Data[0]=0;
  }
delay_nms(150);//等待大于120ms,必须加这个延时,否则传感器没准备好数据会出现读数据错误
ret = I2C_HardReadNByte(I2C20I2C_Data2);//读取光照强度值
if(ret)
{
  I2C_Data[0]=0;
  }
  else
{
result_Sun = ((I2C_Data[0]<<8)+I2C_Data[1])/(1.2*2);
   //printf(“光强度:%f lx\n\r“((I2C_Data[0]<<8)+I2C_Data[1])/(1.2*2));
    }
delay_ms(50);
}

void BH1750(void)
{
u8 i;

  //Start_BH1750();
  //delay_ms(180);

  Read_BH1750();
hex_float_value.float_data=result_Sun;
for(i=0;i<4;i++)
{
Sun_Data[i]=hex_float_value.hex_data[i];
}
  delay_nms(500);
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1947  2016-02-17 16:16  BH1750\BH1750.c

     文件        409  2015-12-11 10:10  BH1750\BH1750.h

     文件       7653  2015-12-11 10:12  BH1750\I2C_Driver.c

     文件       1152  2015-12-11 10:12  BH1750\I2C_Driver.h

     目录          0  2016-02-17 16:17  BH1750

----------- ---------  ---------- -----  ----

                11161                    5


评论

共有 条评论