关于ESP8266是否要进行烧录固件的问题

昨晚确实给我整麻了,烧录个固件弄的焦头烂额的,本次实训所用的ESP8266其实可以不用进行烧录固件,但我都烧录ok了,那还是留下点东西来防止以后忘掉吧

首先是烧录软件

ESP8266烧录软件           提取码为2471

接下来是有关ESP8266的标准固件,这个亲测没有问题

ESP8266的标准固件         提取码为2471

下载完软件之后,是这个样子,一定不要选错参数,要不然真的很折磨

点击OK后,弹出一个新的界面

上面的参数一定不要弄错,一定要按照顺序。

接下来要做的就是配置硬件管脚的连接

我这里使用的是ESP8266-01S,所以EN管脚我可以不连接的,大家在烧录时候一定要注意产品型号,根据数据手册来决定管脚的连接

ESP8266 USB转TTL
3V3 3V3
TX RXD
RX TXD
GPIO0 GND
GND GND

做完这些准备工作,就可以开始烧录了,我们点击start,上方的IDLE会变成重新上电,这时候,我们手动拔插一下GND或者3V3即可。

ESP8266与电脑的通信

在使用ESP8266直接与电脑进行通信时,我单纯的以为,只要有一个USB转TTL就可以了,但事实不是这样的,首先要注意的一点是,GPIO0只有在烧录的时候,才需要接地,在使用的时候,悬空即可,同时,我们还需要单独给ESP8266供电,也就是说,对于ESP8266-01S来说,3V3和GND都需要其他设备来供电,而且GND还必须跟USB转TTL的GND共地。老师一开始也觉得很麻烦,后来老师在模块间用电烙铁焊接了一个大电容,把VCC和GND接了起来,这样就不需要额外给模块供电了

剩下的就是ESP8266与我们的STM32F103C8T6最小核心板的连接了

ESP8266 STM32F103C8T6
3V3 3V3
GND GND
TX PA3
RX PA2
RST PC14

连接完之后,我们就可以让单片机向ESP8266发送指令,我们就可以接收到了

代码部分

这里的代码,我在Demo的基础上进行更改的,Demo地址如下:

链接:https://pan.baidu.com/s/1UmlpvyYogR2LDeLSDRrOPw 
提取码:2471

这里我只给大家强调一下需要更改的地方。

首先是ESP8266的相关代码,下面是两条宏定义,其中第一个宏定义是我们的ESP8266要对我们的wifi进行连接,我们这个格式一定不能错。大家如果需要修改的话,可以在第一个逗号前输入自己的wifi也可以是自己的手机热点,逗号后面大家可以放自己的密码。要注意的是,千万不要乱更改\,我相信有C语言基础的同学一定知道原理,这里我就不再赘述了

第二个宏定义呢是MQTT协议的一个格式,这里呢,其实是不需要进行更改的,如果大家没有用该协议,那么此处需要更改,其余的地方,我们不需要更改

#define ESP8266_WIFI_INFO        "AT+CWJAP=\"TP-LINK_970E\",\"sdkjdx312\"\r\n"#define ESP8266_ONENET_INFO        "AT+CIPSTART=\"TCP\",\"183.230.40.39\",6002\r\n"

在onenet.c文件下,我们也要对三个宏定义进行更改

#define PROID        "530747"#define AUTH_INFO "5678"#define DEVID       "962710140"

这里的三个宏定义分别是产品ID(注意,千万不要看成是用户ID)

在这里呢,我们就需要进入Onenet的官网了,在上面匹配下我们的信息了

OneNET - 中国移动物联网开放平台 (10086.cn)

如何在平台上配置自己的ESP8266设备

可以参考我的资源,链接我放在下面

ESP8266的准备工作,Onenet配置一个ESP8266设备-智能家居文档类资源-CSDN文库

产品ID如下

鉴权信息

就是大家在申请的时候自己写的内容,千万不要写错,你写的是1234,那填的时候就是1234

设备ID

做完这些更改后,我们的任务还没有结束

STM32F103C8T6更改系统频率

要想防止我们的串口出现乱码的现象,大家一定要给核心板更改系统频率

大家可以看到,我们的核心板上的外接晶振是8MHZ的,而我们的程序里却是12MHZ的晶振。

大家可以在左侧的项目里找到system_stm32f10x.c文件,使用CTRL+G输入1056找到倍频,将RCC_CFGR_PLLMULL6改为RCC_CFGR_PLLMULL9;

在stm32f10x.h文件下,使用CTRL+G找到时钟,将12000000改为8000000;

然后再点开我们的魔法棒,将晶振频率12.0M改为8.0M

到此为止,我们就完成了更改频率这一步

使用我们的ST-LINK将代码烧录进单片机,具体可以参考我的上一篇博客,点开我的个人主页即可

当一切准备妥当之后,这就是我们的串口助手所给我们展示的。

最终代码展示

大家可以下载下来参考一下。

stm32与esp8266上传的数据到ONENET代码展示-智能家居文档类资源-CSDN文库

从网站上监视数据

大家可以点开这个控制台,点击下面的切换旧版

在这里,我们可以看见我们创建出来的产品

点开其中一个产品,我们点击设备列表

