热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

13STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案微信小程序篇(网页版MQTT,小试牛刀)...

https:www.cnblogs.comyangfengwup11148976.html抱歉哈最近由于做板子,,教程的进度落下了这些天总共做了还几块板子首先对当前这个

https://www.cnblogs.com/yangfengwu/p/11148976.html

 

抱歉哈...最近由于做板子,,教程的进度落下了...

这些天总共做了还几块板子

首先对当前这个教程的这个板子做了修订,调整了下布局,替换换了以前用的Micro USB 接口,开关降压改为MP4462

 

 

STM32+Air720H(全网通GPRS)+以太网+422/485+4-20ma采集    https://www.cnblogs.com/yangfengwu/category/1472273.html

后来感觉价格上还是有点高,所以做了另一块板子

 

STM32+Air202(2G)+以太网+422/485+两路继电器,,实现的功能和上面的一样,主要是学习下W5500,还有就是远程和PLC通信控制

我买的PLC已经到了

 

 为了安全性,我选择的是24V供电的PLC

 

 

 

 

 

 然后还有个WiFi单路继电器,10A  和 16A

所有的都是我自己捣鼓的...外壳上面的图是我用PS做的,然后找的厂家激光打印的.

 

   

 

 

 

 

 

 最后做了一个  移远的 M26的Mini板

 

 

 不过确实够.....

我做的板子渐渐的靠近直接使用..其实主要还是因为我配的教程都是直接应用型的,,,除了公开的基础的教程

要是还做成学习板的形式,感觉发挥不了更实际的作用....

 

 

对了一直没说我的微信小程序篇具体实现什么功能

1,SmartConfig 实现配网 ,小程序负责绑定

2,微信公众号点击按钮跳转网页,网页里面实现控制设备

3,小程序其中一个呢,直接打开网页,,就是和上面一样

4,直接用小程序的API实现MQTT,通信控制

...其实就说这些..

但是讲这些之前,,需要先把所有的基础给大家.....预防看不懂....

 

打开这个

 

 

 

 

 说一下哈,html和php都提供了实现MQTT的函数,,咱先用html里面的实现

 

 

 

 

 

还记得做升级篇的时候,咱用单片机+AT指令实现的MQTT,,当时是去官方下载的封装包

这次咱也是去下载那个包

https://developer.emqx.io/sdk_tools?category=MQTT_Clients

 

先用这个

 

 

 

 

 

 

 

 提供了一个完整版的,和一个精简版的

完整版的支持SSL

 

咱就用完整版的

拷贝到工程目录下

 

 

 

 

 

 

 其实官方给了例子

 

 

 因为咱是写JS实现部分,所以需要写到,其实网页最常用(几乎是必须)的是

html  (咱建的这个工程就是个html)  主要是做一些控件展示给用户看      https://www.cnblogs.com/yangfengwu/p/10947388.html

css (负责html控件的布局,属性(颜色什么的))     https://www.cnblogs.com/yangfengwu/p/10979101.html

Javascript   对网页行为进行编程     http://www.w3school.com.cn/js/js_shiyong.asp

  

 

 

 这三个家伙可以直接放到一个html文件里面,,学习测试可以这样,,一般都是各自建文件,然后在html里面加载

加载 CSS 

 

 

加载 JS  

 

 

 

 

 

 

 

 

 

 

 

这里有API介绍

https://www.eclipse.org/paho/files/jsdoc/Paho.MQTT.Client.html

 

 现在改一下IP和端口号

 

 

 注意哈,走的是MQTT的WebSocket 端口

还要说一下,,不管走的MQTT的什么端口,只要两个设备的订阅和发布的主题对应,那么两个设备就可以通信

 

 

 

 说明是可以的

咱现在用调试助手测试

 

 

 重新启动下网页那个

 

 

 现在连接也没填什么用户名和密码...

给的API可以配置用户名和密码

 

 

 

 

 

client.connect({onSuccess:onConnect,userName:"yang",password:"11223344"});

 

 测试下

 

其实可以这样

 

 

var Options={onSuccess : onConnect,userName : "yang",password : "11223344"};client.connect(Options);// connect the client 连接...

 

忘了说一件事情

var 是js里面定义变量用的,定义变量就用var

var Options={onSuccess : onConnect,userName : "yang",password : "11223344"};

这个呢...只不过是个语法糖而已,你这样写进去,它里面肯定是判断前面的字符串名字,然后获取 : 号后面的值,然后填写到MQTT打包
函数里面
其实很多这样做的,你按照这样的规定写,内部解释器就认你....
还是那句话,如果你早生几十年,如果你也有幸参与js的工作,或许你有自己的规定
那天我在群里说类似的这句话,有个人,发了个图片,上面写着:我就静静的看着
唉,他不明白我说这句话的含义,很多知识是人规定的,很多时候你不要纠结于为什么这样规定,因为很多东西都使用了这么多年了,既然一直
存在着,就一定有存在的意义. 但是请不要把这句话当作借口,该深入了解的知识,还是需要深入了解.

 

基础教程的源码都是公开的,可以看博客阅读说明下载

这节先这样,下节接着完善
https://www.cnblogs.com/yangfengwu/p/11198572.html

 

转:https://www.cnblogs.com/yangfengwu/p/11192639.html



推荐阅读
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • Python实现变声器功能(萝莉音御姐音)的方法及步骤
    本文介绍了使用Python实现变声器功能(萝莉音御姐音)的方法及步骤。首先登录百度AL开发平台,选择语音合成,创建应用并填写应用信息,获取Appid、API Key和Secret Key。然后安装pythonsdk,可以通过pip install baidu-aip或python setup.py install进行安装。最后,书写代码实现变声器功能,使用AipSpeech库进行语音合成,可以设置音量等参数。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了作者在开发过程中遇到的问题,即播放框架内容安全策略设置不起作用的错误。作者通过使用编译时依赖注入的方式解决了这个问题,并分享了解决方案。文章详细描述了问题的出现情况、错误输出内容以及解决方案的具体步骤。如果你也遇到了类似的问题,本文可能对你有一定的参考价值。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 生成对抗式网络GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN介绍
    一、GAN原理介绍学习GAN的第一篇论文当然由是IanGoodfellow于2014年发表的GenerativeAdversarialNetworks(论文下载链接arxiv:[h ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了Perl的测试框架Test::Base,它是一个数据驱动的测试框架,可以自动进行单元测试,省去手工编写测试程序的麻烦。与Test::More完全兼容,使用方法简单。以plural函数为例,展示了Test::Base的使用方法。 ... [详细]
author-avatar
Ly丶爱着那一个人_686
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有