

- #RPN SCIENTIFIC X GENERATOR#
- #RPN SCIENTIFIC X SERIAL#
- #RPN SCIENTIFIC X FULL#
- #RPN SCIENTIFIC X SERIES#
(I can provide an error chart in Excel format if you are interested, with results from the trig functions on one degree increments, from -360 to +360 degrees). tan begins to become less accurate as cos(x) approaches zero. As provided, the sin / arcsin, cos / arccos and arctan functions are accurate to +/- 0.00000002. The rounding occurs at display time, and does not affect the internal precision.Ħ. Internal precision is set to 12 digits although x is rounded to 6 digits prior to displaying. This stops the looping, and shows the number of iterations completed on the display (left in the x register).ĥ. The string 'testkeys' is looped forever, until you hit the Clear key again. By holding the Clear key for 3+ seconds, the calculator goes into self-test mode.
#RPN SCIENTIFIC X SERIAL#
With #define DEBUG uncommented, serial logging includes the entire stack with every keypress, so you can sort out what is happening.Ĥ. I also track Last x in the software, but ran out of buttons to recall it.

I modeled stack behavior after the HP-15c, with x (bottom), y, z, t (top) registers. So by pressing and holding the decimal (.) key, each key has an alternate shifted function as below (I have also attached a photo of my labeled keyboard):ģ. With only 17 keys, I needed a function key. If you provide power through the programmer, be sure to remove the battery first!!!Ģ. I programmed with a SiLABS USB-Serial programmer, but use whatever you have (see photo). By leaving out the small plastic cross-piece which sits UNDER the top edge of the circuit board, there is room for the connector to protrude. Hardware-wise you'll need to solder a 6 pin header to the edge of the board, extending out of the top of the calculator. If you are familiar with well-known Calculator Forensics calculation, the SciCalc returns 9.000076557818 - not too bad for a lowly Atmel processor!Ī few notes before you download the attached sketch:Ġ. The attached defines internal precision to 12 digits (defined by INTDIGITS) feel free to dial this up or down depending on the precision / time tradeoff you are happy with.
#RPN SCIENTIFIC X SERIES#
So I pivoted to an Arduino port of the BigNumber arbitrary precision library, coded up high precision Taylor series approximations for the transcendental functions, and voila! SciCalc was born.

So earlier this month I decided to take a stab at putting some scientific calculator firmware together - and what better hardware base than the excellent Ardunio-based Spikenzielabs Calculator kit! I started the project focused on just the visible 6 digits of precision and native CORDIC routines for the transcendentals, but quickly learned that we needed more guard digits for it to be truly useful as a "daily driver." Plus, the Spikenzie guys may eventually build a model with more display digits. Users also have the option to redefine the number of certain keyboard keys.I have always had a fascination with early scientific calculators, and I'm impressed by how the engineers in the 1970's did so much with so little. This allows for label addressing (0-9 and A-E), subroutines (nestable to 4 deep), 8 conditional tests, increment/decrement loops, and 2 flags. The main advantage of the 11C calculator is its programming capabilities. Other built-in features of the HP 11C calculator include hyperbolic and inverse hyperbolic trigonometric functions, combinations and permutations on probability, percent change, factorial, and absolute value.
#RPN SCIENTIFIC X GENERATOR#
These two features are its built-in random number generator and a backspace key that enables users to correct a problem or formula one number at a time. modes (degrees, radians, grads) 3Ī mid-range and programmable scientific calculator, the HP 11C has two features that are an improvement from an earlier version, the 33E/C. Mean, standard deviation (# of variables)Ē
#RPN SCIENTIFIC X FULL#
This App is a full simulation of the successful 11C Scientific RPN calculator.
