ESA2GJK1DH1K基础篇: 测试APP扫描Air202上面的二维码绑定通过MQTT控制设备(兼容SIM800)
前言
此程序兼容SIM800
如果想绑定SIM800,请把其IMEI号,生成二维码,用手机APP扫描.
实现功能概要
APP通过扫描二维码获取GPRS设备的IMEI号,然后设置订阅的主题:device/设备IMEI号 发布的主题:user/设备IMEI号
注:实际上和上一节代码唯一不同的地方是控制GPRS连接TCP服务器,然后实现透传.其它程序完全一致!
测试准备工作(详细下载步骤请参考 硬件使用说明 )
一,下载单片机程序

二,安装APP软件(APP软件还是上一节的那个软件)

三,调整波动开关位置,STM32和GPRS 串口1 通信

四,别忘了插手机卡,还有安装上天线

开始测试
一.打开手机APP,点击右上角菜单 "扫一扫" 扫描模块上面的二维码,模块的二维码就是这个模块的IMEI号,扫描成功将在主页面添加一个设备.

二.单片机控制GPRS连接上MQTT服务器以后,指示灯1S闪耀

三.点击设备进入,设备控制页面,页面显示当前温湿度数据,显示当前设备的状态

四.远程控制继电器吸合

五.远程控制继电器断开

六.请自行控制家电(最大支持10A,注意安全!),咱的GPRS远程控制器就做好了.

其它
后面我便告诉大家如何移植当前我的MQTT处理程序到自己的项目,只要自己的模块可以实现TCP,便一定可以实现MQTT
因为本身MQTT就是个TCP服务器而已.你按照他给的规定发数据,它就帮你转发数据了而已.
我当时封包就是为了大家无论用的什么模块,都可以分分钟移植上MQTT!
授人予鱼,就要给一条有很大价值的鱼!
说实话哈,我用我的包移植上这个程序,只用了不到10分钟.其实如果有现成稳定的流程的知道怎么控制模块连接TCP了,也就5分钟.
一.实际应用请使用一个引脚控制模块重启
请在每个程序文件的此处修改(注,本人的板子现在未引出复位引脚,下一批板子将跟进)\

如果没有复位可能出现一直发送 AT+CIPSHUT ,模块要等到好久才有反应
现在测试可人为进行复位!

二,硬件程序
1.1: STM32控制GPRS模块以AT指令TCP透传方式连接MQTT服务器, 实现MQTT通信控制.
1.1.1: MQTT处理,采用官方C语言MQTT包+本人二次封装.(方便大家快速的移植使用)
1.1.2: 控制GPRS连接MQTT服务器部分程序
1.1.3: GPRS模块发布的主题: device/设备IMEI号 GPRS模块订阅的主题: user/设备IMEI号

1.1.4: 处理MQTT服务器返回的数据部分程序(和上一节一样)

