Cronógrafo de AVR desde el concepto de PCB (4 / 13 paso)

Paso 4: Agregar más circuitos

Te aparta estudio de ATMEL por un tiempo y volver al circuito.  Este paso estará en varias piezas cortas con una descripción de las diferentes secciones del circuito y un esquema simplificado para ir con cada uno.  La fuente de alimentación y programación conexiones estaban cubiertos en el paso dos, por lo que no van sobre esa parte otra vez.

Una breve nota antes de continuar: las clavijas que va a utilizar cumplen varias funciones que son capaces de realizar para nosotros.  En el esquema, las letras y número en el exterior de la caja que representa el chip son los nombres genéricos de pin.  PB1, por ejemplo, los soportes para el pin del puerto B 1.  Los pines de I/O se agrupan en puertos y pueden utilizarse individualmente o en grupos de hasta el tamaño del puerto.  El puerto C es el Chiflado con sólo 7 pernos y Puerto B tiene varios de sus pines se utiliza como pines de programación.  Recuerde que podemos reutilizar todo pero el pin de reset, así que sólo PC6 es fuera de límites.  También, PB6 y PB7 se utilizan como los pernos de oscilador de cristal, por lo que los límites también, pero sólo cuando es necesario utilizar un oscilador externo.

Vamos a empezar con la entrada de sensor.

Mirando la primera foto, se puede ver que los circuitos de Q1 y Q2 son idénticos.  Los sensores proporcionan una señal 12VDC cuando están activos.  Esto es demasiado para enviar a un pin de entrada directamente, usé estos interruptores de transistor para detectar cuando el sensor se activa y tire de la clavija de entrada a la tierra.

D4 y D5 están ahí para hacer alineando los sensores más fácil.  Estoy usando un sensor de foto con un reflector para rebote el rayo, por lo que cuando se alinean correctamente apague los LEDs y los pines de entrada alta.  El software a que más adelante llegaremos observar para que estas entradas ir bajo para indicar el paso del objeto.  Resistencias R2 y R3 son resistencias de pull-up en estos pines de entrada para evitar falsas alarmas de ruido.  El AVR tiene resistencias de pull-up interna que puede habilitar para cada entrada, pero descubrí que no fue habilitados rápidamente bastante en encender, y una interrupción se activó inmediatamente cada vez.  Las resistencias de pull-up externo evitar esto.  R14 y R15 fueron agregados en el desarrollo para prevenir el disparo de las interrupciones por tocar los cables en el circuito.

Echar un vistazo a las funciones de las dos patillas conectadas a los transistores.  Verás que ambos tienen PCINT(number) y INT(number.)  PCINT significa interrupción de cambio de Pin y, si está habilitado, se disparará una interrupción cada vez que el pin cambia de estado de 0 >> 1 o 1 >> 0.  Eso es bueno para algunas aplicaciones, pero no para este.  La otra función común, INT0/INT1, significa interrupción externa 0 y 1.  Estas son las dos interrupciones de este tipo en el chip, y puede configurarse para activar en las cosas positivas o borde de un pulso negativo... Es perfecto para nuestras necesidades.  Queremos activar tan pronto como el pin va de 5V a tierra no importa cuando el pin vuelve a alto (a menos que usted quiere intentar medir la longitud del objeto pasa, pero eso es otro proyecto!)

Sé que prometí más sobre interrupciones... sea paciente.  Por ahora, basta saber que cuando se activa una interrupción el programa detiene lo que está haciendo y ejecuta el código que escribimos para esa interrupción.  Después de ejecutar ese código, el programa vuelve a lo que hacía antes como si nada ha pasado.  Nos configurar las interrupciones de software, así que más que en la sección de software, incluyendo algunos escollos para!

Eso es para las entradas de sensor.   Así, que estas adiciones en la protoboard y luego te pasamos algunos más conexiones de I/O...

Ahora, en la segunda foto es nuestra primera salida! R4 y D2 hacen la luz de listo que indica que el programa está listo para tomar la siguiente medición.  Esto fue una adición tardía después tuve algunos problemas con el segundo sensor disparo varias veces durante una sola medición.  Ahora cada sensor puede accionar una sola vez cuando se toma la medida y entonces no otra vez hasta algunos pasa el tiempo.  Después de que el tiempo pasa, la luz preparada se enciende y la siguiente medición puede llevarse a cabo.  SW4 también fue una adición tardía.  Una vez la distancia entre los sensores (véase la sección siguiente), quería una manera de poder comprobar qué valor estaba usando el programa para esa distancia en las matemáticas.  Al presionar este botón hace que esa consigna que se mostrará en las pantallas de salida.

