Forth Calculator

Rows are input ports with pull up resistors and interrupts, columns are open drain output ports.

    C0       C1       C2       C3       C4
+--------+--------+--------+--------+--------+
| Pi     | 1/x    | x^2    | LOG    | LN     |
|        | y^x    | SQRT   | 10^x   | e^x    |  R0
| A      | B      | C      | D      | E      |
| 0x20   | 0x21 ! | 0x22 " | 0x23 # | 0x24 $ |
+--------+--------+--------+--------+--------+
| STOx   | RCLx   | SIN    | COS    | TAN    |
| CEIL   | FLOOR  | ASIN   | ACOS   | ATAN   |  R1
|        |        | SL     | SR     | F      |
| 0x25 % | 0x26 & | 0x27 ' | 0x28 ( | 0x29 ) |
+--------+--------+--------+--------+--------+
| ENTER  | SWAP   | NEG    | EXP    | BS     |
| DROP   | ROT    | ABS    | F>S    | CLx    |  R2
|        |        |        | S>F    |        |
| 0x2A * | 0x2B + | 0x2C , | 0x2D _ | 0x2E . |
+--------+--------+--------+--------+--------+
| CLOCK  | 7      | 8      | 9      | /      |
|        | FLOAT  | DEC    | HEX    | BIN    |  R3
|        |        |        |        |        |
| 0x2F / | 0x30 0 | 0x31 1 | 0x32 2 | 0x33 3 |
+--------+--------+--------+--------+--------+
| CALC   | 4      | 5      | 6      | *      |
|        | FIX    | ENG    | SCI    | PREC   |  R4
|        |        |        |        |        |
| 0x34 4 | 0x35 5 | 0x36 6 | 0x37 7 | 0x38 8 |
+--------+--------+--------+--------+--------+
| f      | 1      | 2      | 3      | -      |
|        | p      | n      | u      | m      |  R5
|        | XOR    | AND    | NOT    | OR     |
| 0x39 9 | 0x3A : | 0x3B ; | 0x3C < | 0x3D = |
+--------+--------+--------+--------+--------+
| ON/OFF | 0      | .      |        | +      |
|        | k      | M      | G      | T      |  R6
|        | 1'S    | 2'S    | UNSGN  |        |
| 0x3E > | 0x3F ? | 0x40 @ | 0x41 A | 0x42 B |
+--------+--------+--------+--------+--------+

Description Dongle Function Calculator JTAG 10pin
GND CN1.1 GND GND 3, 5, 9
NRST CN1.2 RES RST 10
PA13 CN1.3 SWDIO - 2
PA14 CN1.4 SWDCLK - 4
PB3 CN1.5 SWO ROW0  
3V3 CN1.6 3V3 3V3 1
PB2 CN1.7   ROW1  
PA5 CN1.8 D13 COL4  
PA6 CN1.9 D12 ROW2  
PA7 CN1.10 D11 ROW3  
PB8 CN2.1 D15 SCL SCL Display  
PB9 CN2.2 D14 SDA SDA Display  
PA0 CN2.3 A3 COL0  
PA2 CN2.4 D1 COL2  
PA3 CN2.5 D0 COL3  
PB6 CN2.6 UARTRX ROW4  
PA9 CN2.7 D9 ROW5  
PA8 CN2.8 D6 ROW6  
GND CN2.9 GND GND  
PA1 CN2.10 A2 COL1  

Description Dongle Function Calculator
USB5V   5V 5V CHARGE
PH3   BOOT0 BOOT0
PA10 SW1    
PB5 LD1    
PB0 LD2    
PA4 LD3    
PB7 SB6 UARTTX  
PB0 AT2 AT2  
PB1 AT3 AT3  

BOM

  • Perfboard square grid of 0.1 inches, pads on both sides (plate-through holes), 2" x 3.5", $3
  • SBC
    • STM32WB55 Dongle, part of P-NUCLEO-WB55, DigiKey 497-18384-ND
    • STM32F405
  • OLED display
  • 35 pcs push buttons, fit in 0.4" grid
    • Würth 430473035826, DigiKey #732-7021-1-ND, data sheet, $0.5
    • TE Connectivity ALCOSWITCH Switches 1825910-6, $0.15
    • C&K PTS 647 SN50 SMTR2 LFS, DigiKey #PTS647SN50SMTR2LFSCT-ND, smaller 4.5 x 4.5 mm, $0.2
  • Wires
  • USB Connector e.g.
  • I2C Connector

-- Peter Schmid - 2024-05-24

Topic attachments
I Attachment History Action Size Date Who Comment
JPEGjpg 20240526_194615.JPG r1 manage 5661.7 K 2024-05-29 - 11:20 PeterSchmid  
JPEGjpg 20240526_194637.JPG r1 manage 5720.5 K 2024-05-29 - 11:20 PeterSchmid  
JPEGjpg 20240526_194652.JPG r1 manage 5530.3 K 2024-05-29 - 11:20 PeterSchmid  
PNGpng calc-black.png r1 manage 55.8 K 2024-05-28 - 19:01 PeterSchmid  
SVG (Scalable Vector Graphics)svg calc-black.svg r1 manage 56.1 K 2024-05-28 - 18:51 PeterSchmid  
Edit | Attach | Watch | Print version | History: r12 < r11 < r10 < r9 < r8 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r12 - 2024-05-29 - PeterSchmid
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback