Post Reply 
Calculator Project
06-07-2019, 09:29 AM (This post was last modified: 08-18-2019 12:25 AM by Dan.)
Post: #1
Calculator Project
Building on the AriCalculator project, I am now developing a hand held calculator featuring the following:

1) Texas Instruments EK-TM4C1294XL development board, with 32-bit ARM Cortex processor, 120MHz, 1MB Flash, 256 KB RAM and code unlimited IDE Code Composer Studio, which supports C, C++ and assembly programming (available for Windows, macOS and Linux).

2) 320 x 240 colour display, specifically designed for TI’s LaunchPad series of development boards:

[Image: 48053472937_9b31b1a4a2_z.jpg]

3) An 8 row, 6 column keypad. The keypad layout can be changed by the user. The following is the default layout:

[Image: 48541577451_4e045344f5_z.jpg]

4) Standard scientific functions. For the AriCalculator project I wrote my own floating-point routines in assembly using BCD and CORDIC algorithms, but for this project I am using the math library and IEEE doubles and floats, resulting in much faster execution. All of the scientific functions on the keypad have been implemented, and there is an exact mode for working with fractions.

5) Keystroke programming. This has been completed and includes an editor, debugger and a large number of commands.

6) A high level programming language, similar to C. I have added shortcuts to the keypad (in light blue). The following program calculates 1+2+...+ num (entered on the command line) using a do-while loop:

Code:

main {
  num = cmdLine; 
  sum = 0;
  do {
    sum = sum + num;
    num -= 1;
  } while (num > 0);
  print (sum);
}

I will add while and for loops next, then function calls.

7) Support for floats and doubles. At the moment all arithmetic is in double precision in user mode, with programs supporting double and single precision.

8) 99 level stack with SWAP, PICK etc., as well as an algebraic entry option for the command line. This is completed.

9) Additional math functions: complex numbers, graphing, matrices, a solver, statistics and a generic math folder for additional functions. Complex numbers are done, and I have started implementing graphing and matrices.

10) Variable clock speed (up to 120MHz for this particular microcontroller). The user can also change the keypad layout, cursor blink rate, debounce duration and display colours, and there are six custom menus to store programs and variables.

11) The development board features breadboard connection headers to attach it to a breadboard. By adding commands to the keystroke/high level language one can program GPIO pins and other peripherals without connecting to a computer. TI have also developed a number of booster packs to attach to the LaunchPad series of development boards.

Dirk Heisswolf, creator of the AriCalculator, has kindly agreed to design PCB’s for the keypad and power supply to turn the device into a hand held unit.
Find all posts by this user
Quote this message in a reply
06-22-2019, 10:13 AM
Post: #2
RE: Calculator Project
Cortex-M, 120 MHz, 1 MB Flash, 256 KB RAM, 320x240 display even if a 480x320 display is also possible... sounds eerily similar to the hardware of the NumWorks calculator Smile
Find all posts by this user
Quote this message in a reply
06-25-2019, 06:45 AM (This post was last modified: 08-23-2019 07:18 AM by Dan.)
Post: #3
RE: Calculator Project
Actually, the calculators are very different. My goal is to build a device that can also be used as an embedded systems development platform that you can interface electronic components to, and the microcontroller I am using is 120 MHz and has different peripherals. Also the display is larger, has a touchscreen, and a different driver.

The keypads are different, and the key functions can be changed by users wanting to create their own custom keypad. Also my calculator features both RPN and algebraic entry modes.
Find all posts by this user
Quote this message in a reply
06-25-2019, 07:06 AM
Post: #4
RE: Calculator Project
Hmm, so it sounds like you really felt attacked and offended by my post. I had read your previous post, but I wasn't sure about how to interpret it, so I didn't reply...
I'm very sorry, attacking you wasn't the goal. I had noticed the custom-designed keypad, for one thing. I was merely pointing out some similarities on the hardware characteristics between your project and the NumWorks calculator, without implying good or bad things, even if my "eerily" word seems to have convinced you otherwise Smile

FWIW, on high level information such as CPU type / CPU frequency / amount of RAM / amount of Flash / screen resolution, I'm familiar with most models of calculators, from TI (the TI scene is where I started attending graphing calculator communities more than 18 years ago) but also from other manufacturers.

I'm not known for being a prick to random people doing work I'm not doing myself, and I'm often all for learning or fun experiments which can be useful to other people beyond yourself (I did some of them myself over time), but you couldn't have known that.
Find all posts by this user
Quote this message in a reply
08-23-2019, 07:11 AM
Post: #5
RE: Calculator Project
[Image: 48598567997_192e7ab6d9_c.jpg]
Find all posts by this user
Quote this message in a reply
08-24-2019, 06:36 AM
Post: #6
RE: Calculator Project
Very neat!
Find all posts by this user
Quote this message in a reply
08-24-2019, 04:09 PM
Post: #7
RE: Calculator Project
Looks good! I like the multi color screen.
Visit this user's website Find all posts by this user
Quote this message in a reply
10-06-2019, 02:50 AM (This post was last modified: 11-07-2019 11:39 PM by Dan.)
Post: #8
RE: Calculator Project
The TI graphics library has a set of predefined colours and fonts (page 269 onwards in the user manual). I've added definitions for the status line, stack, command line, menu and background colours and fonts in the header file so users can change them easily.