OK, SW3.  Se trata de un paquete de la inmersión de 8 interruptores que solía obtener algunos datos del usuario en el chip en tiempo de ejecución.  se utilizan 6 interruptores y cada uno de ellos conecta a un pin de entrada con el resistor de pull-up interna habilitado (veremos cómo habilitar en el software).  Los primeros 4 interruptores representan la distancia entre los sensores en los pies.  El rango es de 1-16 pies en incrementos de un pie (0000 = 16.)  Originalmente, el rango fue de 1-15 0000 fue 0, y que causa una condición de división por cero.  Por esa razón, todas las 4 entradas baja equivale a 16.  Aviso que no son 4 entradas en los pines de entrada consecutivos.  Eso plantea un poco de un problema cuando supone que un número binario de 4 bits.  Debido a esto, tenemos que hacer un poco manipulación en el software para recuperar los 4 bits juntos antes de que se puede utilizar como un valor binario.  Los dos últimos interruptores de SW3 son dos entradas más para permitir al usuario elegir las unidades de salida recomendado:.  Puede ver la nota sobre esto en el esquema.  Las unidades de salida posibles son millas/hr, kilómetros/hora, metros por segundo y pies/seg.  Es posible utilizar las unidades que desea por supuesto.  Si te gusta furlongs/quincena, puedes hacerlo fácilmente cambiando la aritmética en el programa! Más cositas que esperamos!

