Raspberry Pi 迷你比特币行情屏 DIY 全指南:打造桌面级加密货币行情小显示器

·

比特币行情、以太坊价格、CoinGecko API、Raspberry Pi、电子纸显示、Python 脚本、低功耗行情终端、加密货币行情屏、用户配置、自动化启动脚本——只要你想得到的与“行情屏”有关的关键词,都能在 15 分钟内完整落地。下面,跟着步骤与提示,动手打造一张永不过时、零噪音、全天候刷新的电子纸加密货币行情屏。

项目亮点速览

👉 想用树莓派 5 分钟搞定比特币行情屏?点击查看完整清单+安装步骤!

硬件清单与前期准备

必备硬件推荐型号备注
树莓派Zero 2 W / 3B+ / 4B带 Wi-Fi 的最省心
电子纸屏Waveshare 2.7" 黑白 HAT注意区分 V1 / V2,首次买优先 V1
MicroSDClass 10 8 GB+系统+代码已够用
数据线USB-C 或 Micro-USB供电
外壳专用 3D 打印托架或 Lego 都行保持散热即可

额外工具:电脑、SSH 客户端、路由器已联网即可。

烧录与启用 SPI 总线

  1. 用 Raspberry Pi Imager 烧录最新 Raspberry Pi OS Lite
  2. 首次启动后通过 ssh 登陆:

    ssh [email protected]
  3. 更新系统并启用硬件 SPI

    sudo apt-get update
    sudo apt-get install -y python3-pip git libopenjp2-7 libatlas-base-dev python3-pil python3-numpy python3-matplotlib
    sudo raspi-config nonint do_spi 0

    CoinGecko API、Python 依赖、加密行情脚本、电子纸驱动 都将在下一步集中安装。

一键克隆与安装依赖

cd ~
git clone https://github.com/waveshare/e-Paper
git clone https://github.com/veebch/btcticker.git
cd btcticker
cp config_example.yaml config.yaml
cp -r ~/e-Paper/RaspberryPi_JetsonNano/python/lib/waveshare_epd .
rm -rf ~/e-Paper
python3 -m pip install -r requirements.txt

脚本已内置 CoinGecko 接口封装,无需额外注册即可从军备十足的数据源获取实时比特币行情与以太坊价格等关键数据。

自定义 YAML 配置

打开 config.yaml,几分钟就能完成个性化:

display:
  epd_type: epd2in7  # 如果是 V2,改成 epd2in7_V2
  orientation: 0     # 0/1/2/3 旋转方向
coin:
  ids: [bitcoin, ethereum, binancecoin]  # 多币种
currency: cny   # 支持 usd、cny、eur、krw 等
refresh: 300    # 单位秒,默认 5 分钟

想加 Dogecoin?在列表末尾再加一行 dogecoin 即可。

启动脚本与自动后台运行

一次性测试:

python3 btcticker.py

屏幕闪烁后,应能看到冷静又美观的加密货币行情屏。

长期后台运行:

  1. 创建服务单元:

    sudo nano /etc/systemd/system/btcticker.service
  2. 粘贴:

    [Unit]
    Description=ePaper Crypto Ticker
    After=network-online.target
    
    [Service]
    Type=simple
    WorkingDirectory=/home/pi/btcticker
    ExecStart=/usr/bin/python3 btcticker.py
    Restart=always
    RestartSec=10
    
    [Install]
    WantedBy=multi-user.target
  3. 启用并立刻启动:

    sudo systemctl enable btcticker.service
    sudo systemctl start btcticker.service

    日志查看 sudo journalctl -u btcticker -f 即可实时排障。

进阶玩法:桌面级小程序也能秒变 NFT 展示器

同一套硬件,只要换用不同的 Python 画布代码,即可秒变以下场景:

  1. NFT 画廊:轮询 OpenSea API,动态展示头像头像系列。
  2. 公司 KPI 打脸器:监控服务器 CPU、UpTime。
  3. 天气时钟:整合气象局实时数据,同时显示温度、风速。

👉 探索 10+ 超实用扩展玩法,立即查看作者最新更新!

常见问题(FAQ)

Q1:为什么是 5 分钟刷新一次?可以再快吗?
A:电子纸屏幕刷新存在闪屏与微量“烧屏”风险;通常在 2–10 分钟刷新即可兼顾数据及时性与屏幕寿命。以比特币行情为核心时,5 分钟足以应对大多日内波幅。

Q2:Waveshare 2.7" V1 与 V2 区别大吗?
A:针脚定义略有差异,驱动需在 config.yaml 指定 epd2in7_V2。V1 官方已停售,但淘宝二手市场仍能淘得到。若使用 V2,收益是更高的对比度与更短的全刷时间。

Q3:能否用三色(黑/白/红/黄)屏幕?
A:代码默认优化为单色,若改用 2.7" 三色屏,需要自己重写 btcticker.py 中的颜色层叠加逻辑,并调大供电电流以确保红黄显色稳定。

Q4:我想轮流显示 10 种币,文件会不会太大?
A:YAML 列表多长都不会影响内存,真正影响的是刷新频率与网络延迟。建议 refresh 控制在 300–600 秒之间,这样每秒下载的仅有几 KB。

Q5:出币价 ≤0.01 时,显示会缺位?
A:脚本已自动填充至 8 位小数,确保 0.00000001 BTC 这类微单位也能完整展示。若仍看到“---”,多半是 CoinGecko API 短时无返回,可尝试重启服务或检查网络。

Q6:开机后第一次启动延迟较大?
A:需等系统联网时间;树莓派 Zero 2 W 首次 DHCP 获取 IP 可能 20 秒以上才成功。利用 Requires=network-online.target 已显著缓解该问题。

Tips:让作品更出彩

现在,你的桌面上终于有了一块低调、优雅、又时时在线的“加密货币行情屏”。随时瞄一眼比特币、以太坊、BNB 的价格,感知市场情绪,也许就能领先旁人一步。祝 DIY 快乐,也祝钱包常涨!