今天跟大家聊聊我折腾“大成蓝筹稳健基金”净值显示的小触屏的事儿。这基金我买了有些日子了,每天看看净值成了习惯,老在手机App里翻来翻去的总觉得不方便,就想着能不能搞个小玩意儿,专门显示这玩意儿。
我琢磨着用个树莓派,想着屏幕大,功能多,还能折腾点别的。结果,光是配置环境、装各种库就搞了我两天,发现,就为了显示个基金净值,用这么个大家伙,简直就是“高射炮打蚊子”,太浪费了!
- 第一步:选硬件
- 第二步:找数据源
- 第三步:撸代码
- 第四步:遇到坑,解决!
- 第五步:优化
- 第六步:美化外观
后来一想,要不就用ESP8266,便宜,体积小,还能联网。正好之前玩过,手头还有几个现成的。屏幕,就选了个1.3寸的OLED,小巧玲珑,显示数字够用了。
数据源这块儿,一开始想自己爬,但想想基金网站的反爬机制,估计够我喝一壶的。后来发现支付宝或者天天基金这些平台都有API,直接拿来用就行,省事儿!我选了天天基金的,JSON格式,解析起来方便。
代码这块儿,就是个体力活儿了。要让ESP8266连上WiFi,这个很简单,网上例子一大堆。然后,就是写HTTP请求,从天天基金的API里把数据拉下来。关键是JSON解析,用ArduinoJson库,把“大成蓝筹稳健A (090003)”的今日净值提取出来,再显示到OLED屏幕上。
这中间遇到个坑,就是OLED屏幕显示中文的问题。ESP8266默认不支持中文,得自己搞字库。我找了个现成的GB2312字库,然后写了个函数,把中文转换成字库里的索引,再显示出来。不过因为屏幕太小,显示中文有点糊,还是放弃了,只显示数字。
为了让这小玩意儿更实用,我还加了个自动刷新功能,每隔半小时刷新一次。这样,每天打开小触屏,就能看到最新的净值了。我还想着加个历史净值曲线,但OLED屏幕分辨率实在太低,显示效果不就没弄。
找了个小盒子,把ESP8266和OLED屏幕装进去,用热熔胶固定一个简易的“大成蓝筹稳健基金”净值显示小触屏就完成了!
这小玩意儿就放在我的办公桌上,每天上班第一件事儿就是瞄一眼,心里踏实!虽然看着简陋,但都是自己一点点折腾出来的,成就感满满!
这玩意儿技术含量不高,主要就是个思路。如果你也想搞,可以参考我的步骤,或者自己发挥创意,说不定能搞出更炫酷的东西!
还没有评论,来说两句吧...