A RPN Calculator with ATtiny85.
- 8 significant digits.
- 16 Levels stack with overflow prevention.
- 0~9, ., +/−
- Edit the current number.
- If it is determined, it's pushed into the stack and a new number is edited.
- Enter
- Determine the current number.
- If it is already determined, it's duplicated and pushed into the stack.
- +, −, ×, ÷
- Pop a number from the stack and operate with the current number.
- Clear
- Clear the current number and pop a number from the stack.
- All clear if this button is held long.
- ATtiny85
- 0.91 inch 128×32 pixels OLED screen SSD1306 I2C
- 18 tactile switches
- Resistors
- 150Ω, 180Ω, 220Ω, 330Ω, 390Ω, 510Ω, 680Ω
- 1.0kΩ, 1.5kΩ×2, 2.2kΩ, 3.0kΩ, 4.7kΩ×2, 8.2kΩ
- 15kΩ, 22kΩ, 82kΩ
- An electrolytic capacitor: 47µF
- A battery holder for CR2032
- A slide switch
- Wires, connectors, etc...
Install ATTinyCore boards to the Arduino IDE and configure the settings as follows.
Attribute | Value |
---|---|
Board | ATtiny25/45/85 (No bootloader) |
Chip | ATtiny85 |
Clock | 4 MHz (Internal) |
B.O.D. Level | B.O.D. Disabled (saves power) |
Save EEPROM | EEPROM not retained |
Timer 1 Clock | CPU (CPU frequency) |
LTO | Enabled |
millis()/micros() | Disabled |
- SimpleWire.h
- Copyright (c) 2020 Sasapea's Lab. All right reserved.
These codes are licensed under MIT License.