Paso 3: Funcionalidad básica
En este paso será conectar los módulos hasta el Teensy y utilizarlos para enviar una entrada a la computadora.En primer lugar, soldar unas pinzas de encabezado en el Teensy por lo que puede ser utilizado en un protoboard.
El transmisor puede permanecer como en el paso anterior.
Ajustar el receptor lo siguiente:
Receptor -> Teensy:
Pin 1 - MS2 - pin Teensy etiquetado "3,3 v (100 mA máximo)"
Pin 2 - X
PIN 3 pin Teensy - IN1 - 0
Pin 4 pin Teensy - IN2 - 1
Pin 5 pin Teensy - IN3 - 2
PIN 6 - X
PIN 7 - X
Pin 8 - GND - primer Teensy pin marcado "GND"
PIN 9 - Vd - pin Teensy etiquetado "3,3 v (100 mA máximo)"
PIN 10 - X
PIN 11 - MS0 - primer Teensy pin marcado "GND"
Pin 12 - MS1 - pin Teensy etiquetado "3,3 v (100 mA máximo)"
Los números de pin Teensy y los nombres son tomados de [http://www.pjrc.com/teensy/card5a.pdf]
El receptor se alimenta de la computadora puerto USB via el Teensy, así que ahora debe ser nada conectando los dos transceptores.
Las clavijas de entrada en el Teensy son cambiables, sólo asegúrese de que se establecen correctamente en el código.
A continuación el código adjunto debe ser cargado a la Teensy y ejecutar. Puede ser copiado, un dibujo y luego debe funcionar bien en el 3.0 Teensy.
En primer lugar, el código define los pines que se encuentran en uso y sus funciones.
Luego declara algunas variables para almacenar valores, como la entrada del módulo.
También hay un temporizador para contra rebotes.
Se llama al controlador de interrupción cuando una interrupción se activa y entonces deshabilita las interrupciones, obtiene los valores de entrada y luego habilita las interrupciones otra vez.
La interrupción habilitar y deshabilitar funciones de adjuntar y separar rising edge interrumpe a los tres pines de entrada respectivamente.
La función de entrada conseguir simplemente Lee los tres pines de entrada y un botón opcional, luego, después de algunos contra rebotes, convierte el binario de la entrada en un entero decimal. Por último utiliza la conexión en serie a la salida el resultado para el equipo.
La función de configuración (inusual orden sé!) establece la función de los pines (IE. Entrada/salida), permite las interrupciones y luego parpadea el LED Teensy para mostrar que está listo para usar.
En general, el código dice el Teensy para esperar una entrada. Cuando recibe una entrada de que una interrupción se activa - una interrupción es un evento que hace que el programa actual hacer una pausa mientras se ejecuta otro código. Así que en este caso el programa no está haciendo nada, entonces este nada se interrumpe y se llama a la rutina de servicio de interrupción (ISR), una vez terminada esta función después el programa volverá a hacer nada exactamente como antes.
Nuestro ISR primero deshabilita las interrupciones, esto es así el Teensy no intente correr el whist ISR ya ejecutando el ISR como esto puede tener serio desordenado con acceso variable y generalmente sin definir comportamiento... :-/
Además lo debouncing... Contra rebotes es la mitigación de rebote mecánico. Rebote mecánico es la pequeña cantidad de experiencia por un interruptor de oscilación. Así que cuando usted enciende un interruptor no es sólo un simple apagado -> en intercambio, a veces sucede que los dos conectores realmente golpear unos a otros y luego rebote arriba y abajo antes de convertirse en estable, esto se llama rebote mecánico. En nuestro diseño el interruptor rotatorio de conexión del interruptor y el transmisor puede sufrir de rebote mecánico que causa la entrada de transmitir más de una vez, así que un temporizador se pone en el código de modo que si más de una entrada es recibida dentro de 100 microsegundos se aceptará sólo la primera.
Así que básicamente, el código esperará a la entrada, leer la entrada y salida a través de la conexión en serie.
Para ver la salida de la serie, cuando el programa se está ejecutando, haga clic en el botón de la lupa en la esquina superior derecha del editor de código de Arduino. Esto debería mostrar la "interfaz de RFD21733:" después de que el LED ha parpadeado.
Si esto todo se hizo correctamente la pantalla serial debe imprimir la versión decimal de los binarios de entrada dada al transmisor.
Si usted es incapaz de abrir la pantalla de serial o el LED no flash entonces no ejecuta el código teensy, intente reinicializar el Teensy.
Si la "interfaz de RFD21733:" mensaje no aparece a continuación, el código de comprobación de la entrada no ha sido descargado correctamente, intente descargarlo nuevamente.
Si no hay ninguna salida después del mensaje inicial y luego Compruebe que las clavijas se han establecido correctamente en código que corresponden a las conexiones con el hardware. {Esto debe establecerse en la sección de "Constantes", directamente después del comentario de "Definir números de pin"}
Como alternativa, revise las conexiones del receptor a la Teensy, la potencia en el receptor, el transmisor se enciende y transmite (el LED se enciende).
Si se muestran los números, pero la orden no parece corresponder al binario de entrada Compruebe que bit menos significativo se conecta a la entrada de 0 y el bit más significativo se conecta a la entrada 2.