前言 实现功能概要 STM32控制WI-Fi模块以AT指令TCP透传方式连接MQTT服务器, 实现MQTT通信控制. 测试准备工作(详细下载步骤请参考 硬件使用说明 ) 一,下载单片机程序 二,安装APP软件 三,调整波动开关位置,STM32和Wi-Fi通信 四,短接STM32的PB2和Wi-Fi模块的RST引脚(为了做项目稳定可靠,请使用单片机硬件复位Wi-Fi) 开始测试 一.打开手机APP,点击右上角菜单 "添加设备" ,手动输入自家路由器密码.(路由器名称为自动获取,不需要用户…
前言 此程序兼容SIM800 如果想绑定SIM800,请把其IMEI号,生成二维码,用手机APP扫描. 实现功能概要 APP通过扫描二维码获取GPRS设备的IMEI号,然后设置订阅的主题:device/设备IMEI号 发布的主题:user/设备IMEI号 注:实际上和上一节代码唯一不同的地方是控制GPRS连接TCP服务器,然后实现透传.其它程序完全一致! 测试准备工作(详细下载步骤请参考 硬件使用说明 ) 一,下载单片机程序 二,安装APP软件(APP软件还是上一节的那个软件) 三,调整波动开关…
前言: 说明两个地方 1.点击按钮启动SmartConfig的地方 2.最终跳转的地方 说明 这节说明一下,如何把本人源码里面的SmartConfig程序移植到自己的工程 我要把所有的全部拿出来讲,让大家可以方便的把每一个功能移植到自己的工程. 新建一个项目 主页面只放一个按钮和一个文本框 按钮是负责跳转到配网绑定页面,文本框显示配网绑定完成以后获取的Wi-Fi的MAC信息 新建一个新页面,配网绑定用的 名字随意 换个布局 里面放一个EditText  用来显示咱连接的路由器名称 一个EditT…
下载源码去 百度安信可 导入源码 等待加载完 我的提示更新下软件 ,我就更新下 安装完成以后重新导入工程 安装到手机 注意,由于Android 9.0 以后的获取WIFI名称需要打开GPS,所以如果提示下图 需要自己手动打开GPS 输入密码,然后测试 测试准备工作 一,下载单片机程序 "测试APP使用SmartConfig绑定Wi-Fi 设备通过MQTT控制设备" 二,调整波动开关位置,STM32和Wi-Fi通信 三,短接STM32的PB2和Wi-Fi模块的RST引脚(为了做项目稳定可…
说明 这一节说明一下基础篇APP源码里面MyMqttCilent.java这个文件的使用 新建工程 安装MQTT的jar包 implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.2' 打开基础篇第一节测试里面的APP源码里面的工程 拷贝MyMqttClient.java文件 一,拷贝第一节测试里面的APP源码里面的MyMqttClient.java 到当前工程 二,源码里面是使用的手机的IMEI作为了 MQTT的…
前言 这节稍微唠叨点 其实我很长时间都没有出怎么连接现成的物联网平台的教程, 一直写的是教给大家自己搭建服务器,主要原因是因为我感觉连接现有的学不到东西. 现在出这种教程,是因为发现确实很多人喜欢用. 所以我也推出详细的教程. 其实并没有大家想象的多么的高大上. 唠叨 说一下,大家连接我的MQTT服务器的时候需要 ClientID:  自己随意设置(我的程序是如果用的是Wi-Fi:则使用其MAC地址;如果用的GPRS:则使用其IMEI) 用户名:    我安装MQTT的时候设置的用户名是  ya…
前言 有时候想想可能直接连接现成的感觉比较方便吧! 这种东西考验的是你底子是否够好,是否有很强的学习能力 因为咱就是看文档,理解文档.用文档. 测这节会感觉:这是啥呀...下一节更精彩,但是必须看这节 测这节会感觉:这是啥呀...下一节更精彩,但是必须看这节 测这节会感觉:这是啥呀...下一节更精彩,但是必须看这节 测试1 1.选择设备 ---- 查看 2.Topic ---- 查看 下面是说咱可以订阅那几个主题 咱先看订阅:  /a1m7er1nJbQ/Mqtt/user/get 3.订阅这个…
前言 这节看一下在阿里云上实现MQTT通信是个怎样的流程 看了很多网上的教程,感觉讲的迷迷糊糊.... 其实感觉他们是对MQTT不够透彻,所以写的文章就是个比着葫芦画瓢的感觉 在我面前这东西就是玩具..... 搜索物联网平台(如果没有开通自行开通) 创建产品 注意:看看自己的这里是那个区域的,后面会用到 现在我就需要知道设备怎么连接上 反正是MQTT,再怎么弄,也是MQTT,再怎么搞也就那几个参数....... 我只需要知道用户名,密码,IP地址,端口号,ClientID是啥就可以了 https…
现在这里空空如也 咱自定义的也没有数据 现在就是传上来温度数据,让这里显示温度数据 你发布的主题  /sys/a1m7er1nJbQ/Mqtt/thing/event/property/post 发布的消息   {"method":"thing.event.property.post","id":"1111","params":{"temp":22},"version"…
前言 这节代码将在这一节的基础上实现 拷贝第一节测试里面的MQTT文件夹到当前工程 当前工程建个MQTT的文件夹,用于存放那个MQTT文件夹里面的内容 添加文件到里面 注意:::: 实际源码拷贝位置 为了便于移植到各个模块上使用,我再次封装了一下 添加了 ConfigMqtt文件 添加头文件到 include.h 设置一下头文件路径 注意,如果不是用的我的工程底板,会报错一个地方 该函数是用来处理MQTT的数据.官方源码解析的固定写法. 这个Usart1ReadBuff 是缓存串口1数据的数组…
题外话 我老爸也问我物联网发展的趋势是什么!!!!!! 我自己感觉的:(正在朝着 "我,机器人" 这部电影的服务器方向发展) 以后的设备都会和服务器交互,就是说本地不再做处理,全部的处理数据是在一个庞大的服务器端 咱现在手机上的各种软件以后也不会安装在手机了,所有的都是在服务器端 现在的微信小程序,阿里小程序等等,正是在把应用程序放到了他们的服务器端运行. 这种运行方式考验两方面: 1.服务器处理能力 2.网络数据通信速度 只要是这两方面达到了,就会使很多东西革新换代(像电脑和手机),…
首先你需要知道MQTT并不是什么高大上的事物,它只是一个软件,对就是一个软件.其实就是个TCP服务器 一,既然是TCP服务器,这个TCP服务器和咱平时做的有什么不一样呢. 首先,平时的时候咱做的TCP服务器都是,一个或者多个客户端连接咱做的TCP服务器,然后TCP服务器处理客户端的数据. 现在呢!需求变了! 假设我有5个网络设备,3个手机.我现在想让网络设备把数据远程传给手机.而且我还需要记录网络设备上传的数据. 假设通信是这样的(而且后期还会不停的增加设备和手机) 二,咋办??? 1. 需要记…
实现的功能 上一节是使用的Wi-Fi模块连接的阿里云平台,这节呢咱用GPRS连接. 阿里云的设备配置还是按照上一节的,有个温度,有个湿度. 测试 一,打开单片机程序 二,根据自己的修改,然后下载进去单片机程序 三,调整波动开关位置,STM32和GPRS 串口1 通信 四,别忘了插手机卡,还有安装上天线 五,单片机控制GPRS连接上阿里云服务器以后,指示灯1S闪耀 六,可到云端查看温湿度数据 七,控制继电器吸合 {"data":"switch","bit&q…
前言 注: 本程序发送心跳包,发送温湿度,返回控制数据这三个发送是单独的,有可能凑到一起发. 由于本身程序就是复杂性的程序,所以这节程序没有使用中断发送,没有使用环形队列发送,为了避免多条消息可能凑到一起发 如果嫌弃这个延时请自行优化,或者采用自己的方式解决,谢谢支持! 抱歉哈!我首先期望的是大部分人都先要看懂程序,至于其他优化我会提供个思路和源码,大家可以根据自己的情况自行优化. 打开第一节的源码 我只说注意的地方 现在的程序没有硬件复位Air202的地方 大家做项目的时候一定要加个硬件复位A…
前言 注: 本程序发送心跳包,发送温湿度,返回控制数据这三个发送是单独的,有可能凑到一起发. 由于本身程序就是复杂性的程序,所以这节程序没有使用中断发送,没有使用环形队列发送,为了避免多条消息可能凑到一起发 如果嫌弃这个延时请自行优化,或者采用自己的方式解决,谢谢支持! 抱歉哈!我首先期望的是大部分人都先要看懂程序,至于其他优化我会提供个思路和源码,大家可以根据自己的情况自行优化. 打开第一节的源码 为了方便修改,我用数组存储了些参数 然后看链接MQTT部分 说个地方 然后看 判断连接状态 接着…
我选择的是购买阿里云的服务器 如果是学生,可以选择 因为我用学生账户买过了,所以过程没法写了,下面我就写不用学生账户买的过程,其实应该配置过程和学生买差不多 选择购买的配置 选择系统 不需要配置直接下一步就可以 设置登录密码 不需要配置直接下一步 确认 购买完咱先用网页进去 如果找不到了 以前设置的这个密码 好了 其实就是一台电脑 可以先重启一下 现在用本地的远程连接登录,方便传输文件 后期一般都是这样登录 现在退出来,咱重新配置一下登录,好方便本机和云端的电脑互相传输文件…
开发板板载介绍 一.示意图 1.单片机:STM32C8T6 2.Wi-Fi模块:ESP8266 3.GPRS模块:Air202 4.温湿度传感器:DHT11 5.液晶:OLED(IIC) 6.继电器 拨动开关通信控制说明 一,电脑串口和模块通信 1.1电脑串口和STM32串口1通信 1.2.电脑串口和Wi-Fi通信 1.3.电脑串口和Air202下载调试程序串口通信 1.4.电脑串口和Air202串口1通信 二,模块之间通信 2.1: STM32和Air202 串口1 通信 2.2: WIFI模…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 第六天_do_while循环 { class Program { static void Main(string[] args) { Console.WriteLine("老师我唱的您满意吗?"); string answer = Con…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 流程语句02 { class Program { static void Main(string[] args) { ; string userName = ""; string userPsw = ""; Conso…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 流程语句02 { class Program { static void Main(string[] args) { string anwer= ""; ; ) { Console.WriteLine("你们会了么?yes/no…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 第五天_流程控制02 { class Program { static void Main(string[] args) { ; ; ) { == ) { s += i; Console.WriteLine("当前累加到的数字为{0},累加的和为{…
动手来做自己的WIFI远程控制插座吧! 如果感觉视频不容易入门可以看这里 https://www.cnblogs.com/yangfengwu/p/10100152.html WIFI远程控制器系统方案基础篇第一节-功能演示 https://v.youku.com/v_show/id_XMzk1NjQyNDczNg==.html?spm=a2h3j.8428770.3416059.1 WIFI远程控制器系统方案基础篇第一节-源码下载和测试 https://v.youku.com/v_show/i…
前言 鉴于有些用户直接想使用现成的物联网平台实现 OTA 远程升级 我就写一写这系列的文章 注意:首先大家必须把我自建服务器是如何实现的看明白! 我看了下阿里云提供的,实际上流程和咱自建实现的差别不大 https://help.aliyun.com/document_detail/85700.html?spm=a2c4g.11186623.6.699.6292740d5hzKl6 首先控制升级获取当前程序的版本号等走的还是MQTT 设备端首先通过MQTT获取云端的版本信息,还有程序固件的http…
前言(源码使用介绍在最后) 一,微信小程序篇小程序下载(该源码为这节测试源代码) 二.有多少人一直在期盼着小程序可以实现SmartConfig或者Airkiss的功能? 来吧!我的这种方式包您满意. 注:APUConfig 是我自己取的名字(哈哈谁让这种方式,我是第一个在微信小程序上实现的),代表着 AP  UDP  Config 绑定流程详细说明: APUConfig小程序端源码 https://gitee.com/yang456/APUConfig.git 实现功能概要 1.小程序使用APU…
前言 一,微信小程序篇小程序下载(该功能为小程序篇基础功能源码) 实现功能概要 微信小程序通过扫描GPRS上的二维码,绑定GPRS设备.然后使用小程序通过GPRS远程控制开发板上的继电器, 远程显示单片机采集的温湿度数据. 演示视频: https://www.bilibili.com/video/av74786153 一,硬件程序 硬件程序采用基础篇 https://www.cnblogs.com/yangfengwu/p/11762609.html  的底层硬件程序 该源码已经拷贝到了当前测试…
本文已经不维护,新地址: http://www.cnblogs.com/dailc/p/8097598.html 说明 Hybrid模式原生和H5交互原理 目录 前言 参考来源 前置技术要求 楔子 Android.iOS原生和H5的基本通信机制 Android端 iOS端 原生和H5的另一种通讯方式:JSBridge 什么是JSBridge 为什么要用JSBridge JSBridge原理以及实现 前言 参考来源 前人栽树,后台乘凉,本文参考了以下来源 JSBridge-Web与Native交互…
说明 JSBridge实现原理 目录 前言 参考来源 前置技术要求 楔子 原理概述 简介 url scheme介绍 实现流程 实现思路 第一步:设计出一个Native与JS交互的全局桥对象 第二步:JS如何调用Native 第三步:Native如何得知api被调用 第四步:分析url-参数和回调的格式 第五步:Native如何调用JS 第六步:H5中api方法的注册以及格式 进一步完善JSBridge方案 思路 实现 注意 完整的JSBridge 完整调用流程图 另外实现:不采用url sche…
前言 这一节和上一节是搭配的 给大家鱼,也必须给鱼竿! 我期望自己封装的代码,无论过了多少年都有应用的价值! 这节说明一下制作APP用户程序的过程 咱是用MQTT通信控制模块实现升级,所以首先自己的程序先实现MQTT哈. 协议 注:所有的实现MQTT的软件,统称为MQTT上位机 一,MQTT上位机通过MQTT发送获取设备信息指令 {"data":"updata","cmd":"DeviceInfo"} //设备接收到回复 {&…
说明 Native.Hybrid.React.Web App方案的分析比较 目录 前言 参考来源 前置技术要求 楔子 几种APP开发模式 概述 Native App Web App Hybrid App React Native App 分析 各大开发模式直观对比 如何选择开发模式 另类的app方案 微网页 微信小程序 其它 前言 参考来源 前人栽树,后台乘凉,本文参考了以下来源 对当前主流hybrid app.web app与native app工具的初步比较与分析 H5.React Nati…
前言 祝大家国庆快乐,本来想国庆之前更新完的,结果没写完,今天把剩下的代码补了一下总算ok了. 本章节也是我们后端日常开发中最重要的一步就是测试,我们经常听到的单元测试.集成测试.UI测试.系统测试,还有就是最常见的(人肉测试),这些理论知识我记得老张有个视频讲了2篇,欢迎大家可以去群里骚扰老张,我找不到那个链接了. 话不多说直接上车! 理论速过 ABP 框架的设计考虑了可测试性.有一些不同级别的自动化测试: 单元测试:您通常测试单个类(或几个类一起).这些测试会很快.但是,您通常需要处理服务依…