程序员送给女朋友的新年礼物
冬天来了,又到了男生送礼物的季节了。这可是让大多数男生头疼的问题😶。
无意中发现了国外的一个项目 Awtrix。项目可以完成一个矩阵显示器,来展示数据,例如时间日期,Github Followers 等。
先上个效果图
瞬间让你的女友惊呆了😏!
材料
- 精品WS2812B全彩8x32显示可编程像素软屏 x1
- -ESP8266 带CP2102 WIFI模块 x 1
- 杜邦线,母对公 x 3
- 服务器或者其他可以跑 jar 的环境
- 胶水,胶带,双面胶,剪刀,刀等
上述材料淘宝就可以购买,也是必要材料。下面的材料为可选材料,网站上提供有3d打印材料,问了一下淘宝有点小贵,你可以用其他材料替代。
- ① 背后的亚克力板,中间镂空 325x85x9.5 mm
- ② 前面的亚克力板,茶黑色,透光 325x85x2 mm
上述材料淘宝都可以定制,我的做的尺寸有点略小,组合的时候有点麻烦,如果你要做可以适当调整一下尺寸,宽一点和长一点。
连接线路
这个是Awtrix官网-电路连接上的线路连接图,但是我们可以将电阻去掉,也不需要电源接口。
我们的开发板上没有 5v 接口,只有 3v 电源。按照图上所示将电路连接好。
安装服务器程序
首先确保服务器上安装了 Java 环境。
然后输入下面命令
sudo mkdir /usr/local/awtrix
cd /usr/local/awtrix
sudo wget https://blueforcer.de/downloads/awtrix.jar
配置程序自动启动
sudo vim /etc/systemd/system/awtrix.service
[Unit]
Description=AWTRIX SERVER
After=network.target
[Service]
Type=simple
WorkingDirectory=/usr/local/awtrix/
ExecStart=/usr/bin/java -jar /usr/local/awtrix/awtrix.jar
[Install]
WantedBy=multi-user.target
如果上述配置正确,接下来就可以启动了。
sudo systemctl enable awtrix
运行 awtrix
sudo systemctl start awtrix
停止 awtrix
sudo systemctl stop awtrix
重启 awtrix
sudo systemctl restart awtrix
此刻打开我们的网站 http://[IP]:7000
,会看到下面的画面
此刻已经完成了安装。
烧录程序
首先按照 vscode,在插件中搜索 platformio-ide,按照插件之前保证你的系统中有python环境。
从 Github 上 clone Awtrix2.0-Controller 程序。
git clone https://github.com/awtrix/AWTRIX2.0-Controller.git
通过 vscode 打开。打开文件 src/awtrix-config.h 里面定义了 ssid
,password
,awtrix_server
,分别是 wifi 名称,wifi 密码,服务器地址。
配置好这些就可以点击下面的 → 进行烧录程序了。
如果程序烧录成功,那么此刻的显示屏上回显示当前时间和日期。
我在这里出现个问题, lib/ota 报错,我把这个包删除后,才可以完成烧录。
如开头的图。
美化
最后我们用亚克力板/3d打印模型将屏幕电路板等进行封装,美化一下,太棒了是不是!
我们可以在 web 页面上进行 app 安装,但是需要注意一点,比如 Facebook 等国外的服务App,需要服务器可以连接上这些服务,否则无法使用,而且屏幕只能显示英文和数字,无法显示汉字。
但是骚年,你以为这样就结束了?
to young,too simple
首先,官方给的 web 页面太难用了,不相信你体验一下。还有就是无法直观的给显示屏上绘制自定义图案,虽然官方给了接口,但是都是 json。不至于我每次都有写一大段 json 吧。
下面才是重头戏!
编写我们的APP
首先感谢 flutter,强大的跨平台技术使我开发出来 Windows、 Android、 ios(未验证)、macOS(未验证),Linux(未验证)程序。是的,你没有看错。
先上图
目前 App 可以控制显示屏开关、App 切换、App配置(目前适配4个,日后再慢慢适配)、应用安装,自定义图案和文字。
只需要在 App 上绘制,就可以在显示屏上绘制。
程序在日后整理后会开源。
欢迎各位大佬关注微信公众号
本文来自博客园,作者:youngxhui,转载请注明原文链接:https://www.cnblogs.com/youngxhui/p/17730467.html