基于RT-Thread和N32G457的电子墨水屏电子钟 作品来源:RT-Thread 作者:wakojosin 本方案可以用于桌摆时钟及定时器,用于倒计时提醒,查看时间等场景。定时器功能同时显示了倒计时时长已经定时到达时间,方便设置预期的提醒时间。硬件上由于手上没有蜂鸣器等音频输出模块,所以使用led替代作为倒计时结束的输出信号。 硬件合照墨水屏是自己按开发板的接口画了一个,这样接上比较整洁,没有杜邦线扰乱视线。 软件框架软件库1.按键框架xbutton:
xbutton框架不要提供了按键的单击、双击,长按等功能,可以便捷的实现按键响应功能。框架是通过事件绑定按键功能,不绑定实体按键。 2.墨水屏硬件接口、墨水屏驱动、simple page页面显示框架:
墨水屏硬件接口直接通过设备框架注册到rtt设备驱动里,然后通过墨水屏驱动对外提供api,通过epd paint提供简单的绘制功能;
显示界面由simple page提供支持,simple page主要功能是管理页面及根据输入的事件进行页面的切换。 软件功能模块如软件框架图所示,软件功能主要由4部分构成:按键任务、显示界面管理任务、墨水屏图形驱动、墨水屏刷新任务。
按键任务:通过xbutton注册了4个按键的按下事件,分别是返回、确定、上一项、下一项,通过按键事件发送四个按下事件。
显示界面:注册了4个界面,时钟作为主界面,然后是退出、倒计时、设置3个子界面。退出子界面用于返回到主界面,倒计时子界面用于启动倒计时功能,设置子界面用于设置时间。
墨水屏图形库:主要提供了字符串显示接口,为页面内容显示提供接口支持。
墨水屏刷新任务:用于更新图形库缓存的内容,并且按局刷次数进行全局刷新。 演示效果代码地址:
|