这个项目最初发布在我的个人主页上。玩具屋迷你电视是一个小型 Arduino 项目,它使用经济高效的 ESP8266 芯片和 SSD1306 OLED 显示器为我女儿的生日打造一台小型工作电视。她已经有一台老旧的塑料电视显示一些发黄的画面,而该项目让这台电视活了起来。
电视无限循环播放不同的电视“频道”,播放动画、时钟和天气预报。通过侧面的一个小按钮,可以停止循环并观看当前频道。第二次按下按钮继续循环。
该项目的显示尺寸由旧玩具屋电视的框架尺寸预定义。只有几个选项,我有一个 SSD1306 OLED 显示器。一个普通的 NodeMCU 或 Adafruit feather 对于小框架来说太大了,所以我决定使用一个非常适合旧电视的 Wemos D1。
电视通过玩具屋电缆供电。所有房间都安装了迷你插座,使用 3 节 AA 电池提供 4.5 伏电压,足以为迷你电视供电。只有直流极性对电视来说是个小问题,需要按正确的方式插入。
显示屏以轮播模式显示 4 个屏幕(可以扩展)。其中大部分是小猫或恐龙动画,但它有真实的天气预报和一个漂亮的时钟。
接线非常简单,显示器通过 I2C 总线连接到 Wemos 板,按钮只需要两根线。
与我的其他一些 Arduino 项目一样,我使用Homie作为该项目的基础库。这实际上对于 Mini TV 来说并不是必需的,因为它没有特殊要求并且不需要 MQTT。但由于它使用相同的 SSD1306 OLED 显示器,我可以重用mqtt-bme280-homie 项目中的一些代码。此外,我还获得了 Homie 的 OTA 更新,这在这里很重要,因为我将电路板热粘到电视的后壁上,无法再访问 USB 连接器。
该项目使用以下软件库:
和往常一样,源代码和配置细节可以在 GitHub 上找到:https ://github.com/mhaack/arduino-dollhouse-tv它分为 4 个主要模块:
您可以根据需要添加任意数量的屏幕,并dollhouse-tv.cpp
通过该setup
方法将它们添加到。每个屏幕动画都有自己的方法,有关动画示例,请参见drawCat
。这些动画可以由一系列 XBM 位图构建。添加新图像动画的工作流程很简单。首先将图像作为动画 gif 或独立图像文件获取,最好是黑白格式。Gif 必须拆分为单独的图像文件。这些可以使用一些图像工具或在线服务(如https://convertio.co/gif-xbm/)将其转换为 XBM 位图文件。将 XBM 文件放入项目 src 文件夹或将它们合并到images.h
. 之后,它们可以通过使用加载到代码中drawXbm
。确保添加x
&y
如果屏幕切换到下一个屏幕,则在屏幕上绘图时方法参数的坐标可以平滑过渡。
这就是迷你电视的乐趣。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !