Que? Aquí, por ejemplo, los perros son menos que un gato y más que una persona. ¿Por qué no ser una mascota virtual bastante grande que no cabe en ningún bolsillo? El microcontrolador y la matriz LED (!) Funcionan desde la fuente de alimentación, y solo un reloj en tiempo real proviene de una batería de mayor capacidad que las tres baterías Tamagotchi comunes combinadas. Y él "vive" en la mesa del autor de Instructables bajo el apodo Syst3mX.
El dispositivo en el microcontrolador ATmega328P con un gestor de arranque de Arduino. La matriz LED con una resolución de 16x16 (compuesta por cuatro matrices 8x8 terminadas) está controlada por cuatro registros de desplazamiento 74HC595. Dos de ellos están conectados a las filas de la matriz a través de resistencias, los otros dos a sus columnas a través del ensamblaje de transistores compuestos ULN2803. El usuario interactúa con hecho en casa Con la ayuda de cuatro botones. Reloj de tiempo real tipo DS1302 aplicado. Hay dos cuarzos en el circuito: 16 MHz para el microcontrolador y 32768 Hz para el reloj. Las señales de sonido son proporcionadas por un emisor de sonido piezoeléctrico.
En todo electrónica el maestro colocó el perfboard en una placa de prueba, las matrices LED en otra:
Aquí instala todos los detalles en el primer tablero:
Hay un microcontrolador, una toma de corriente y un reloj en tiempo real con una batería en el soporte, y registros de desplazamiento y conjuntos de transistores, y un transductor piezoeléctrico en una caja de plástico improvisada, y cuatro botones, dos a cada lado, como un reloj de pulsera electrónico, y conectores para peinetas con matrices LED. Pero todo esto no funcionará hasta que Syst3mX conecte los componentes entre sí. Entonces sacó la batería, dio vuelta la placa, soldaba todo de acuerdo con el diagrama y luego devolvió la batería a su lugar.
Echemos un vistazo más de cerca a las resistencias SMD para conjuntos de LED ubicados en la parte posterior de la placa:
El maestro instala la matriz de LED en la segunda placa:
Ella también voltea y hace conexiones, al mismo tiempo colocando peines. Para no confundir filas y columnas, usa cables de colores contrastantes:
Peines cerca:
Ahora puede sellar los LED con papel y conectar las placas entre sí, asegurándose de que las salidas de los componentes de una placa no toquen los conductores de otra:
Syst3mX desarrolla una estructura de menú e iconos correspondientes a cada elemento:
Luego fuentes y otras imágenes:
Con esto, puede editar los iconos y traducirlos a un formulario adecuado para copiar en un boceto. Para lo cual se toma el maestro:
Hecho Solo entonces cambie el nombre de TXT a INO. Sketch utiliza tres bibliotecas, pero todas están incluidas en el IDE de Arduino.El desarrollador actualiza el cargador Arduino estándar en el microcontrolador, después de lo cual es posible cargar bocetos con el adaptador FTDI como en un Arduino normal. Además, tanto el programador para el firmware del cargador de arranque como el adaptador se pueden hacer desde otro Arduino.
La mascota cambia dinámicamente cinco indicadores: salud, peso, felicidad, hambre y edad. Con él, puedes realizar cuatro acciones: alimentar, jugar, lavar y tratar. Cada una de las acciones afecta positivamente a algunos indicadores, pero afecta negativamente a otros.
Puedes alimentar carne, frutas y dulces. La carne satisface mejor el hambre, pero aumenta el peso. Las frutas aumentan la salud, pero reducen la felicidad (¿por qué?), Y los dulces aumentan enormemente la felicidad, pero reducen la salud y aumentan el peso.
Puedes jugar a Simon (un juego para almacenar secuencias), jugaste bien, la felicidad aumentó, disminuyó gravemente.
La mascota va periódicamente al baño, si después de eso se olvida de lavarla, su salud se pierde y aumenta la probabilidad de enfermedad.
Además, la probabilidad de enfermedad aumenta con la edad. La enfermedad puede ser de tres grados de severidad con varios efectos secundarios, la mascota puede ser tratada, pero esto reducirá su felicidad (el desarrollador indicó erróneamente que estaba sano).
De 23:00 a 8:00 la mascota está durmiendo, mientras que los cinco indicadores no cambian de ninguna manera. No puede morir en un sueño. El tiempo de suspensión, si es inconveniente para el usuario, se puede cambiar en el boceto.