首页 > 技术知识 > 正文

机智云物联网平台给开发者提供了大量开发支持,如开源的安卓/苹果SDK、APP等,开发者直接在开源的架构上二次开发即可,从而减少开发工作量。 关于ESP8266-12E ESP8266 是上海乐鑫研发的高性能无线 SOC,旨在以最低成本提供最大实用性,为 WiFi 功能嵌入其他系统提供无限可能,被称为业界里程碑。ESP8266EX 内置 Tensilica L10632 位微型控制器(MCU),具有超低功耗和 16 位 RSIC,时钟速度最高可达 160MHz。持实时操作系统 (RTOS),目前 Wi-Fi 协议栈只用了 20% 的 MIPS,其他均可用于用户编程和开发。(由于32位,故做点啥的话可以先在自己比较熟练的32位单片机上运行一下,然后再仿写可以节省大量的时间)

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

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计

开发步骤

第一步:登录机智云开发者中心,创建一个智能硬件产品,生成ESP8266版本的MCU代码包。

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计1

在机智云物联网云平台下载自动生成的MCU程序文件下来。 然后使用eclipse软件将代码导入,按照图片所示改一下Makefile文件先,然后编译一下整个项目。

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计2

第二步:将main.c文件中的双按键接入改为一个按键就个接入机智云物联网云平台,如图:

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计3

对应的引脚可以自行改掉,这里使用GPIO0

在app-driver文件上建立bh1750.c和在app-include-driver文件上建立个bh1750.h文件。如图:

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计4

这里我们使用官方提供的IIC库i2c_master.h/i2c_master.c ,更改自己的总线引脚

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

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计5

然后编写读取数据程序: 基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计6

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

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计7

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

基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计8

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

硬件电路图 硬件电路图如下所示 基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计9基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计10

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

成品图 最后成品如下图所示 基于BH1750为 WiFi 功能嵌入其他系统提供无限可能-基于核心素养下的大单元教学设计11
审核编辑:彭静

猜你喜欢