下面的这些文章写的都比我好很多,但:
希望你在点击完下面的连接后,最终能回归文章,继续搭建自己的物联网平台。
预读文章:
Django 中文教程:自强学堂
为Django添加TCP连接方式:Channels
推荐扩展阅读:
使用到的工具:
Redis 数据库安装方法:Redis安装
Channels-redis:Github 官方库
同类文章:
这篇文章来之不易,总共花费了我整整6天的时间,其中5天摸索,1天写文章,还望好好阅读。
其中未使用STM32+ESP8266的方式是因为我不知道该如何回应服务器端Ping ESP8266的Pong,这里应该是要自己手动去实现WebSocket的Ping、Pong的,然后再发送给ESP8266的串口,后期需要的话再看下能自己实现不。
socket断开的原因分析
在摸索过程中只发现了ESP8266 的Arduino 库实现了Ping 、Pong,故采用之。
本文总共对以下几个部分进行讲解:
如何将使用Arduino 来开发 ESP8266;
使用python的 WEB 框架 Django 来开发自己的云平台。
一、将使用Arduino 来开发 ESP8266
1.1 ESP8266硬件连接
这里我是用的是ESP-12S,算是ESP8266的升级版本,还有一个名字叫做NodeMCU,当然,使用普通的ESP8266也是一样的,ESP8266的版本将不会对本节实验产生影响,任选一款即可。
ESP-12引脚定义
推荐接线方式
对于上图的接线方式,左上角的复位开关建议加上,右下角的轻触开关建议换成拨动开关。
我的实物图
1.2 将使用开发Arduino的方式去开发ESP8266
这里有两篇文章进行了介绍,可以参考他的方式去给Arduino添加ESP8266的包管理器。
这里本来没什么难度,但要注意的是:
插入链接https://arduino-esp8266.readthedocs.io/en/latest/installing.html#boards-manager至Arduino IDE后,要重启Arduino IDE才行;
下载包的时候网络问题,由于总所周知的原因这里不展开介绍;
程序下载的时候需要选好参数,否则会下载不成功,这里每一款模块都是不一样的,我的是ESP-12S的,仅供参考。
ESP8266 Arduino core 程序下载参数配置
当上面的工作完成后,应该就能够用Arduino IDE给ESP8266下载程序了,这里自己下载程序验证一下,推荐使用串口程序验证,看看是否生效。
二、云平台开发
2.1 为什么需要用WEB框架来进行开发
你可能会问,为什么需要用WEB框架来进行开发,如果是小型项目,确实可以不用