继「DIY 一台小方屏来显示树莓派信息」和「基于 ESP32 制造系统监控屏」之后,本期我们将介绍一个桌面显示装饰项目。
使用 ESP8266 和 2.8 通过无线网络从网站制作显示屏的英寸触摸屏 openweathermap.org 在显示器上获取当地的天气信息。
显示内容包括:1.时间和日期。2.温度、压力、湿度、降雨等详细天气信息。3、未来 7 天气预报。
组件清单
Wemos D1 Mini Pro X 12.8″ 触屏显示屏 X 130 AWG 电线 X 若干USB 数据线 X 11.75mm 白色 PLA 3D 打印耗材 X 若干3D 打印机 X 1烙铁 X 1电线钳 X 1剥线钳 X 1
准备线材并焊接
由于显示屏的外壳相对较小,空间紧凑,Wemos 板和连接线都需要放在里面,所以所有的线都要提前处理好,长度要合适。最后,我选择了 30 AWG 的单股线。
如图所示,用钳子切割成 14 根等长的电线,然后用剥线钳剥去电线的绝缘层。
如图所示,TFT 显示器有预留的可焊直头针,可安装在面包板或任何其他开发板上。
有两种焊接方法可供参考:1、将排针从 PCB 拆下,然后直接焊接电线。直接焊接到排针上。
我更喜欢第二种焊接方法,它会更容易,而且不需要技能。焊接前,在所有引脚上涂抹少量焊剂,然后在烙铁前端涂少量焊料。
镀锡是非常必要的,因为它使焊接过程更容易,导线和引脚之间更牢固。
如图所示,将电线焊接到所有引脚上。
3D 打印
我参考了 Thingiverse 一个模型,然后在 Autodesk Fusion 360 修改外壳。所有部件的尺寸均由游标卡尺测量,与设计过程中的尺寸一致。
外壳包括外壳、后盖和底盖。
3D 印刷设置如下:打印速度:60mm/秒层高厚度:0.2mm填充密度:20%:挤出机温度:210℃床温:60℃
3D 本项目文件库可下载打印文件:https://make.quwj.com/project/408
安装显示屏
显示器有两种安装方式:1.将显示屏放入外壳中,然后与之相处 Wemos 板接线。二、将显示器与 Wemos 板线连接后,安装在外壳中。
我选择了安装显示器的第二种方式。
如图所示,将按照原理图进行 TFT 显示模块 (ILI9341) 的引脚与 Wemos 引脚相连。
引脚接线方式如下:TFT 显示->Wemos (ESP8266)VIN -> 3.3VGND -> GNDCS -> D1RESET -> RSTDC -> D2SDI -> D7SCK -> D5LED -> D8SDO -> D6T_CLK -> D5T_CS -> D3T_DIN -> D7T_DO -> D6T_IRQ -> D4
下载原理图,打印出来,焊接时查看,节省时间。焊接时注意正确的引脚焊接。错误的焊接会损坏显示模块或 Wemos 板。焊接时要非常小心。
本项目文件库可下载原理图:https://make.quwj.com/project/408
准备 ESP8266 开发环境
ESP8266 不包括在模块中 Arduino IDE,需要先安装。操作如下:
1、启动 Arduino IDE 并打开 Preferences 窗口。
2、在 Arduino IDE 的 File > Preferences > Additional Boards Manager URLs 输入字段:https://arduino.esp8266.com/stable/package_esp8266com_index.json
3、使用 OK 按钮关闭窗口 Tools > Board menu 打开开发板管理器,然后选择正确的 ESP8266 开发板。4、选择 LOLIN(WEMOS) D1 R2 & mini。将 CPU 频率设置为 80MHz,Flash Size 设置为 “4MB (FS:3MB OTA:~512KB)”以及 COM 端口。
下载代码和库
Arduino 代码:https://github.com/ThingPulse/esp8266-weather-station-color
库:1、Mini Grafx by Daniel Eichhornhttps://github.com/ThingPulse/minigrafx
2、ESP8266 WeatherStation by Daniel Eichhornhttps://github.com/ThingPulse/esp8266-weather-station
3、Json Streaming Parser by Daniel Eichhornhttps://github.com/squix78/json-streaming-parser
4、ThingPulse XPT2046 Touch by ThingPulsehttps://github.com/ThingPulse/XPT2046_Touchscreen#xpt2046-touchscreen-arduino-library
如果你已经安装了原始的 XPT2046_Touchscreen,需要先卸载。
下载库后解压并在 Arduino Library Manager 路径为:Sketch > Include Library > Manage Libraries…
获取 OpenWeatherMap API Key
来自天气数据 https://openweathermap.org/price 因此,必须获得网站 OpenWeatherMap API 密钥。
1.选择第一列免费栏,限制在每分钟 60cpm。
2.点击获取API 密钥,然后填写凭证,创建新账户。3、记下 API 下一步代码使用密钥。
上传软件
设置 Arduino IDE 并安装所有库后,将代码上传到 ESP8266 板(Wemos D1 Mini Pro 或其他板)。
1.解开前一步下载的代码,然后保存并删除文件夹名称中的代码 master,命名为 “esp8266-weather-station-color”。
2.打开文件夹并单击 “esp8266-weather-station-color.ino ”。
3.在选项卡中使用 IDE 打开 settings.h。浏览文件并调整两个配置参数。它们都直接记录在文件中。最后设置 OpenWeatherMap API 密钥。
安装外壳
如图所示,安装显示器和电路板后,固定两个盖子。外壳设计得很紧,所以盖子不需要任何胶水或螺钉来固定。
底座部分使用较小的盖子,显示器背面使用较大的盖子。将盖子与外壳中的插槽对齐,然后按压。
测试
如果您已经成功地上传代码 ESP8266可立即搜索 WiFi 网络看到设备。将设备连接到 WiFi 路由器后,它将从网络中获取时间和天气数据。
现在你可以在那里了 TFT 所有天气信息和其他数据都可以在显示屏上看到,不同的页面也可以通过触摸笔或手指切换(触摸屏显示功能可能需要以前校准)。
我对这个小饰品的最终效果很满意,在任何场合给朋友都很好!
本项目文件库中可下载项目使用的代码:
via instructables.com/ESP8266-Weather-Widget-V2
1.深度:设计标准嵌入式项目时应考虑缺陷
2.嵌入式C编程经验 | 全局变量猛于虎
3.吐槽物联网开发难,一群工程师搞个Toit 并宣布开源
4.一篇文章理解国产芯片 VS 国外芯片!
5.试试只有150MHz的MCU上跑通过全套时装识别系统~
6.如何在嵌入式中运用设计模式?
免责声明:本文网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。