STC8&I2C&GY-302(BH1750光照度强度模块)

目录

前言

材料

连接方式:

 硬件:

 代码:

使用步骤

1.引入库

2.配置工作环境

3.主程序

4.运行结果

5.该库函数预览

总结


前言

写了I2C通信用的函数。现在內部先集成了GY-302模块的通信,数据获取。

I2C通信库之应用GY-302(BH1750光照度强度模块)这个模块。

材料

连接方式:

GY-302模块----单片机

VCC----5V

SCL----P07
SDA----P06

GND----GND

 硬件:

1.STC8A8K64D4最小系统板

2.GY-302模块

 代码:

用到的库都是我其它文章都介绍了的,这里在介绍本文用到的库的大概作用。

#include <STC8.H>
#include <CK.H>
#include <I2C.H>
#include <GPIO.H>

<CK.H>        串口通信(数据显示在串口通信软件上)

<GPIO.H>    引脚切换(引脚模式切换)

 <I2C.H>       I2C通信(用于与GY-302模块通信获取数据)(这给前面没有讲过,最近才写的)

使用步骤

1.引入库

#include <STC8.H>
#include <CK.H>
#include <I2C.H>
#include <GPIO.H>

2.配置工作环境

其他文章也讲了,不同的库的文件,有不同的配置。

以下是我的配置:

I2C.H下:

//模块默认地址
#define I2C_BH1750_Address 0x46		//BH1750默认地址
//I2C映射端口
sbit SCL=P0^7;
sbit SDA=P0^6;

 CK.C

#define CK_Bti 	115200    	//配置串口波特率
#define	CK_FOSC  11059200	//单片机运行频率(默认:11.0592  (频率x10^6))
#define CK_IntStrLen 20		//整型上限个数
#define CK_FloatStrLen 20	//浮点型型上限个数(默认保留三位小数)

3.主程序

#include <STC8.H>
#include <CK.H>
#include <I2C.H>
#include <GPIO.H>

void main()
{
	CK_Init();
	I2C_BH1750_Init();
	GPIO_Mods(0,0);
	while(1)
	{
		CK_SendFloatX(I2C_BH1750_Use());
	}
}

4.运行结果

测试了手掌挡住时模块时的数据,和拿手机手电筒照时的效果。

手掌挡住时数据在二三十左右,手机手电筒照时数据在七八千。

5.该库函数预览

总结

由于文件过多,还是老方法,分享出来,感兴趣的可以看看。

链接:https://pan.baidu.com/s/1NOPOICfRMUTFnsuOS3arAA 
提取码:ifry

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值