Los microcontroladores son chips muy interesantes, que permiten realizar muchos dispositivos móviles, con código embebido, los cuales funcionan muchas veces como si fuesen computadoras de uso específico. Lo fascinante quizás es la facilidad actual para poder trabajar con ellos. Los lenguajes de programación para usar los micorocontroladores son sumamente poderosos y se instalan en computadoras de escritorio y muchas veces vía una conexión USB, se pasan los programas al microcontrolador. Vamos, que hoy en día la vida para trabajar con la electrónica digital es francamente fácil.
Alguien que se autodenomina Dan14, empezó a usar microcontroladores y quedó fascinado por el hecho de que estos chips son realmente computadoras de bajo desempeño, es decir, en un chip tenemos una computadora completa en realidad. Basta -evidentemente- conectar periféricos como el teclado, una pantalla (o display LCD), y listo, podemos hacernos de una computadora relativamente lenta pero estrictamente, funcional.
Dan entonces halló TinyBASIC, un intérprete de BASIC elemental y decidió que sería una buena idea crear una pequeña computadora que tuviese en alguna medida ese sabor de las viejas máquinas de 8 bits. La máquina está realmente construida como un «shield» de Arduino. Esto es, una tarjeta con toda la electrónica necesaria, para conectarse sobre una tarjeta Arduino. El shield usa TinyBASIC, la biblioteca TVout y la que manipula un teclado PS/2. Después de pegar todo el software apropiadamente, Dan se dio cuenta que las bibliotecas TVout y PS/2 eran incompatibles una con la otra. Esto lo inspiró a usar el microcontrolador ATMega328P como un coprocesdor, corriendo la biblioteca TVout y por otra parte, usar el ATMega1284P como la casa del TinyBASIC y la biblioteca del teclado.
Después de hacer el circuito y la tarjeta donde pondría todo esto, Dan terminó por hacerse de una computadora minimalista con 14 KB de RAM libres y un conector RCA para la pantalla. Ya Dan está pensando en el futuro de su proyecto y lo piensa basar en el Arduino Mega, permitiendo a la TV una resolución de 620×480 pixeles. Igualmente, quiere ponerle una tarjeta de memoria SD, LEDs y más componentes para hacer crecer su invención.
Un proyecto muy interesante que además, Dan ha hecho público (ver las referencias).
Referencias: