World Conquest Chronicles

World Conquest Chronicles

Robot Calculator, v1.0.0

The electronic calculator.

Major version. Implement the calculator firmware.

Change Log

  • components:
    • displaying is made through the 16x2 character LCD;
    • controls:
      • expression input and evaluation is made through a 4x4 matrix membrane keypad;
      • clearing whole input is made through a separate button;
      • erasing one character is made through a separate button;
  • displaying:
    • display an input expression in the first line of the display, aligned by the right side;
    • display a result of expression evaluation in the second line of the display, aligned by the right side.

Features

  • evaluation:
    • number evaluation:
      • support for a whole number;
      • support for a fractional number:
        • support for a fractional number without a whole part;
        • support for a fractional number without a fractional part;
      • ignore duplicated zeros at the beginning of a number;
      • return NaN:
        • return NaN for an incorrect number;
        • return NaN for a number causing overflow;
      • truncate a number longer than the internal buffer;
    • operation evaluation:
      • supported operations:
        • addition;
        • subtraction;
        • multiplication;
        • division;
      • typo processing:
        • support for several operations in a row (only the first operation will be used);
        • support for expression starting with an operation (the leading operation will be ignored);
        • support for expression ending with an operation (the trailing operation will be ignored);
  • components:
    • displaying is made through the 16x2 character LCD;
    • controls:
      • expression input and evaluation is made through a 4x4 matrix membrane keypad;
      • clearing whole input is made through a separate button;
      • erasing one character is made through a separate button;
  • displaying:
    • display an input expression in the first line of the display, aligned by the right side;
    • display a result of expression evaluation in the second line of the display, aligned by the right side.

Photos

Assignment of keys on the 4x4 matrix membrane keypad

Videos