加入交流群  

扫一扫,添加管理员微信
备注:参考设计,即可被拉入群
和也在搞设计小伙伴们碰一碰

收藏 

评论 

王达业 发布

[已验证] ESP8266桌面气象站

 
设计简介

程序及说明可以参见原文网址:项目,也可以依照本文中的说明制作。

焊好后的成品(USB接口及电池焊点建议打胶固定,避免脱落):

 

这是一个用于连接ESP8266 NodeMCU和ILI9341 2.8寸触摸屏的转接板,自带AMS1117 LDO和可选的锂电池及充放电管理,四格电量指示,以及一枚物理开关。3D模型见附件,提供OBJ、STEP和STL三种格式。

 

 

所需材料:

1.接插件

        1*14排母(用于连接屏幕)*1

        1*15排母(用于连接NodeMCU,其中靠近肖特基二极管D2的两个排母根据NodeMCU型号二选一焊接,兼容串口芯片为CP2102、CH9102X和CH340的NodeMCU)*2

 

2.直插元件

        SS12D10G5开关(PWR)*1

        MicroUSB插座(USB)*1

 

3.贴片元件

        0805封装贴片LED(25%、50%、75%、100%)*4

        1206封装贴片10kΩ电阻(R1、R2)*2

        1206封装贴片82kΩ电阻(R3)*1

        0630封装贴片2.2uH电感(L0630)*1

        0805封装贴片100nF电容(C1、C2、C3、C4)*4

        1210封装贴片22uF电容(C5、C6)*2

        1210封装贴片10uF电容(C7、C8)*2

        1206封装贴片4.7uF电容(C9)*1

        SMA封装贴片SS34肖特基二极管(D1、D2)*2

        SOT-223封装AMS1117稳压芯片(U1、U2)*2

        ESOP-8封装ETA9740充放电管理芯片(ETA9740)*1

 

4.电池

        锂聚合物电池(我使用582535型号,容量420mAh,带保护板,不过可以换成略大一点的电池。放电池的空间最多有 长40mm×宽25mm×厚7mm)*1

 

 

其余说明及程序参数借用原文:

1.安装Arduino中的ESP8266环境;

 

2.下载代码和库(附件中也有):

Arduino 代码:https://github.com/ThingPulse/esp8266-weather-station-color

库:
1、Mini Grafx by Daniel Eichhorn:https://github.com/ThingPulse/minigrafx

2、ESP8266 WeatherStation by Daniel Eichhorn:https://github.com/ThingPulse/esp8266-weather-station

3、Json Streaming Parser by Daniel Eichhorn:https://github.com/squix78/json-streaming-parser

4、ThingPulse XPT2046 Touch by ThingPulse:https://github.com/ThingPulse/XPT2046_Touchscreen#xpt2046-touchscreen-arduino-library

如果如果你已经安装了原始的 XPT2046_Touchscreen,需要先卸载。

 

3.获取 OpenWeatherMap API Key

天气数据来自 https://openweathermap.org/price 网站,所以必须获得 OpenWeatherMap API 密钥。

1、选择第一列免费那一栏,限制为每分钟 60cpm。

2、点击获取“Get API key”,然后填写凭据后创建一个新帐户。

3、记下 API 密钥,下一步代码时使用。

4、访问 https://api.openweathermap.org/data/2.5/weather?q={City}&appid={API key} (“{City}”用自己的城市名称(如“Beijing”)代替,“{API key}”用上一步获取的密钥替换),应该会获得和下图类似的结果(图片来源于官网说明文档 https://openweathermap.org/weather-data):

5、记下第二行的“id”后的一串数字,这是下一步会用到的OPEN_WEATHER_MAP_LOCATION_ID城市代码。

 

4.修改程序参数:

1、打开文件夹并点击 “esp8266-weather-station-color.ino ”。

2、打开选项卡中的 settings.h,浏览文件并调整几个配置参数,在第一个红框中分别填上WiFi名称和密钥,在第二个红框中填上上一步获取的API密钥,在第三个红框的OPEN_WEATHER_MAP_LOCATION_ID处填上城市代码,在DISPLAYED_LOCATION_NAME处填上城市名称,最后一个红框不用管。

3.连接NodeMCU至电脑,选择正确的端口号并上传程序。

 

5.上传程序到ESP8266。

 

 

组装:

1.将液晶屏模块缓慢放入外壳中:

2.如果顺利的话,屏幕应该会嵌入上壳的槽中(翻过来检查时要在背后顶住屏幕模块,否则屏幕可能会陷下去):

3.确认屏幕与外壳齐平后在屏幕模块的四个角挤上一点热熔胶:

4.将NodeMCU装到焊接好的PCB上(注意方向,USB口朝下,这款是宽版的串口芯片为CH340的NodeMCU,故焊接靠外的排针):

5.将安装好NodeMCU的PCB轻轻放入外壳中(排针对齐):

6.在屏幕排母的焊点处稍用力按压至排针嵌入排母中(此时PCB上端会下陷,因为没有支撑):

7.打开开关检查,若屏幕点亮则说明电路连接正常。将NodeMCU轻轻向上提,确保PCB与桌面平行后用热熔胶在PCB四个角点胶固定:

8.等到热熔胶冷却后,盖上后盖(旧版的外壳有两个开槽,一个是开关,另一个是WiFi模组的位置,后来发现打开后盖后再拨动开关更方便,就取消了两个开槽(实测外壳对NodeMCU的WiFi信号影响不大)):

9.侧面的电量指示灯:

10.成品(旧版外壳尺寸有问题,上下壳之间有缝隙。附件中的压缩包为新版外壳,已修复该问题):

参考设计图片
×

!注意:请使用浏览器自带下载,迅雷等下载软件可能无法下载到有效资源。

 
群聊设计,与管理员及时沟通

欢迎加入EEWorld参考设计群,也许能碰到搞同一个设计的小伙伴,群聊设计经验和难点。 入群方式:微信搜索“helloeeworld”或者扫描二维码,备注:参考设计,即可被拉入群。 另外,如您在下载此设计遇到问题,也可以微信添加“helloeeworld”及时沟通。

 
查找数据手册?

EEWorld Datasheet 技术支持

论坛推荐 更多
更新时间2024-11-08 10:36:04

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版 版权声明

EEWORLD参考设计中心

站点相关: TI培训 德州仪器(TI)官方视频课程培训

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved