本文是RT-Thread用户@xusiwei1236 原创发布,是用于参加RT-Thread与国民技术联手推出N32G457 RT-Thread设计大赛,原文:https://club.rt-thread.org/ask/article/3649.html
基于RT-Thread和N32G457的墨水屏日历
项目概述
本项目硬件部分包含N32G457开发板、ESP8266 Wi-Fi模组、W25Q128闪存模组、4.2寸三色墨水屏和墨水屏驱动板,硬件功能上使用了N32G457芯片的SPI、UART、GPIO。软件部分包含业务代码、RT-Thread内核、RT-Thread组件包以及微雪的墨水屏驱动,软件上使用了RT-Thread的一些内核API(线程、信号量、互斥锁等),以及组件库的不分组件报(at_device、cJSON、FlashDB、gbk2utf8、webclient、netutils)。最终实现了——在4.2寸三色墨水屏上显示当前日期、所在城市、室外温度、天气、阳历、农历等信息。
项目背景
本项目是【RT-Thread-创新“芯”引擎 | 国民技术N32G457 RT-Thread设计大赛】参赛项目之一,大赛活动链接:
https://club.rt-thread.org/ask/article/3236.html
项目简介
本项目实现了哪些功能?
- 实现了基于NTP的时间同步;
- 实现了查询当前公网IP地址;
- 实现了查询当前所在城市;
- 实现了查询实时天气信息;
- 实现了在墨水屏上显示阳历、农历、星期、周数、实时天气等信息;
- 实现了阳历和农历对应信息保存到闪存中,避免重复联网查询;
本项目有什么创新点?
- 相比纸质日历,无需手动翻页;
- 相比纸质日历,可以显示实时天气信息;
- 相比LCD/OLED屏的同类产品,电子墨水屏的功耗更低,更节能环保;
硬件部分
本项目主要包括x个硬件模块:
- N32G457开发板,作为主控制器控制其他外设;
- 微雪的墨水屏驱动板,用于驱动墨水屏;
- 4.2英寸三色墨水屏,分辨率400x300;
- ESP8266 Wi-Fi模组,用于实现联网能力;
- W25Q128闪存模块,容量16MB,用于存储中文字体,以及阳历和农历的对应关系等数据;
硬件模块间连接
五个硬件模块之间的整体连接关系如下图: