OpenRPNCalc

软硬件开源的RPN科学计算器

OpenRPNCalc封面
dianzi_01012026-01-05 16:24:47CERN Open Hardware License
472
Star3

PCBA

设计文件

KiCad图标OpenRPNCalc-Hardware.zip1.82MB(3次下载)

其他附件

EDA查看器

复制嵌入代码

详细介绍

OpenRPNCalc

软硬件开源的RPN科学计算器

说明

OpenRPNCalc 是一款基于 STM32 微控制器的科学计算器。其源代码、电路原理图及PCB设计文件均依据开源许可协议发布。本项目旨在开发一款具备以下特性的硬件平台:

  • 无需专用工具即可复刻,仅需使用 PCB 打样服务生产的电路板

  • 配备可定制键盘,以满足特定需求(如RPN、代数运算逻辑、自定义功能)

  • 功耗低,电池续航能力强

  • 拥有优质、紧凑且坚固的外壳

这款硬件的设计灵感源自SwissMicros计算器,但整机为全新自主设计。该计算器具备以下特性:

  • 配备大容量栈的RPN运算模式(最多支持 100 个元素)

  • 双精度算术运算

  • 搭载 “标准” 科学计算器功能(三角函数、对数、指数、平方根及幂运算)

  • 误差函数(erf)及其反函数(erfinv)、伽马函数与伽马对数函数、排列组合运算,以及泊松分布、高斯分布和卡方分布的 P 值计算功能

  • 定点、科学计数(SCI)和工程计数(ENG)三种显示模式(工程计数模式下支持国际单位制词头),精度可在 3 至 10 位之间调节

  • 支持基于误差传播的不确定度计算(UNCERT 模式)—— 该功能在软件计算器中较为少见,在硬件计算器领域更是近乎空白

  • 内置相对论运动学相关公式(质心系两体衰变动量、角度与赝快度换算、β 因子与 γ 因子计算)

  • 统计运算功能:平均值计算(不确定度模式下支持加权平均)、均方根(RMS)计算、数值序列的卡方值计算(仅限不确定度模式)

  • 100 个存储寄存器

  • 功耗表现:16MHz 运行频率下功耗为 0.6 毫安;LCD 屏幕常亮的待机模式下功耗为 16 微安;LCD 屏幕关闭的待机模式下功耗仅为 5 微安

  • 可选配惠普 48 系列(HP48)键盘固件,目标是适配 DB48x 系统(目前该功能仍处于深度开发阶段

硬件概览

  • 计算器使用低功耗 32 位 ARM 微控制器 STM32U385 为核心构建;

  • 显示屏采用夏普记忆液晶模组LS027B7DH01,分辨率为 400×240 像素,为单色显示;

  • 键盘选用轻触式按键开关,具体型号为松下EVPBT1C4A000,按键触发力度为 50 克;

  • 整机电路由一枚 3V 锂电池(CR2032 型号)供电,续航可达数年之久。

  • 该计算器的外壳采用多层 PCB 板堆叠式设计

    • 前后盖板为铝基板材质,表面覆盖白色阻焊层,丝印则采用黑色。

  • 按键同样由 PCB 板制成,按键标识直接通过丝印工艺印刷而成。

  • 整机所有部件通过 6 个 M2 规格的支撑柱与 12 个平头螺丝固定装配。

  • 外壳的外形尺寸为 139×73×8 毫米。

文档说明

  • Schematics and parts :原理图、PCB相关组件、电子元器件及其他配件清单(含对应的数据手册链接)

  • PCB design: 各板层示意图及其功能说明

  • Case and keyboard assembly: 计算器内部拆解照片、组装步骤指引

  • Firmware: 代码结构解析与固件烧录教程

项目目录说明

  • 程序代码:基于 STM32Cube IDE 开发的 STM32 固件程序

  • 硬件设计:适用于 KiCad 软件的电路原理图、PCB 设计文件,以及 PCB 生产文件

  • 文档资料:说明文档与相关图片

  • 仿真工具:可部署至 GitHub Pages 或其他网络托管平台的在线仿真器文件