Paso 2: El hardware
una opción obvia. Ya que los LEDs blancos tienen un encendido sobre 3.2V, y pilas de moneda
en su mayoría vienen en múltiplos de 1, 5V, esto significó que necesitábamos por lo menos 4, 5V. Esto significaría
3 las baterías, que conseguía desordenado. Por lo tanto, decidí que haría dos pilas de 3V.
La entrada de Wiki http://en.wikipedia.org/wiki/List_of_battery_sizes tiene algunas útiles
información (asumiendo que su correcta!). Un CR2016 es exactamente la mitad del espesor de una CR2032,
así que he decidido sobre el uso de 2xCR2016. Al principio pensé que podía usar una moneda CR2032 sewable
soporte de la batería (de http://www.sparkfun.com ) y doble-para arriba las pilas, pero cuando se
llegó me di cuenta que se corto una de las baterías. Por lo tanto, se asentaron en menos-que-
método satisfactorio de modelar nuestra propia. Utilicé dos terminales de anillo (con aislamiento
quitar) y ShapeLock envuelto alrededor de las dos células. Esto funcionó bien. La CR2016
tiene 90mAh según la Wiki.
Otra cuestión es que el microcontrolador tiene un voltaje máximo de operación de 6V (véase
http://www.atmel.com/dyn/resources/prod_documents/doc2543.pdf ) y células de litio
tienen una mayor que la tensión nominal de circuito abierto (véase la entrada de la Wiki anterior), por lo que parecía
prudente bajar un poco la tensión. He usado un diodo en serie con la fuente a
obtener una gota de 0.7V, más o menos. (Un rápido cálculo peor caso muestra que la corriente máxima
sería alrededor de 100 mA, por lo que el diodo debe estar clasificado para en acerca de 100mW, que no es
un problema a menos que utilice diodos muy pequeños.) Usé a un Zener en la dirección 'equivocada'
ya que tengo un montón de ellos.
Las especificaciones de Atmel (ver enlace arriba) es bastante claro como especificaciones. AOH El ATtiny2313 tiene fusibles
le permiten elegir algunas características de funcionamiento como el uso de un reloj interno
y frecuencia de funcionamiento. La siguiente sección muestra cómo programar los fusibles con el avr
cadena de herramientas.
Decidí correr el ATtiny2313 a 1Mhz, que es más de lo suficientemente rápido como para nuestras necesidades,
y a esta frecuencia que el suministro activo de corriente es de 2mA, que es bastante insignificante
Comparado con el sorteo de LED. Otras características relevantes del ATtiny2313 son (1) la máxima
Corriente por el pin I/O (40mA), (2) DC la DC máxima corriente a través de la alimentación y tierra
(200mA) y (3) la tensión de HI de pin de I/O en el LED correspondiente actual (4.5V @ 20mA, 4.8V @
10 mA).
Un chequeo de cordura rápido muestra que hay no hay violaciones flagrantes de la especificación: el blanco y
LED amarillos es calificada a 20mA, el rojo LED tiene una potencia de 10 mA. Por lo tanto, es el peor de los casos actuales
Acerca de (4 * 20 + 2 * 10) mA para LEDS y 2mA para el ATtiny2313, así un peor de los casos de
Acerca de 102mA. Así que todo parece bien desde un punto de vista de espec.
Sin embargo, en un sorteo de 102mA, el CR2016s va a durar menos de una hora. Esto no es suficiente
como pueden haber una hora o más entre Pinecar Derby pesaje y la raza real.
Así que he decidido hacer los LEDs a usar menos corriente (con un menor ciclo de trabajo) y para cambiar
en momentos diferentes. Esto se abordará en la siguiente sección.
Debe utilizarse una resistencia limitante de corriente para operan los LEDs en el momento oportuno.
El valor de resistencia adecuado puede determinarse utilizando la siguiente fórmula. El LED correspondiente
características son el delantero (a) tensión, V_f_min y la corriente en, I_on. A continuación V_f_min,
el LED no está encendido, y no tiene ningún sentido en la conducción más actual que I_on (no te
mucho más brillante, se desperdicia la energía de la batería y la vida del LED se corta, no que este último es un
gran consideración aquí). V_HI es la tensión I/O pin salida HI al I_on actual de abastecimiento.
El valor de la resistencia no necesita ser exacta, por supuesto, y la elección final dependerá de
lo que tienes en tu cuadro (tengo un kit de resistencia que tiene gazillions de diferentes valores), y
lo que el brillo real parece (Recuerde, el coche apenas tiene luz para unos pocos
horas, nos vamos no fabricación de 1 millón de unidades!). Además, desde el deber ciclo voluntad
ser inferior al 100%, pueden trabajar más pequeños valores de resistencia. Cometí un error cuando miré para arriba
el amarillo voltaje en la espec. delantero y utiliza un valor de resistencia de 100 ohmios en vez de
los 'correctos' 135 ohmios. No gran cosa, solo un poco descuidada por mi parte (ya que me he ido a la
preocuparse de la informática en primer lugar el valor!). La segunda imagen aparece a continuación muestra la
números correspondientes de los LEDs y la entrada-salida perno tensión HI vs fuente actual.
He utilizado un tablero de pan (ver tercera foto abajo) para asegurarse de que todo estaba bien y dejar que me
probar el software antes de Asamblea. Una cosa menor para: elegir utilizar
PORTB (no recuerdo exactamente porqué, pudo haber sido por lo que pude verificar el interior
frecuencia en el otro pin de reloj), que se superpone con los pines de programación. Por lo tanto, usted
será necesario desconectar uno de los LEDs (pin 17, creo) cuando la unidad de programación
o que puede golpear algunos errores de programación impares. Puedes ver el portapilas feo
a continuación.