以BH1750为例,使用esp8266的iic功能对接机智云物联网平台-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1678|回复: 0

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

[复制链接]
发表于 2021-7-2 18:54 | 显示全部楼层 |阅读模式
机智云物联网平台给开发者提供了大量开发支持,如开源的安卓/苹果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版权协议,转载请附上原文出处链接及本**。



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

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 09:39 , Processed in 0.095235 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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