收藏官网首页
查看: 12995|回复: 0

[经验分享] 以BH1750为例,使用ESP8266的iic功能对接机智云物联网云平台

610

主题

660

帖子

3万

积分

版主

Rank: 7Rank: 7Rank: 7

积分
33430
跳转到指定楼层
楼主
 楼主| 发表于 2021-7-2 15:20:27 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
汉枫LPB120模块
本帖最后由 Kara 于 2021-7-2 15:32 编辑

以BH1750为例,使用esp8266的iic功能对接机智云物联网平台


机智云物联网平台给开发者提供了大量开发支持,如开源的安卓/苹果SDK、APP等,开发者直接在开源的架构上二次开发即可,从而减少开发工作量。文档中心提供大量的接入教程,非常详细,机智云官方文档中心链接:http://docs.gizwits.com/zh-cn/overview/overview.html
可以进去了解一下,没有接触过的小伙伴。

关于ESP8266-12E:

ESP8266 是上海乐鑫研发的高性能无线 SOC,旨在以最低成本提供最大实用性,为 WiFi 功能嵌入其他系统提供无限可能,被称为业界里程碑。ESP8266EX 内置 Tensilica L10632 位微型控制器(MCU),具有超低功耗和 16 位 RSIC,时钟速度最高可达 160MHz。持实时操作系统 (RTOS),目前 Wi-Fi 协议栈只用了 20% 的 MIPS,其他均可用于用户编程和开发。(由于32位,故做点啥的话可以先在自己比较熟练的32位单片机上运行一下,然后再仿写可以节省大量的时间)

关于BH1750:

是一款光照传感器,IIC通信方式,范围为(1 - 65535 勒克斯)


登录机智云开发者中心,创建一个智能硬件产品,生成ESP8266版本的MCU代码包。
在机智云物联网云平台下载自动生成的MCU程序文件下来。然后使用eclipse软件将代码导入,按照图片所示改一下Makefile文件先,然后编译一下整个项目。


将main.c文件中的双按键接入改为一个按键就个接入机智云物联网云平台,如图:
对应的引脚可以自行改掉,这里使用GPIO0


在app-driver文件上建立bh1750.c和在app-include-driver文件上建立个bh1750.h文件。如图:
这里我们使用官方提供的IIC库i2c_master.h/i2c_master.c,更改自己的总线引脚


编写bh1750的驱动文件,打开数据手册,找到高分辨率情况下的时序图


然后编写读取数据程序:


时序很简单,对照程序看一下时序就会懂了。其它的iic驱动可以不用理会,想了解自行看看就行。头文件如图所示





在user_init()函数中调用bh1750_init()函数,放在keyInit()下面即可
上传数据到机智云平台:





将bh1750.h头文件包括在改文件里面,在此处调用即可。

硬件电路图如图所示:


RGB的使用是在接入wifi时使用的,可以不用理会,就是个简单的控制io口。

最后成品如图






版权**:本文为CSDN博主「小罗-LWX」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本**。



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表