Foto 3 muestra los 4 bits BCD (binario codificado Decimal; sólo un número decimal representado por 4 bits.  Refrescar su BCD aquí: http://en.wikipedia.org/wiki/Binary-coded_decimal) salida BCD al decodificador de 7 segmentos, el 74LS48.    PortB0 - 3 están muy bien agrupados juntos lo que es fácil enviarlos a entradas de BCD del decodificador sin ningún formato.  Las clavijas de los decodificadores la etiqueta * Capitolio * A, B, C y D son las entradas de BCD.  Por lo tanto, una vez que tenemos nuestro número, podemos solo enviar salida binaria en portB y dejar que el decodificador haga el resto.  SW1 es opcional y solo dice el descodificador a la luz todo en las exhibiciones para propósitos de prueba.  VCC y tierra deben ser auto explicativo aquí y nos pondremos a * minúsculas * a, b, c, d, e y f siguiente... Una última cosa sobre el decodificador.  El perno /LT estamos utilizando para la "prueba de la lámpara" obviamente, pero ¿cuáles son los otros dos pasadores raros? /BI-RBO es no esconder la entrada y salida esconde no-ripple (la barra sobre el nombre es un lógico bajo activo como el pin de reset en el AVR que significa 'no'.)  Hay detalles acerca de cómo funcionan estos pines en la hoja de datos, pero si nada más, la entrada de borrado vertical no debe ir a la tierra o la pantalla estará en blanco! Por lo que solo conectado a la fuente de 5v +.

Foto 4 parece más complicada de lo que realmente es.  Cada display de 7 segmentos tiene cada uno de su ánodo (positivo) conexiones etiquetadas minúsculas a - f.  Los tres muestra a encadenar juntos para que todos los a son atados juntos y la b está ligados juntos y así sucesivamente... Entonces todos conectan con el conector correspondiente en el decodificador para que los datos desde el decodificador va a las tres de la muestra al mismo tiempo.  Quizás se pregunte cómo mostrará un número de tres dígitos que tenía diferentes dígitos!  Ese es el propósito de Q3, Q4 y Q5.  Cada pantalla también requiere una conexión (negativo) de cátodo a tierra para poder iluminar. Por lo tanto, si podemos controlar que pantalla está conectado a tierra y control que cifra el decodificador está enviando, nos podemos recorrer los tres dígitos y tres pantallas realmente rápidos para mostrar un dígito diferente en cada uno!  Este proceso se denomina multiplexación.  El uso del decodificador de 7 segmentos y multiplexación reduce el número de pines de salida necesaria de 21 a sólo 7.  PortC0 - 2 se utilizan para controlar los interruptores de transistor que la muestra del suelo.  Esta parte es divertida en software! No puedo esperar!

La última foto muestra el circuito completo.  Si no lo has hecho ya, breadboard con cuidado y prepárate volver al estudio de ATMEL...

Artículos Relacionados

Estación de Audio y cronógrafo Steampunk

Estación de Audio y cronógrafo Steampunk

gracias a todos de sus diseños muy creativos y proyectos, todos ustedes me han inspirado a crear mi propio Steampunk Audio y estación de cronógrafo.  Este proyecto me llevó WAAAY más tiempo del previsto y pasó a manera de presupuesto, pero una vez ca
Cronógrafo para cañón de aire

Cronógrafo para cañón de aire

Cronógrafo consiste de un sensor montaje y temporizador de caja que puede utilizarse para medir la velocidad del bozal de un proyectil disparado desde un cañón de aire.Había construido esta configuración para el uso con un cañón de aire grande con un
Paintball/balísticos Cronógrafo

Paintball/balísticos Cronógrafo

crear un cronógrafo de Paintball bajo costo menos de $ 40!Un cronógrafo balístico es un dispositivo que registra la velocidad de un proyectil. Este cronógrafo particular que he hecho ha sido probado solamente con una pistola de paintball y es relativ
Airsoft o pistola de aire (u otro proyectil lanza dispositivo) Cronógrafo utilizando un micrófono

Airsoft o pistola de aire (u otro proyectil lanza dispositivo) Cronógrafo utilizando un micrófono

mi primera crítica Instructable, constructivo Bienvenido.Si tienes un rifle o cualquier otro dispositivo de disparo del proyectil que usted necesita o quiere Cronógrafo las opciones son bastante limitadas. Puede encontrar una persona que tiene un cro
ATtiny Cronógrafo

ATtiny Cronógrafo

Hice un cañón de aire el verano pasado, y aunque 's diversión para disparar dardos nerf a velocidades inane durante horas, es un poco difícil de cuantificar exactamente a qué velocidad "realmente maldita ' rápido" sin una cámara de alta velocida
Cómo utilizar mi método de cronógrafo a ROF

Cómo utilizar mi método de cronógrafo a ROF

si no lees mi método chronographing leerla { antes de continuar.En este instructable mostrará usted cómo adaptar el método de chronographing para dar aproximado velocidad de disparo de un rifle automático.Se necesita:1. una pistola de airsoft2. una c
Pobre hombre Cronógrafo airsoft.

Pobre hombre Cronógrafo airsoft.

Si usted cada airsoft jugado en un campo, o incluso con cuidado amigos saben la importancia de tener una pistola que dispara a un nivel adecuado de FPS (pies por segundo). Hoy voy a mostrar cómo hacer un FPS áspero de la lectura de una lata de soda.P
Perfiles de forma de cuchillo, desde el concepto hasta la ejecución.

Perfiles de forma de cuchillo, desde el concepto hasta la ejecución.

Un knifemaker, tanto si eres un primero temporizador o un veterano, una de las habilidades más básicas que necesita para desarrollar es hoja de perfiles. Esencialmente, que cantidades para el desarrollo de la hoja básica forma eventualmente será su c
Cacatúa loro Tutorial de máscara de cuero: Desde concepto hasta finalización

Cacatúa loro Tutorial de máscara de cuero: Desde concepto hasta finalización

Hola, mi nombre es Chelsea y este es mi segundo Instructable publicado.En este Instructable, yo se ser caminando a través de los pasos de hacer una máscara de cuero de calidad premium; desde el concepto del diseño y la compra inicial de la piel hasta
¿Una guía completa de arranque AVRs

¿Una guía completa de arranque AVRs

has jugado con Arduino y ahora tienen un gusto por microcontroladores?¿Han intentado ir más allá de Arduino pero tiene parada por la pajina densa?Este es el instructivo para usted!Estaba trabajando en un instructivo para el concurso de epilog que vin
Desde la IDEA hasta la producción - Cryptex

Desde la IDEA hasta la producción - Cryptex

Este Instructable es ilustrar el proceso de tomar un concepto a través de diseño y prototipos hasta producción Inicio en pequeña escala. Hemos elegido un Cryptex para ilustrar este proceso. Ya hay varios diseños de Cryptex en este sitio, pero queremo
Programador universal para de AVR y S51 y ZIF socket!

Programador universal para de AVR y S51 y ZIF socket!

Este programador ha sido diseñado por la empresa y se ha producido al menos 2500PCS de esto y es absolutamente probado y normas y ahora no fabricar más esta versión, aquí es el producto de enlace (lo siento persa sólo estaba disponible)Programador un
Montando el jinete de dragón 500 para uso con el dragón del AVR

Montando el jinete de dragón 500 para uso con el dragón del AVR

no hace mucho tiempo la empresa Atmel salió con una gran herramienta para el uso con la línea AVR de microcontroladores llamado el dragón del AVR. Este pequeño dispositivo USB proporciona a profesionales y aficionados por igual la capacidad para util
Cómo empezar con Eclipse y AVR

Cómo empezar con Eclipse y AVR

programación de AVRs es divertido, pero a veces los entornos de desarrollo de fabricantes hacen mantenimiento de código una tarea. Si buscas un gratis, cruz plataforma, pieza de alta calidad de software para la programación de AVRs Eclipse es una bue