ESA2GJK1DH1K基础篇: 测试APP扫描Air202上面的二维码绑定通过MQTT控制设备(兼容SIM800)的更多相关文章
- ESA2GJK1DH1K微信小程序篇: 测试微信小程序扫描Air202上面的二维码绑定设备,并通过MQTT控制设备
前言 一,微信小程序篇小程序下载(该功能为小程序篇基础功能源码) 实现功能概要 微信小程序通过扫描GPRS上的二维码,绑定GPRS设备.然后使用小程序通过GPRS远程控制开发板上的继电器, 远程显示单 ...
- ESA2GJK1DH1K基础篇: 测试APP使用SmartConfig绑定Wi-Fi 设备并控制设备
前言 实现功能概要 STM32控制WI-Fi模块以AT指令TCP透传方式连接MQTT服务器, 实现MQTT通信控制. 测试准备工作(详细下载步骤请参考 硬件使用说明 ) 一,下载单片机程序 二,安装A ...
- ESA2GJK1DH1K基础篇: 阿里云物联网平台: 云平台显示单片机采集的温湿度数据,控制设备继电器(基于GPRS模块,AT指令TCP_MQTT通信)
实现的功能 上一节是使用的Wi-Fi模块连接的阿里云平台,这节呢咱用GPRS连接. 阿里云的设备配置还是按照上一节的,有个温度,有个湿度. 测试 一,打开单片机程序 二,根据自己的修改,然后下载进去单 ...
- 【转】如何在您的PCB大作上添加二维码?
开篇先给大家来段新闻截选: “8月20日,新加坡总理李显龙在国庆群众大会上演讲时,称中国移动支付(电子支付)领先全球,新加坡的移动支付还很落后,上海路边摊都有移动支付,新加坡人去上海就像乡巴佬. 这番 ...
- 在iOS上实现二维码功能
http://blog.csdn.net/abcmx/article/details/8011904 如今二维码随处可见,无论是实物商品还是各种礼券都少不了二维码的身影.而手机等移动设备又成为二维码的 ...
- Node.js在指定的图片模板上生成二维码图片并附带底部文字说明
在Node.js中,我们可以通过qr-image包直接在后台生成二维码图片,使用方法很简单: var qr = require('qr-image'); exports.createQRImage = ...
- Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果
Android 高手进阶(21) 版权声明:本文为博主原创文章,未经博主允许不得转载. 转载请注明出处:http://blog.csdn.net/xiaanming/article/detail ...
- 【转】Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果--不错
原文网址:http://blog.csdn.net/xiaanming/article/details/10163203 转载请注明出处:http://blog.csdn.net/xiaanming/ ...
- 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果(转)
转载:http://blog.csdn.net/xiaanming/article/details/10163203 了解二维码这个东西还是从微信 中,当时微信推出二维码扫描功能,自己感觉挺新颖的,从 ...
随机推荐
- 实战django(二)--登录实现记住我
上节初步实现了登录和注册模块,这节我们进一步实现“记住我”功能. 大体功能分为以下模块: 1.在登录时如果勾选记住我,那么就将用户username存进cookie中,跳转到index页面: 2.此时, ...
- 浙大版《C语言程序设计(第3版)》题目集 --总结
浙大版<C语言程序设计(第3版)>题目集 此篇博客意义为总结pta上浙大版<C语言程序设计(第3版)>题目集所做题目的错误点,心得体会. 1.练习2-10 计算分段函数[1] ...
- java中需要转义的特殊字符
在Java中,不管是String.split(),还是正则表达式,有一些特殊字符需要转义, 这些字符是 ( [ { / ^ - $ ¦ } ] ...
- nginx dockerfile安装第三方模块
# nginx Dockerfile # Version 1.0 # author fendo # Base images 基础镜像 FROM centos:centos7 #FROM hub.c.. ...
- 2019-11-29-WPF-客户端开发需要知道的触摸失效问题
原文:2019-11-29-WPF-客户端开发需要知道的触摸失效问题 title author date CreateTime categories WPF 客户端开发需要知道的触摸失效问题 lind ...
- python 练习题:使用迭代查找一个list中最小和最大值,并返回一个tuple
# -*- coding: utf-8 -*- # 请使用迭代查找一个list中最小和最大值,并返回一个tuple from collections import Iterable def findM ...
- 24个Jvm面试题总结及答案
1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Java虚拟机执行的字节码文件. Java被 ...
- JS的数组进行切片slice
代码 var arr = new Array(6) arr[0] = "George" arr[1] = "John" arr[2] = "Thoma ...
- spring容器的功能扩展
容器的扩展功能主要实现为: org.springframework.context.support.AbstractApplicationContext.refresh() public void r ...
- Scanner 中next()和nexline()方法的区别
在java实现字符窗口的输入时,很多人更喜欢选择使用扫描器scanner,它操作起来比较简单.在编程的过程中,我发现用scanner实现字符串的输入有两种方法,一种是next(),另一种是next ...