这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 使用ESP8266模块制作热水器控制器

共7条 1/1 1 跳转至

使用ESP8266模块制作热水器控制器

工程师
2022-04-14 23:47:39     打赏

前言:随着esp8266等物联网模块大量普及,各种“云”应接不暇,物联网进入家庭的速度明显提高。作为电子DIYER,意味着有了可以快速解决家庭实际需求的有力工具,以前的各种奇思妙想,都可以使用物联网技术用较短的时间内实现啦。这不,老婆大人看到我做的门灯控制器,就提出来让我把家里的热水器改装成带物联网遥控的,可以在下班前用手机打开热水器,回到家就能有热水用。

上一篇写的是硬件篇,包括总体方案设计、改装热水器、WIFI模块选型、三极管开关电路设计、整体组装等内容。

本篇与大家分享ESP8266上运行的代码是如何实现的。换句话说,就是使用ESP8266将硬件设备的数据,通过MQTT协议发送到机智云AIoT物联网平台,写入云端,再传递到数据上,使用者就能通过手机APP来远程控制硬件设备。

实现的步骤如下一、注册机智云账号

在机智云自助开发平台上注册自己的账号,以后自己设计的任何物联网设备都可以放在这个账号上面。

二、创建新的设备并生成源代码

首先创建一个新设备

使用ESP8266模块制作热水器控制器

然后添加数据点

使用ESP8266模块制作热水器控制器

数据点是light_onoff,这个名字可以是自己定义的其他字母。

使用ESP8266模块制作热水器控制器

在基本信息里面就会看到这个数据点的基本信息,注意Secret要想看到完整的,还需要二次密码验证。

使用ESP8266模块制作热水器控制器

选择MCU开发

使用ESP8266模块制作热水器控制器

再选择SOC方案

使用ESP8266模块制作热水器控制器

然后输入secret,生成代码包

使用ESP8266模块制作热水器控制器

下载之后发现这个代码包跟乐鑫的结构差不多(这句话是说给用过乐鑫官方代码朋友听的)

使用ESP8266模块制作热水器控制器

三、编译ESP8266源代码

上一步生成的源代码是运行在ESP8266模块内部的,怎么编译和烧写呢?

下面这个文档有说明:

https://dwz.date/fpVy

使用ESP8266模块制作热水器控制器

关于开发环境搭建的内容:

使用ESP8266模块制作热水器控制器

关于ESP8266平台文件说明:

使用ESP8266模块制作热水器控制器

跟前面学习编译的内容都差不多,也是跟乐鑫一样在D盘新建一个VM文件夹。

然后把所有的文件都放在这个文件夹。我将文件夹名字命名为SoC_ESP8266,这样短一些,方便输入。

首先让linux和windows共享文件夹

输入用户密码: “espressif”,回车确认。

使用ESP8266模块制作热水器控制器

这时能够在VM VirtualBOX虚拟机里面通过文件夹管理器看到已经共享成功了。

使用ESP8266模块制作热水器控制器

本文所要实现的目的是手机APP控制这个模块,实现GPIO12的开关,也就是高低电平的转换。

上面的步骤生成的源代码是不能实现具体引脚的控制的,那么为了实现这个引脚的控制,就需要对代码进行修改。

修改的步骤是在VM文件夹下面,找到相应的.c或者.h文件,用记事本或者其他软件打开并进行编辑。

只修改了一点点。

在user_main.c中的keyinit函数中,添加了初始化GPIO12的代码。

使用ESP8266模块制作热水器控制器

然后在gizwits_product.c中,添加了让小灯翻转的代码。

使用ESP8266模块制作热水器控制器

没错,就是这么简单,就像是51单片机一样,对引脚初始化,然后在功能函数中让它变成高低电平。

四、编译源代码并烧写进入ESP8266

接下来开始对这个源代码进行编译。

下面进入app目录,下面这个界面是运行了VM VirtualBOX虚拟机里面的LX客户端。模拟的是linux操作系统。

进入某个目录用的是cd命令。

使用ESP8266模块制作热水器控制器

运行编译脚本:./gen_misc.sh

编译速度很快

使用ESP8266模块制作热水器控制器

接下来开始烧写

机智云自动生成的代码中,有一张图片,这个图片说明了该烧写进入哪个地址

使用ESP8266模块制作热水器控制器

下面开始烧写。

使用ESP8266模块制作热水器控制器

为了方便初学者看懂,这里说一下硬件连接,ESP8266模块由上下两块组成,其中上面这个就是ESP8266功能板,下面这个其实是一个USB转串口的板子,芯片是CH340,只不过做成了和ESP8266功能板的尺寸一样了,其实它的功能是和买的那种USB转串口的模块是一样的。用一根micro USB数据线,也就是目前手机常用的充电/数据线就行了,注意,不是TYPE-C数据线。连接电脑之后,会自动安装驱动程序,当然,要确保电脑是联网状态。驱动安装成功之后,就会在设备管理器中显示当前串口是COM几,串口号记下来,在烧写的时候,选择这个串口号就行了。

点击电脑上的烧写软件START,然后按下板子上的FLASH按键不松手,然后按下RST按键,松手,再松开FLASH按键。一般情况下可以一次烧写成功,如果不成功,请再次点击烧写START,再次按照FLASH和RST按键步骤进行烧写。

烧写完之后,模块就能够使用了。

下一篇文章分享一下机智云APP的制作过程,模块配网连接家里的路由器的过程,以及设备二维码的生成。




专家
2022-04-15 05:55:32     打赏
2楼

感谢楼主的分享


高工
2022-04-15 06:32:11     打赏
3楼

好资料,谢谢分享


专家
2022-04-15 06:54:03     打赏
4楼

谢谢分享


专家
2022-04-15 07:03:52     打赏
5楼

学习


高工
2022-04-15 07:22:23     打赏
6楼

谢谢分享


专家
2022-04-15 07:23:45     打赏
7楼

谢谢分享


共7条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]