Dirk Heisswolf has designed a first version of the keypad that will plug directly into the pins on the board:

[Image: 49031245697_660b46df2d_c.jpg]
Find all posts by this user
Quote this message in a reply
10-07-2019, 02:00 AM
Post: #9
RE: Calculator Project
Hi Dan...nice job! The 320x240 color displays have finally come down in price and are available now. It's an exciting time for small, handheld, configurable computing platforms.
Find all posts by this user
Quote this message in a reply
10-07-2019, 02:06 AM
Post: #10
RE: Calculator Project
(10-06-2019 02:50 AM)Dan Wrote:  The TI graphics library has a set of predefined colours and fonts (page 269 onwards in the user manual). I've added definitions for the status line, stack, command line, menu and background colours and fonts in the header file so users can change them easily.

If you listen closely, you can hear my debit card preparing to launch if this ever becomes available as either a kit or assembled!

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
10-07-2019, 09:15 AM
Post: #11
RE: Calculator Project
Very cool project !!!

I have been looking for a basic RPN calculator that the display shown 4 lines of the stacks X, Y, Z and T
Functions including percent and square root with 4 Store Register Arithmetic.
Nobody make this kind of basic RPN calculator on the market.

Gamo
Find all posts by this user
Quote this message in a reply
10-07-2019, 12:58 PM
Post: #12
RE: Calculator Project
(10-07-2019 09:15 AM)Gamo Wrote:  Very cool project !!!

I have been looking for a basic RPN calculator that the display shown 4 lines of the stacks X, Y, Z and T
Functions including percent and square root with 4 Store Register Arithmetic.
Nobody make this kind of basic RPN calculator on the market.

Gamo

The SwissMicros DM42 offers all that, plus much more. Based on Free42 from Thomas Okken, which in turn was based on the HP-42S, it is the ultimate RPN calculator. You mentioned a 'basic'' calculator - this is obviously much more than basic, but it is as easy to use as a Voyager and offers display of XYZT and LastX, in various font sizes and styles, allowing it to easily be adjusted for your preferred appearance.

Highly recommended!

https://www.swissmicros.com/dm42.php

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
10-07-2019, 02:59 PM
Post: #13
RE: Calculator Project
(10-07-2019 12:58 PM)rprosperi Wrote:  
(10-07-2019 09:15 AM)Gamo Wrote:  Very cool project !!!

I have been looking for a basic RPN calculator that the display shown 4 lines of the stacks X, Y, Z and T
Functions including percent and square root with 4 Store Register Arithmetic.
Nobody make this kind of basic RPN calculator on the market.

Gamo

The SwissMicros DM42 offers all that, plus much more. Based on Free42 from Thomas Okken, which in turn was based on the HP-42S, it is the ultimate RPN calculator. You mentioned a 'basic'' calculator - this is obviously much more than basic, but it is as easy to use as a Voyager and offers display of XYZT and LastX, in various font sizes and styles, allowing it to easily be adjusted for your preferred appearance.

Highly recommended!

https://www.swissmicros.com/dm42.php

As much as I love the DM42 (I own two - a Beta and a Shipping unit), I got the impression that the OP was looking for a four-banger but using RPN and including none of the other functions. The DM42 would be too complicated for his (or her) needs.

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
10-07-2019, 09:38 PM
Post: #14
RE: Calculator Project
(10-07-2019 02:59 PM)toml_12953 Wrote:  As much as I love the DM42 (I own two - a Beta and a Shipping unit), I got the impression that the OP was looking for a four-banger but using RPN and including none of the other functions. The DM42 would be too complicated for his (or her) needs.

I get that, but a 4-banger including both RPN and a 4-line display makes absolutely no sense at all, to anyone! Moreover no one, not even the hungriest Chinese calculator manufacturer, will ever make such a device, as the total world demand is about 11 units.

So I just recommended the DM42 as the best choice that meets the other criteria; as Gamo has moved from using a 12C to using 11C and 15C machines and his programs are becoming more sophisticated, it makes sense to recommend a machine that will be able to support his needs as demands grow.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
10-08-2019, 01:54 AM (This post was last modified: 10-08-2019 01:55 AM by Gamo.)
Post: #15
RE: Calculator Project
rprosperi
Thanks for the recommendation of the DM42

I think the Basic 4 functions RPN calculator is good for everyday use.
Even make it as a one line display to reduce cost is still worth it.

This idea I got was from the HP calculator app for the HP-12C or HP-15C when
in vertical mode. The vertical mode is the reduce version with basic functions.

