KeyChainino - llavero juego primera programable con Arduino (3 / 14 paso)

Paso 3: Analizar el inicio del Sketch

Ahora les explico usted, paso a paso, todas las líneas del boceto.

Las primeras líneas #include se utilizan para importar el código específico de avr para mango, en orden:

  • Biblioteca de interrupción para la interrupción del temporizador 1 y botones. Las interrupciones de los dos botones se utilizan para despertar el microcontrolador después de que va a dormir para reducir el consumo de la energía.
  • Biblioteca PROGMEM se usa para poner la variable constante a la memoria FLASH en lugar de la memoria RAM. Se utiliza porque todas las variables utilizadas en el bosquejo se almacenan en la memoria RAM del microcontrolador y, por lo general, el RAM es menor que la memoria FLASH.
    Por lo tanto, cuando se utiliza un gran número de variables constantes - como la matriz de números - tengo que poner en el FLASH para conservar la memoria RAM.
    Quiero informarles que el IDE de Arduino, generalmente, no se muestra si la memoria RAM del microcontrolador es completa. Si ha rellenado la RAM toda, simplemente el esbozo se bloqueará en algún momento y se loco porque no averiguar por qué sucede.
    Por lo tanto, si utilizas grandes variables constante, como matriz multidimensional, utilizan PROGMEM.
  • Dormir biblioteca se usa para poner el microcontrolador en un profundo estado donde consume energía muy baja.
  • Biblioteca de la energía se utiliza para manejar el poder de los periféricos del microcontrolador - como el ADC, temporizadores, etc.. Cuando no necesitamos esos periféricos nos cerradas abajo de ellos.

A continuación tenemos el valor constante de la matriz, los pernos y los botones:

En orden:

  • MATRIX_ROW es el número de las filasde LEDs. En este caso 5 LEDspor línea.
  • MATRIX_COL es el número de los LEDs cols. En este caso 6 LED por columna.
  • PIN_NUMBER es el número de pines utilizados para la matriz de Charlieplexing de LEDs de 6 x 5.
  • Button_A es el número de pin del botón izquierdo. Este botón disparador la interrupción PCINT6
  • Botón _B es el número de pin del botón derecho. Este botón activará la interrupción INT0 .

Ahora tenemos las variables utilizadas para la matriz de LEDs de Charlieplexing:

  • alfileres [PIN_NUMBER] es una array que almacena los 7 pines utilizados para el Charlieplexing.
  • connectionMatrix [MATRIX_ROW] [MATRIX_COL] [2] es una matriz multidimensional que la única conexión de cada LED se muestra en la matriz de Charlieplexing.
    El primer número de los dos números dentro de las llaves es el ánodo.
    El segundo número es el cátodo.

  • matrixState [MATRIX_ROW] [MATRIX_COL] es la matriz multidimensional que indica que el LED se debe encender o apagar. Si cambia un solo bit de esta matriz, el LED correspondiente se enciende en OFF según la cual poco se inserta: 1 está encendido, 0 está apagado.
    Esta matriz se utiliza siempre en el sketch porque para mostrar el objeto, como el cojín y la bola, debe ser escribió en esta matriz. Así que hay que eliminar la posición anterior, poniendo las coordenadas del objeto en el matrixState a 0, y entonces se puede escribir la nueva posición, poniendo el 1 a las nuevas coordenadas. Siempre en la matrixState.

    Si quiere mostrar una cara en la matriz de LEDs, usted necesita pasar cada pedacito de su matriz de cara a la matrixState. Por arte de magia los LEDs asume su matriz de cara! :)
    Esto porque la matriz de Charlieplexing se actualiza automáticamente - con la interrupción de desbordamiento del temporizador 1 - de acuerdo sólo a la matriz de matrixState.

Artículos Relacionados

Juego de Tetris con Arduino

Juego de Tetris con Arduino

Develop Tetris juego via Arduino y aprender a desarrollar un juego simulado rápidamente para reproducir el clásico. Juegos tetris ayudar a fábrica para estudiar el uso de la pantalla LCD y el programa de Arduino.Demo de:Arduino avanzado kit proporcio
1 juego de LED con Arduino Uno y un LED RGB

1 juego de LED con Arduino Uno y un LED RGB

a veces tengo esos días donde realmente quiero hacer algo aseado con el Arduino que tengo ahí, pero sé que no tengo la paciencia para una más implicadas en el proyecto que llevaremos más de un día o menos. Se trata de uno de esos días.La premisa es l
Controller(Joystick) juego de Bluetooth con Arduino y Jetpack

Controller(Joystick) juego de Bluetooth con Arduino y Jetpack

