基于STM32与ESP8266的太空人WiFi天气时钟(代码开源)_esp8266 开源项目

本文介绍了一个基于STM32和ESP8266的太空人WiFi天气时钟项目,通过ESP8266的AT指令进行WiFi连接与配置,利用知心天气API获取实时天气数据。讲解了ESP8266的串口通讯、UART配置、CubeMX设置以及代码解析,包括LCD显示和GIF动图的实现。
摘要由CSDN通过智能技术生成

LCD显示引脚:

VCC --> 3.3V

GND --> GND

CLK --> PA5

DIN --> PA7

RES --> PB0

DC --> PB1

CS --> PA4

ESP8266模块引脚:

VCC --> 3.3V

GND --> GND

RX–> PB10

TX --> PB11

RST --> PB9

EN --> PB7

一、ESP8266简介与使用

1.1 ESP8266简介

ESP8266是一款超低功耗的UART-WiFi透传模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备物联网应用设计,可将用户的物理设备连接到Wi-Fi无线网络上,进行互联网或局域网通信,实现联网功能。

ESP8266上海乐鑫信息科技(国产)设计的低功耗WiFi芯片,集成完整的TCP/IP协议栈和MCU网上ESP8266型号很多,基本都具备联网功能,部分型号可以直接作为MCU使用)。而ESP8266模块是深圳安信可公司基于ESP8266芯片研发(增加必要外围电路、串口flash、板载天线等)的串口WiFi模块,成本低、使用简便、功能强大。

一般是模块固件损坏或者买回来里面可能被别人刷过固件需要擦除或者增加固件才用,作者的ESP8266是因为烧写了Arduino IDE的例程进去,不能识别AT指令,后来用不到了才想到刷回AT固件刷固件有风险!!!如果大家买的是ESP8266 nodeMCU可能就需要刷AT固件

1.2 硬件与网络的桥梁——ESP8266

ESP8266模块和串口蓝牙JDY-31模块一样,串口WiFi模块也是扩展单片机功能的又一神器。小巧的 ESP8266 WiFi模块通过串口AT指令与单片机通讯,实现串口透传,非常好上手(部分型号ESP8266可以直接当MCU,无需再通过串口与其他MCU通讯)。

透传,又称透明传输,具体来说就是“输入即输出(如从WiFi模块串口输入的字符会透传到服务器端)”,数据不改变不同协议之间的转换(如串口到WiFi、蓝牙等)由模块完成。使用者无需关心内部具体实现,因此模块对于使用者是“透明的”、似乎不存在的(因为可无视中间的实现原理)。一个高度封装的模块,应该隐藏内部实现细节,仅对外提供使用接口。

把硬件联网之后,就再也不是“玩单机”了。配合服务器端的Socket网络编程,可以玩许多东西。所以我觉得WiFi模块是连接软件(网络编程)与硬件(单片机)的桥梁,把所学的单片机(MCU)Web知识联系起来了。

如今大火的物联网等概念都属于**“智能硬件"**,ESP8266等模块的出现大大减少了网络开发的难度系数,也进一步促进了技术下放。而且,通过学习ESP8266/ESP32等模块,可以熟悉大量TCP/IP等网络协议,对后续Linux系统板网络开发也是极具意义的。

1.3 ESP8266使用——AT指令

AT指令最早在蓝牙模块上接触过,所谓AT指令实质上就是一些起控制作用的特殊字符串。模块可以通过AT指令控制搭配使用源代码API函数开发,总体开发速度快,难度较低。

说明:下面仅列举一些最常用的AT指令及用法,指令的详细参数及使用说明请参考官方文档:ESP8266 AT指令集

基础AT指令

指令 描述
AT 测试AT启动
AT+RST 重启模块
AT+GMR 查看版本信息

AT 是最常用的指令,用于测试模块能否正常接受指令。在sscom中向串口发送指令 AT ,若收到模块返回的 OK 则说明模块的AT指令可正常工作。发送 AT+GMR 可查看AT指令及SDK的版本号,一般最新版指令会增加一些新功能,可随时关注官方的更新。

WiFi功能AT指令

WiFi是让硬件联网的基础,和其他功能一样,这里仅列举所需的常用指令,更详细指令说明还得查阅文档。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值