If make it as a real physical calculator this think is much faster and
easier to use than all other small pocket size ALG calculators like (Casio, Sharp, Canon, etc.)

Gamo
Find all posts by this user
Quote this message in a reply
10-08-2019, 12:22 PM
Post: #16
RE: Calculator Project
HP 17 BII+ should become your new friend.
Find all posts by this user
Quote this message in a reply
10-08-2019, 03:03 PM (This post was last modified: 10-08-2019 03:03 PM by toml_12953.)
Post: #17
RE: Calculator Project
(10-07-2019 09:38 PM)rprosperi Wrote:  I get that, but a 4-banger including both RPN and a 4-line display makes absolutely no sense at all, to anyone! Moreover no one, not even the hungriest Chinese calculator manufacturer, will ever make such a device, as the total world demand is about 11 units.

It makes sense to me! I use the basic four functions every day but only need trig, calculus and other advanced functions occasionally. I'd carry a four-banger in my pocket when going to the supermarket, the hardware store, the lumber yard, etc. In fact I do! The only thing is it doesn't use RPN. I'd pay for a basic RPN calculator. I know I may be in the tiny minority but this is a one-man calculator project, the Chinese aren't involved (unless the OP is Chinese) and there's no need for mass production. A sale of fifteen or twenty units would be fine. I'd buy six or seven myself to give out to friends and family. If nothing else it would be fun to watch them search for the Equals key!

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
10-08-2019, 03:55 PM
Post: #18
RE: Calculator Project
(10-08-2019 03:03 PM)toml_12953 Wrote:  
(10-07-2019 09:38 PM)rprosperi Wrote:  I get that, but a 4-banger including both RPN and a 4-line display makes absolutely no sense at all, to anyone! Moreover no one, not even the hungriest Chinese calculator manufacturer, will ever make such a device, as the total world demand is about 11 units.

It makes sense to me! I use the basic four functions every day but only need trig, calculus and other advanced functions occasionally. I'd carry a four-banger in my pocket when going to the supermarket, the hardware store, the lumber yard, etc. In fact I do! The only thing is it doesn't use RPN. I'd pay for a basic RPN calculator. I know I may be in the tiny minority but this is a one-man calculator project, the Chinese aren't involved (unless the OP is Chinese) and there's no need for mass production. A sale of fifteen or twenty units would be fine. I'd buy six or seven myself to give out to friends and family. If nothing else it would be fun to watch them search for the Equals key!

I've got Free42 on my smartphone - and since I take it almost everywhere, this problem is solved for me. Maybe ... just FYI.
Find all posts by this user
Quote this message in a reply
10-08-2019, 06:02 PM
Post: #19
RE: Calculator Project
(10-08-2019 03:03 PM)toml_12953 Wrote:  
(10-07-2019 09:38 PM)rprosperi Wrote:  I get that, but a 4-banger including both RPN and a 4-line display makes absolutely no sense at all, to anyone! Moreover no one, not even the hungriest Chinese calculator manufacturer, will ever make such a device, as the total world demand is about 11 units.

It makes sense to me! I use the basic four functions every day but only need trig, calculus and other advanced functions occasionally. I'd carry a four-banger in my pocket when going to the supermarket, the hardware store, the lumber yard, etc. In fact I do! The only thing is it doesn't use RPN. I'd pay for a basic RPN calculator. I know I may be in the tiny minority but this is a one-man calculator project, the Chinese aren't involved (unless the OP is Chinese) and there's no need for mass production. A sale of fifteen or twenty units would be fine. I'd buy six or seven myself to give out to friends and family. If nothing else it would be fun to watch them search for the Equals key!

Don't you already bring your smartphone with you? Choose the emulator right for you and you're done.
Do we really need another pocket for another device? Smile

Greetings,
    Massimo

-+×÷ ↔ left is right and right is wrong
Visit this user's website Find all posts by this user
Quote this message in a reply
10-08-2019, 06:42 PM
Post: #20
RE: Calculator Project
(10-08-2019 06:02 PM)Massimo Gnerucci Wrote:  
(10-08-2019 03:03 PM)toml_12953 Wrote:  It makes sense to me! I use the basic four functions every day but only need trig, calculus and other advanced functions occasionally. I'd carry a four-banger in my pocket when going to the supermarket, the hardware store, the lumber yard, etc. In fact I do! The only thing is it doesn't use RPN. I'd pay for a basic RPN calculator. I know I may be in the tiny minority but this is a one-man calculator project, the Chinese aren't involved (unless the OP is Chinese) and there's no need for mass production. A sale of fifteen or twenty units would be fine. I'd buy six or seven myself to give out to friends and family. If nothing else it would be fun to watch them search for the Equals key!

Don't you already bring your smartphone with you? Choose the emulator right for you and you're done.
Do we really need another pocket for another device? Smile

I usually have six or seven pockets. My phone only fills one. I need to fill all the openings! Just ask my wife. Smile

Tom L
Cui bono?
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)