Paso 15: Para ver la luz, pulse 1.
Ahora que ya tenemos un camino para el Tiny2313 detectar pulsar un botón, ¿cómo conseguimos el programa para responder?
El programa intermitente LED desde el último paso y añadir en estas dos líneas a la sección de configuración, justo después de la salida de b configuración portuaria, línea:
Config PortD = entrada
Set PinD.5 ' activar la resistencia de pull-up
Estas líneas tendrán el Tiny2313 configura el puerto D para un puerto de entrada, por lo que puede detectar si hay un alto (+ 5V) o bajo (0V) en eso perno. La segunda línea es necesaria para activar la resistencia de pull-up internas que ya comentamos en el paso anterior.
Ahora que el chip del controlador es creado para leer una entrada, vamos a hacer el programa reacciona a esa entrada. Añadir un circuito simple solo después del comienzo del programa principal, como esta:
Hacer
Si Pind.5 = 0 Then Goto Inicio
Lazo
Y añadir una línea después del bucle nuevo. El cuerpo principal de su nuevo programa debería parecerse a esto:
' Programa principal
Hacer
Si Pind.5 = 0 Then Goto Inicio
Lazo
: Inicio
Hacer
Set PortB.0
waitms 500
restablecer PortB.0
waitms 500
Lazo
El: línea comienza con dos puntos (:), esto dice BASCOM que la línea es una etiqueta. BASCOM marcará la ubicación de esta línea en la memoria de Tiny2313, para que otras declaraciones de programa pueden referirse a esa línea. Esta característica es usada en el bucle de nuevo. El si declaración en el primer lazo anterior hará el ' 2313 examinar el nivel de voltaje en el pin D.5. Si el voltaje es alto (+ 5V) y el if se lee parte de la declaración como falsa (en otras palabras, el alto voltaje en el pin D.5 no es igual a 0.) En ese caso, el si declaración ignora la parte entonces de la declaración y se procederá a la instrucción next. Sólo cuando el si parte de la declaración es verdad, en otras palabras, el pulsador ha sido presionado, permitiendo que la corriente de flujo y la clavija de entrada para ver a 0V (o baja) que el if... Declaración ejecute la parte entonces de la instrucción, por lo tanto va a la etiqueta Inicio.
Esto suena todo tipo de complicado, pero es muy simple. Como ya comentamos en el último paso, cuando tienes el pulsador no presionado, no hay ninguna corriente que fluye, y la línea de entrada "ve" un alto (+ 5V) a través del resistor de pull-up. Pero cuando usted presione el botón, el flujo actual a través del interruptor y luego a través de la resistencia de pull-up internas y la entrada "ve" un bajo (0V). Para que el primer bucle sólo espera, comprobando constantemente la línea de entrada, hasta que se presione el pulsador. Cuando la clavija de entrada muestra un 0, entonces el if declaración es verdadera, y el programa Salta a la: Inicio de línea y continúa con el segundo bucle.
Así el sistema de experimentador 2313 esperará hasta que usted presione el botón y luego procederá a parpadear el LED hasta que apague el sistema apagado, o reset ' 2313. Si usted simplemente reiniciar el sistema, el programa será empezar de nuevo, espera hasta que usted oprima el botón.
Ahora, ¿cómo cambiaría esto a hacer uso de Stan1ey ' Ible (desde el último paso)? Desde su botón es un interruptor normalmente cerrado, lo que significa que los contactos están cerrados hasta que empuje la "manija" de la ropa-pin, podría sólo cambia el número para que el si está buscando la declaración. Trate de cambiar eso en el if instrucción y gancho de uno de los interruptores de Stan1ey. Ahora, tome un pedazo de papel y colocarlo entre los pasadores. como la segunda foto en el paso de Stan1ey 7. Cuando el cable tira el papel del interruptor de clavija de ropa, su sistema de experimentador 2313 destellará el LED, alerta a la intrusión.
Mire a través de otros Instructables para intentar encontrar otros proyectos que se pueden conectar a su sistema de experimentador 2313. Recuerde, eso la derecha de ahora, sólo se puede utilizar una línea de proyecto hacer un simple interruptor. Echa un vistazo a manipulador de código Morse de Beni ( ¿El clip de papel, tornillos, arandelas y tuercas y el bucle conectores conforman otro interruptor normalmente abierto, como las que en su sistema de experimentador 2313 - cómo se modificaría el programa para que podría utilizar al manipulador para código Morse? (Sugerencia, tienen su programa de uso de un solo lazo y el control del programa a ver si el interruptor NO está cerrado, y si así, luz del LED, caso contrario, apague el LED). También puede interesarte en Liam ' Ible ( y que conectarlo a su sistema de experimentador 2313.
Este es otro hermoso aspecto de sistemas de desarrollo; es fácil añadir circuitos y dispositivos de otros proyectos.