一款使用STM32打造的开源多合一测试仪:逻辑分析、逻辑发生器、示波器、SPI/I2C/USART 桥、8 位并行口、PWM

 

你还在纠结要不要入手几千上万块的示波器、逻辑分析仪?先别急,buck50来了!buck50 是一套开源固件+Python 驱动,让你手里那块只要1.5美元的“Blue Pill” STM32F103 板子,一键升级成多合一测试仪:逻辑分析、逻辑发生器、示波器、SPI/I2C/USART 桥、8 位并行口、PWM……几乎想得到的功能它都能搞定。


痛点与解决方案

  • • 昂贵:专业仪器动辄上千美元,用budgets捉襟见肘?
    → buck50+Blue Pill ≈ 1.5 USD,全开源。

  • • 界面单一:只想用终端命令快速测量,不想写GUI?
    → buck50.py 全交互式命令行,支持 TAB 补全、丰富帮助。

  • • 硬件不灵活:一板多用还要换线?
    → 内置多种模式切换,重配置即可从示波器到逻辑分析无缝切换。

核心功能一览

功能

说明

逻辑分析 (Logic)

8 通道,6+ MHz,跳变捕获+稀疏时间戳,触发状态机可编程

示波器 (Oscilloscope)

双通道,1 MHz,5 K 采样深度,支持电平触发+滞后

脉冲发生 (Pulse)

3 路 PWM,自定义频率、占空比、极性

串口桥 (USART/SPI/I2C)

USB ↔ UART/SPI/I2C 双向桥接,支持 master/slave、日志、socket/PTYS

并行口 (GPIO/Numbers)

8 位并行口输出:计数器、灰码、手动推送

安装与环境搭建
准备一块“Blue Pill” STM32F103 板子和一根 Micro-USB 线,然后:

步骤

操作

1

在 GitHub 下载 buck50 固件(buck50.bin/hex)

2

用 ST-Link 或串口工具刷入固件

3

本机装好 Python3、pySerial

4

克隆或下载 buck50.py 驱动脚本

5

运行 python3 buck50.py /dev/ttyACM0

快速上手示例

  • • 输出 4 Hz 二进制计数器:
    $ buck50.py: numbers

  • • 监测 PB4–PB11 数字输入:
    $ buck50.py: monitor

  • • 逻辑分析捕获 32 次跳变:
    $ buck50.py: trigger 0=xxxxxxxx-0-0
    $ buck50.py: logic edges=32

  • • SPI 桥接:
    $ buck50.py: spi master

  • 所有命令都支持缩写+TAB 补全,边敲命令边看提示,根本停不下来。

    优缺点小结
    优点:

    • • 极致性价比:1.5 USD 玩转多种测试模式

    • • 全平台开源:Firmware+C++ +ARM汇编+Python 驱动

    • • 终端神器:命令式交互,高效键盘操作

    缺点:

    • • 带宽有限:逻辑分析最高 6 MHz,示波器 1 MHz

    • • 硬件接线要留意:引脚多功能复用需看文档

    • • 学习曲线:命令体系丰富,初次上手需要花点时间

    总结
    如果你想用极低成本搭建一个多合一测试平台,或者出差/实验室简便携带,buck50+Blue Pill 真是良心之选。它解决了买不起高价仪器的痛点,也满足了喜欢命令行、终端操作的发烧友需求。建议先把固件刷好,把 buck50.py --help 翻一遍,TAB 补全+内置帮助能让你用得更爽。动手一试,你就知道“1.5美元测试仪”到底有多杀!

    项目地址:https/github.com/thanks4opensource/buck50

     

    发表评论