Hola, quiero mostrar una forma sencilla de construir un controlador básico de juegos con joystick. El Jetpack transmite los datos de joystick en serie vía Bluetooth. Puede jugar cualquier juego en tu PC con esto, basta con cambiar la clave requerida
StopIt! Juego de LED (con arduino)

StopIt! Juego de LED (con arduino)

este proyecto fue inspirado por este video de YouTube y el Kit de desafío de péndulo de Makershed.com. Su un juego simple que consta de cinco luces de LED y un pulsador. Los LEDs parpadean en una secuencia y el jugador deben presionar el botón cuando
Sin embargo, otro juego de Pong con Arduino Uno

Sin embargo, otro juego de Pong con Arduino Uno

he hecho un juego de Pong antes con una matriz de LED 8 x 8 y este es un proyecto para mí saber acerca de pantalla PCD8544 que también fue utilizado en los teléfonos celulares Nokia 5110.Aquí es lo que necesitaba en este proyecto:-Arduino Uno-Pantall
Robar el juego de tocino con Arduino

Robar el juego de tocino con Arduino

esto es lo que se necesita hacer un Arduino powered robar el tocino juego:10 x LEDs11 x 330 Ohm resistencias1 x resistencia de ohmio 10 k1 x botón1 x interruptor1 x timbre19 x Jumper cables1 x placa o Perfboard1 x Arduino Mega 2560 o Arduino UnoEsto
Circuito de tira de LED RGB con Arduino

Circuito de tira de LED RGB con Arduino

Este Instructable cubre el montaje de un circuito capaz de ing de PWM (modulación de anchura de pulso) una tira de LED RGB 12v 9 y programación un Arduino para desplazarse a través de una gama de colores. Discutir cómo montar un transistor a un disip
Primeros pasos con Arduino - LED parpadea

Primeros pasos con Arduino - LED parpadea

En este tutorial nos guiará a través de los pasos necesarios para levantarse su primer proyecto de arduino y funcionando.Paso 1: Construir el circuito Para este proyecto necesita un diodo de emisión de luz (LED)Algunos LEDs pueden utilizarse solos, o
Uso de LEGO MINDSTORMS RCX Sensor de luz con Arduino (programa con Visuino)

Uso de LEGO MINDSTORMS RCX Sensor de luz con Arduino (programa con Visuino)

En este Instructable aprenderá a programar el Arduino para controlar y obtener datos de LEGO MINDSTORMS RCX Sensor de luz con la ayuda de Visuino - un ambiente de desarrollo gráfico fácil de usar para Arduino.Tenga en cuenta que la anotación en algun
8 x 8 x 8 LED cubo con Arduino Mega (+ sonido + PS controlador + juego)

8 x 8 x 8 LED cubo con Arduino Mega (+ sonido + PS controlador + juego)

este es un instructivo que se basa en el cubopor Chr, (por SuperTech-IT, (y por das-labor.org, (http://www.das-labor.org/wiki/Borg3d_Bauanleitung...)pero creo que su mejor y más fácil.Comencé este proyecto sin ninguna habilidad de toprogramming de so
Juegos de azar con pensamientos/Mindwaves (con Arduino)

Juegos de azar con pensamientos/Mindwaves (con Arduino)

¿Qué pensar ¿por qué nos gusta de videojuegos? La respuesta no es difícil: el de los videojuegos nos muestra, muy buenos retos. Yo juego videojuegos rara vez, pero mis favoritos son carreras de coches y juegos de mundo abierto como necesidad de veloc
Cómo programa ATtiny85 con Arduino UNO

Cómo programa ATtiny85 con Arduino UNO

Cómo programar Attiny85 con Arduino UNO de manera más fácilPaso Tutorial paso, con ninguna medida para saltar por PCB impresionante.Paso 1 - ¿qué necesitamos?Paso 2 - placa de Arduino conecta con ArduShield y ATtiny85Paso 3 - configuración IDE de Ard
Programa un Arduino en el camino con tu teléfono Android o tablet

Programa un Arduino en el camino con tu teléfono Android o tablet

a lo largo de los años Android se ha convertido en una formidable plataforma móvil que ofrece mucha funcionalidad sólo se habían encontrado en el PC. Hoy os traigo una manera de escribir, compilar y cargar programas de Arduino en el camino con un dis
Programa ChipKIT DP 32 con Arduino IDE

Programa ChipKIT DP 32 con Arduino IDE

Lo que usted necesita: un microprocesador ChipKIT DP 32 (todos los cables incluidos) y un ordenador portátilPara programar un DP 32 sin un dispositivo programador (Chipkit PGM), es decir, con arduino IDE, necesita un programa residente de memoria; pr