esp8266用python开发,esp8266如何发送数据
【满枕】APP Inventor开发Android app,通过MQTT控制ESP8266。先下载ESP8266示例(arduino ide编程与开发)。第二次修改演示程序。第三个应用程序inventor开发
原理:ESP8266使用发布-订阅模式订阅一个主题,然后使用app inventor编写的app发布消息到这个主题。因为ESP8266订阅了此消息,所以它可以接收应用程序发布的消息并执行相应的操作。
基于MQTT协议,ESP8266通过MQTT连接到服务器,app也同样通过MQTT连接到服务器,两者通过主题(topic)进行交流。
ESP8266实例第一次下载(arduino ide编程与开发)下载地址:点击下载
这个演示是使用arduino IDE开发的。arduino IDE的ESP8266环境的配置请参考:环境配置:点击跳转。
在第二修改的演示例程中要修改的信息包括WIF名称、WIFI密码、用户私钥UID和设备主题主题。
用户的私钥可以通过点击满枕mqtt控制台获取,注册绑定邮箱后在Bafa中的mqtt控制台上点击跳转即可获取。
登录后,您可以在控制台上看到您的私钥UID,如图所示:
创建主题,在控制台,可创建主题。
首先输入科目,字母或数字或字母和数字的组合。单击创建主题。
WIFI名称是您路由器的WIFI名称,区分大小写。错误的写入将导致您无法连接到网络。
关于主题topic:主题可在控制台新建,字母+数字自定义组合即可。如下,例程的主题为light01002。
//* * * * * * * * * * * * * * * *要修改的部分* * * * * * * * * * * * * * * */const char * ssid= new HTC ;//修改,你的路由到WIFI名称const char * password= qq123456//您的WIFI密码# DEFINE ID _ MQTT 4d 9 EC 352 e 0376 f 2110 a 0 c 601 a 2857225 //被修改,您的客户端ID const char * topic= light 01002 ;//主题名,可以在全枕控制台自己创建。该名称是可选的//* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *。
//MCU LED管脚值const int B _ LED=D4;如果不是nodemcu开发板,请把D4改成自己的开发板pin,比如1,2,3,4,5。
将程序下载到ESP8266,如果WIFI信息正确,ESP8266会自动连接云端服务器。
开发人员可以在控制台中测试、测试方法、推送该主题的消息,并观察ESP8266是否接收到消息。您可以通过串行调试助手打开esp8266的串行端口,查看esp8266的日志输出。
在本demo中是控制的ESP8266的D4口,可根据自己需求更改。
//* * * * * * * * * * * * * * * *可修改部分* * * * * * * * * * * * * * * * *//If(Mqtt _ Buff== on ){//如果收到on的字符//打开灯功能} else if (Mqtt_Buff==off) {//如果收到off的字符,打开turn ffled();//关灯功能}/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *开发者可以在控制台上按开或关,然后检查esp8266是否收到。如果有,说明写下一个app很正常。
消息检测代码::消息不仅仅局限于开或关,开发者可以脑洞大开,随意定义。你推送什么消息,你在MCU检测到什么消息?
app inventor的第三个开发原则:通过MQTT连接服务器。当按钮被按下时,一条消息将被推送到服务器,并且ESP8266可以接收该消息。
简介:Google App Inventor是一个完全在线的Android编程环境,它抛弃了复杂的程序代码,使用积木堆叠的方法来完成你的Android程序。而且,这种编程软件不一定非得是专业的R&D人员,甚至根本不需要掌握任何编程知识。因为这个软件已经提前写好了所有的软件代码,用户只需要根据自己的需求给它添加服务选项就可以了。也就是我们要做的就是写一个简单的代码汇编程序。
安装appInventor并单击“安装”
这个操作只提供了一个app的演示,界面太丑了,可以自由换界面。
当检测到消息为on 时,执行开灯,当检测到消息为off 时,执行关灯点击下载
在导航栏顶部依次点击(项目-导入项目aia),选择上一步下载的aia文件进行导入。点击导入的项目,可以看到控制面板。面板主要分为建筑设计和逻辑设计,用户可以在右上角切换模式。
(构建设计)面板可以将构建添加到屏幕上进行二次开发。(逻辑面板),然后写相关逻辑。
aia文件导入后,如果只是简单易用,只需要修改两个地方,一个是主题名,一个是UID。开发者需要用自己的主题(主题名)和UID(用户私钥)替换,点击跳转可以在mqtt控制台获得。
此处的主题应与ESP8266程序中设置的主题相同,否则不会收到消息。UID被更改为它自己的私钥。满枕的ip和端口默认没问题。
说明
当点击“打开”按钮并发送on时,ESP8266可以接收on消息。
当您单击“关闭”按钮并关闭时,ESP8266将收到关闭消息。
发送的具体消息可以由开发者定制。在例程中只发送简单的字符串,开发者也可以发送json之类的。
如果想控制家里的灯具,可以加一个继电器,通过引脚输出高低电平控制继电器的通断,达到控制220v交流电的效果。继电器需要一个3.3V继电器。
这里app只实现简单的订阅和发布功能,你还需要根据自己的喜好修改界面。如果添加漂亮的背景图片,修改颜色,修改应用名称,修改应用图标等。具体教程可以百度搜索,这里就不介绍了。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。