站内搜索
发作品签到
多功能机械轴体科学计算器
专业版

多功能机械轴体科学计算器

简介

计算器+数字宏键盘+游戏掌机+满血开发板4合一

简介:计算器+数字宏键盘+游戏掌机+满血开发板4合一
星火计划2023

开源协议

MIT License

创建时间:2023-02-24 22:43:29更新时间:2023-11-30 11:58:11

描述

工程文档会持续更新

概况

这是一个多功能计算器,将科学计算器,数字宏键盘,游戏掌机,和满血开发版4个功能结合到一个机器上。起初是因为我觉得学校统一购买的计算器软件臃肿,又笨重又难用(ti-nspire咳咳),才动手做一个我心目中完美的计算器。不过后来又加了一堆别的功能,然后就成现在这样了。(更多信息请看https://github.com/shaoxiongduan/sci-calc/)

B站合集

bilibili

配置

  • ESP32 WROOM32 E驱动
  • 轴体: 凯华v1 choc 矮轴
  • 屏幕: 256x64 oled (SSD1322)
  • 串口芯片CH340C
  • 1000mAh电池+tp4056+dw01电池保护, 支持边充电边使用
  • 支持microSD卡存储程序

固件

概况

菜单系统及UI构件

UIElement结构

宏键盘程序

宏键盘的程序使用部分也比较直观,通过以下方式可以构建自定义的宏按键。右边两列10个按键作为主要宏按键会自动显示在屏幕上。

自定义一层按键:

Macro layout1[5][6] = {
{Macro({'7'}), Macro({'8'}), Macro({'9'}), Macro({'+'}), Macro({KEY_LEFT_GUI, 'c'}, "COPY"), Macro({KEY_LEFT_GUI, 'v'}, "PASTE")},
{Macro({KEY_ESC}), Macro({'/'}), Macro({'*'}), Macro({'-'}), Macro({KEY_LEFT_ALT, KEY_LEFT_GUI, 'c'}, "C_PATH"), Macro({KEY_LEFT_GUI, 'r'}, "CMD+R")},
{Macro({'4'}), Macro({'5'}), Macro({'6'}), Macro({'^'}), Macro({KEY_LEFT_GUI, 'x'}, "CUT"), Macro({KEY_LEFT_GUI, 's'}, "SAVE")},
{Macro({'1'}), Macro({'2'}), Macro({'3'}), Macro({KEY_RETURN}), Macro({KEY_LEFT_GUI, 'h'}, "HIDE"), Macro({KEY_LEFT_GUI, 'n'}, "NEW")},
{Macro({KEY_LAYER_SWITCH}), Macro({'0'}), Macro({'.'}), Macro({KEY_BACKSPACE}), Macro({KEY_F12}, "G_DEC"), Macro()}

};

初始化宏键盘类:

MacroPad macroPad({
Layout("standard", layout1),
Layout("layout 2", layout2),
Layout("photoshop", photoshopLayer),
Layout("editing", filmoraLayer),
Layout("obsidian", obsidianLayer)
});


MacropadUI macropadUI(&macroPad);

安装

计算器的固件使用vscode+PlatformIO开发的,所有程序和配置文件都在github里:github

将程序往esp32里刷一遍后开机不会立刻运行。需要将sd卡里拷上底下的.bin文件才可以。
wpTTF4snBJlSun0Jv8CfPri7Bp1ygweaXX2VoAKq.png

功能键使用

切换按键层键/shift: 
单按暂时切换,像shift键一样
双按切换并锁定,像caps lock一样
角度切换键:切换角度制和弧度制
tab: 用于计算器输入框和历史记录之间切换

外观

计算器的外观采用了亚克力板堆叠而成,主要由一块黑色半透明亚克力板+pcb+底部透明亚克力板组成。十分结实,造价不高,也非常容易组装,用过的人都说好。

1B3jlTEmoc01dBElvEAattYRjgQZC3T3bNYryGee.jpegbJvgpifUIqPWcw7UjuZFuUbKCg32TilDX8rJ1VBm.png

UI

计算器

支持基本四则运算,乘方根号,三角函数,指数对数。以后可能会加上自动求导和解方程。

历史记录:用来记录算式,通过tab+enter还可以拷贝历史记录里的答案,大大提升计算效率,无需再手打一遍以前算过的算式。

数字小键盘

这个计算器还可以充当数字小键盘外加10个可自定义宏按键。定义的按键会显示在屏幕左边。还能设置多层宏按键,这样可以针对当前用的软件切换层数

比如:

编程:

Ps:

还有剪辑:

bJr2e8FFUMgZnfTsNOqGrpegfnWFsV6ijSWg3vOc.pngAAhI37JdRiUaDvwk9TICYMDrUZKUtYcvbEbZO880.png
t8NTmAkfVlXG8yfX3ZaOER1x7p21iFk7lSjpX9IT.pngBS5bGYsVxwqbhpxWft1PRi8D49N9wsAqCnFvHzx6.jpeg

上传程序

通过把编译好的的程序的.bin文件存到microSD卡上,计算器会读取卡上文件并运行。为了提升学习效率,增强学习动力,我移植了几位大佬的“学习软件”:

a92x622gKCnntoJv4mkV70MD8wbmHbyCUdeqsOdi.png

ESP32开发版

本计算器将esp32的引脚引出,可以结合arduinoIDE当成开发板使用。上面引出的引脚还可以接拓展模块(我很懒,还没设计)。

求点赞和关注:)

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
main.bin
77
2
COTD.bin
46
3
squario.bin
42
4
chess.bin
44
5
snake.bin
40
6
spacetrash.bin
45
7
tetris.bin
42
8
计算器演示.m4v
91
9
全部代码.zip
235
10
游戏演示.mp4
80
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航