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

资源简介

BH1750光强传感器zigbee程序

资源截图

代码片段和文件信息

//***************************************
// B_LUX_V20采集程序
//****************************************
#include      //Keil library  
#include     //Keil library
#include “B_LUX_V20.h“

uint8    BUF_0[8];                       //接收数据缓存区      
uint16   dis_data_0;                     //变量

/*---------------------------------------------------------------------
 功能描述: 延时纳秒 不同的工作环境需要调整此函数
 参数说明: 无
 函数返回: 无
 ---------------------------------------------------------------------*/
void B_LUX_delay_nms(uint16 k)
{
  uint16 ij;
  for(i=0;i  {
    for(j=0;j<6000;j++)
    {
      ;
    }
  }
}

/*---------------------------------------------------------------------
 功能描述: 延时5微秒  不同的工作环境需要调整此函数
 参数说明: 无
 函数返回: 无
 ---------------------------------------------------------------------*/
void B_LUX_Delay5us()
{
  uint8 n = 50;
  
  while (n--);
}

/*---------------------------------------------------------------------
 功能描述: 延时5毫秒  不同的工作环境需要调整此函数
 参数说明: 无
 函数返回: 无
 ---------------------------------------------------------------------*/
void B_LUX_Delay5ms()
{
  uint16 n = 50000;
  
  while (n--);
}

/*---------------------------------------------------------------------
 功能描述: 起始信号
 参数说明: 无
 函数返回: 无
 ---------------------------------------------------------------------*/
void B_LUX_Start()
{
  B_LUX_SDA0_H;                    //拉高数据线
  B_LUX_SCL0_H;                    //拉高时钟线
  B_LUX_Delay5us();                 //延时
  B_LUX_SDA0_L;                    //产生下降沿
  B_LUX_Delay5us();                 //延时
  B_LUX_SCL0_L;                    //拉低时钟线
}

/*---------------------------------------------------------------------
 功能描述: 停止信号
 参数说明: 无
 函数返回: 无
 ---------------------------------------------------------------------*/
void B_LUX_Stop()
{
  B_LUX_SDA0_L;                    //拉低数据线
  B_LUX_SCL0_H;                    //拉高时钟线
  B_LUX_Delay5us();                 //延时
  B_LUX_SDA0_H;                    //产生上升沿
  B_LUX_Delay5us();                 //延时
  B_LUX_SCL0_L;
  B_LUX_Delay5us();
}

/*---------------------------------------------------------------------
 功能描述: 发送应答信号
 参数说明: ack - 应答信号(0:ACK 1:NAK)
 函数返回: 无
 ---------------------------------------------------------------------*/
void B_LUX_SendACK(uint8 ack)
{
  if (ack&0x01) B_LUX_SDA0_H;  //写应答信号
  else B_LUX_SDA0_L;
  
  B_LUX_SCL0_H;                    //拉高时钟线
  B_LUX_Delay5us();                 //延时
  B_LUX_SCL0_L;                    //拉低时钟线
  B_LUX_SDA0_H;
  B_LUX_Delay5us();                 //延时
}

/*---------------------------------------------------------------------
 功能描述: 接收应答信号
 参数说明: 无
 函数返回: 返回应答信号
 ---------------------------------------------------------------------*/
uint8 B_LUX_RecvACK()
{
  uint8 CY = 0x00;
  B_LUX_SDA0_H;
  
  B_LUX_SDA0_I;
  
  B_LUX_SCL0_H;              //拉高时钟线
  B_LUX_Delay5us();                 //延时
  

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-04-12 10:28  TI B-LUX-V2.0\
     文件        7345  2014-05-10 14:14  TI B-LUX-V2.0\B_LUX_V20.c
     文件        1681  2014-04-11 23:57  TI B-LUX-V2.0\B_LUX_V20.h
     文件         300  2014-04-27 15:00  TI B-LUX-V2.0\使用说明.txt

评论

共有 条评论