我们的产品是在线的,再点击数据流

我们就可以看到我们的参数了

只不过这里我用每隔13秒左右让温度和湿度实现一次自加,来替代DHT11采集到的数据。

STM32F103C8T6与ESP8266构建通信(二)相关推荐

  1. stm32f103c8t6控制ESP8266与手机APP通信

    stm32f103c8t6控制ESP8266与手机APP通信 之前已经发表过利用stm32控制蓝牙模块与手机APP通信的文章,那么现在我就来说说用WIFI模块来控制与手机APP的通信 首先需要的器件如 ...

  2. 基于STM32F103C8T6与ESP8266的物联网智能温度采集与蓝牙OLED数字钟的设计与实现

    基于STM32F103C8T6与ESP8266的物联网智能温度采集与蓝牙OLED数字钟的设计与实现 作者: 颜孙炜 文章目录 基于STM32F103C8T6与ESP8266的物联网智能温度采集与蓝牙O ...

  3. stm32f103c8t6+esp8266在WiFi下通过手机控制外设

    stm32f103c8t6+esp8266在WiFi下通过手机控制外设 前言 准备材料 实验目的 实验效果 代码 主函数 对esp8266初始化 总结 代码 前言 通过上一篇,介绍了esp8266的基 ...

  4. R语言使用R基础安装中的glm函数构建乳腺癌二分类预测逻辑回归模型、分类预测器(分类变量)被自动替换为一组虚拟编码变量、summary函数查看检查模型、使用table函数计算混淆矩阵评估分类模型性能

    R语言使用R基础安装中的glm函数构建乳腺癌二分类预测逻辑回归模型(Logistic regression).分类预测器(分类变量)被自动替换为一组虚拟编码变量.summary函数查看检查模型.使用t ...

  5. STM32学习笔记-USART串口通信+与野火STM32F407板载ESP8266进行通信

    文章目录 STM32USART介绍 STM32USART框图 第一部分 第二部分 第三部分 发送器 时序图 接收器 第四部分 软件部分: STM32通过USART与板载ESP8266通讯实验 板载WI ...

  6. stm32F103C8T6的can总线通信实验

    本篇文章介绍一下stm32F103C8T6的can总线通信实验 需要两块stm32F103C8T6板子 can通信主要是用于两块板子之间的通信,简而言之就是用一块板子发指令,另一块板子接收指令并发出动 ...

  7. ESP8266 SPI通信

    设备与设备之间的通信往往都伴随着总线的使用,而用得比较多的就当属于SPI总线和I2C总线,而恰巧NodeMcu也支持这两种总线通信 1. SPI总线--SPI类库的使用 SPI是串行外设接口(Seri ...

  8. 基于STM32F103C8T6的HC-06蓝牙通信

    文章目录 前言 注意看 ! 一.蓝牙通信流程 二.怎么实现蓝牙通信 1.了解蓝牙模块功能 2.了解蓝牙通信本质 3.进行AT命令调试 4.调试完成,连接通信 三.结尾 前言 注意看 ! 如果朋友们遇到 ...

  9. iOS开发之使用XMPPFramework实现即时通信(二)

    上篇的博客iOS开发之使用XMPPFramework实现即时通信(一)只是本篇的引子,本篇博客就给之前的微信加上即时通讯的功能,主要是对XMPPFramework的使用.本篇博客中用到了Spark做测 ...

最新文章

  1. 解析|2G~5G与未来天线技术!
  2. 王超:奇虎360MongoDB
  3. 这样设置ae导出文件的时候m1还是能顶得住的,3分钟的事情渲染一个开场
  4. Windows 下音频数据采集和播放
  5. 新窗口打开html页面,网页是选择新窗口打开还是原窗口打开?
  6. 算法入门——排序算法
  7. maven 编译命令
  8. Android注解编程的第一步---模仿ButterKnife的ViewBinder机制
  9. C#-Activex插件操作指南
  10. 【VS2015】 C++实现硬件ID的查询
  11. Output Messenger 2.0.10 Full - 即时消息软件(服务端+客户端)
  12. 修改mysql中自增列的起始值
  13. 用Raphael在网页中画圆环进度条
  14. vue 车牌号校验(含新能源)
  15. mysql创建部门表和员工表,并用sql语句进行查询
  16. 2019年免费测试SRRC认证哪里办
  17. 基于反演法的悬架控制
  18. 如何做一个股票自动交易系统的步骤
  19. 企业电子招投标采购系统——功能模块功能描述
  20. 开源web软件——文本编辑器

热门文章

  1. MybatisPlus入门学习
  2. Android2023暑期实习---网易游戏一面面经
  3. 在线PS入门教程:如何对人像快速抠图
  4. logstash简介及基本操作
  5. 伺服电机代替步进电机时应该注意那些细节?
  6. 3D数学基础——矩阵、欧拉角和四元数的相互转换与比较
  7. IT 圈所谓的凛冬将至
  8. SOLID之单一职责原则:简约而不简单
  9. 科技新品 | 大疆航拍小飞机重量不到249克;绘王数位屏薄至12毫米;追觅科技机器人吸尘器低至65分贝静音水平...
  10. Win8卸载2345看图王