Hubo un tiempo en que las calculadoras de bolsillo, en las que se lanzaba inmediatamente el intérprete básico, tenían una cierta distribución. Como en casa computadoras populares al mismo tiempo, pero con información que se muestra en la pantalla integrada de baja resolución. Esto permitió a los programadores no profesionales escribir programas para cálculos bastante complejos sin tener que usar un televisor. A mediados de los noventa, la popularidad de estas calculadoras disminuyó debido a la creciente popularidad de PDA más universales, donde Basic era solo una de las posibles aplicaciones, junto con otras. En los teléfonos inteligentes modernos de la misma manera: necesita BASIC: lo descarga de la tienda de aplicaciones. Ahora, cuando muchos aplican en hecho en casa microcontroladores, calculadoras de acero no infrecuentes con BASIC hecho hazlo tu mismo. Para aquellos que encontraron los originales, esto es nostalgia, para los maestros más jóvenes es una oportunidad para sentir lo que eran. Aquí está una de las muchas construcciones realizadas por el autor de Instructables bajo el apodo de SANUKI UDON.
Casio y Sharp utilizaron microprocesadores de 4 bits en tales calculadoras, Kyocera - 8 bits, Angstrom e Integral - 16 bits. El maestro decidió elegir un término medio y aplicó el moderno microcontrolador ATmega328P de 8 bits en su versión, ya que ya existe un intérprete para él. ArduinoBASIC. Solo aquí se adapta a una pantalla de menor resolución y al teclado CardKB, que ya contiene el microcontrolador necesario.
Para construir la calculadora, además de CardKB, necesitará: un compartimento de batería 2xAA o 2xAAA, una pantalla PMOLED en el chip SSD1306 y, si desea guardar y leer archivos, un chip de memoria flash, por ejemplo, 24LC256. Los paneles tipo placa de pruebas y los puentes Dupont son opcionales, es mejor conectar todo soldando. ArduinoBASIC se diseñó originalmente para una pantalla PMOLED con una interfaz SPI, pero el asistente rehizo el firmware para que funcionara con una pantalla con una interfaz I2C. El KDPV muestra la segunda versión de la calculadora, la pantalla del gdp es aún más pequeña y la batería es del tipo CR2025 o CR2032.
En el lado de CardKB hay un conector donde se enruta el bus I2C, la comida también se alimenta allí. Si hay un chip de memoria, en la placa del adaptador o no, se conecta en paralelo con la pantalla de acuerdo con el pinout de la hoja de datos.El asistente no especifica si un cable con un conector de acoplamiento está conectado al CardKB. Si no se suministra, y no tiene dicho cable, puede soldar los conductores a la placa en la parte posterior.
Habiendo conectado todo eléctricamente, el maestro procede a rehacer el ArduinoBASIC con el hierro que usó. El resultado se presenta aqui. También es necesario apagar el LED RGB en el tablero, que por defecto brilla con los tres cristales a plena potencia. Y no solo aumenta el consumo actual, sino que también brilla directamente en los ojos del usuario. Por lo tanto, también debe descargar la biblioteca estándar de NeoPixel desde aqui, y en la compilación, elija ATmega328p (3.3V, 8Mhz). Después de la compilación, seleccione Exportar binario compilado y obtenga el archivo binario.
Para cargar un archivo en CardKB, necesita un programador USB-ISP y un adaptador improvisado. Avrdude o avrdude-GUI (esto es lo mismo, pero con una GUI) es adecuado como software para controlar el programador. Fyuzy no puede ser reescrito. Sí, un poco más complicado que con Arduinodonde el cable USB y el Arduino IDE incorporado son suficientes.
Apéndice: cómo corregir el archivo SSD1306ASCII_I2C.h antes de la compilación, según la resolución de la pantalla PMOLED.
Para una pantalla con una resolución de 128 × 32:
#define OLED_WIDTH 128
#define OLED_HEIGHT 32
#define OLED_COLMAX 21
#define OLED_ROWMAX 4
Para una pantalla con una resolución de 128 × 64:
#define OLED_WIDTH 128
#define OLED_HEIGHT 64
#define OLED_COLMAX 21
#define OLED_ROWMAX 8
La sintaxis básica implementada aquí es más similar a la utilizada en la computadora doméstica ZX81, por lo que al escribir programas para la calculadora, puede guiarse por la documentación de esta computadora.