Paso 15: [Apéndice] circuito esquemático
El esquema siguiente describe el circuito de Jar de luciérnagas. En particular, hay algunas notas acerca de su diseño:
VCC - el polo positivo de su 3V de alimentación (es decir, batería), para quien no esté familiarizado con las convenciones de nomenclatura de esquema electrónicos.
GND - además, esto va al borne negativo de tu batería.
R1 - resistencia de Ohm de 22,0 K - se utiliza como un resistor de pull-up para conducir el voltaje en el pin de reset alto durante la operación, impidiendo así que el chip se está restableciendo. El circuito realmente funcionaría muy bien si esta resistencia simplemente fue reemplazado por un alambre. Sin embargo habría una diferencia fundamental: no poder reprogramar el chip una vez fue soldado a la placa. La razón de esto es porque el programador de la viruta no sería capaz de conducir el pin de reset baja sin cortocircuito a VCC al mismo tiempo. Es el único propósito de R1, para permitir que un programador de la viruta cambiar el pin de reset sin cortocircuito a VCC. Como tal, el valor de R1 no es realmente importante, siempre y cuando sea lo suficientemente grande (sin tan grande como para bloquear el pin de reset de ver VCC en todos). Cualquier valor entre 5k - 100k es probablemente bien.
R2, R3 - resistencias de 100 Ohm - el valor de estas resistencias dependen de las características del modelo de LED le sucede a utilizar. LED distinta de, incluso del mismo tamaño y color, tienen características muy diferentes, particularmente cuando se trata de cómo mucho corriente dibujan y cuanta luz que producen. Por ejemplo, el modelo de LED que terminé usando son spec para dibujar alrededor de 20mA a 2.0V y 10mA en 3V a través de un resistor de 100 Ohm.
Ahora tenía que hacer todo de nuevo este circuito, yo probablemente habría elegido un valor ligeramente mayor para R2, R3. La razón de este ser que, que para ver una luciérnaga en el resplandor de la naturaleza tan brillantemente como uno estos LED en 10mA, cabría esperar que explotara en una húmeda niebla verde un milisegundo más tarde. Es decir, en la 10mA resplandor de estos LED demasiado brillantes para ser realista luciérnagas. Este es un tema que dirigí en software limitando la máxima luminosidad que el LED nunca se conducen en. Si utilizas la misma pieza LED de la que he usado, se encuentra el software de firefly ya ajustarse a un brillo apropiado. De lo contrario, a menos que usted desea cambiar el brillo en el código fuente, puedes encontrarte volviendo y trasteando con el valor de R2, R3 para encontrar un valor más apropiado cualquier LED que acabas usando. Afortunadamente, esto no debería tomar mucho esfuerzo como resistores SMD son fáciles de la reanudación.
PIN_A, B, C, D, E - estos son los nombres que dio arbitrariamente a los pernos para diferenciarlos y me refiero a las clavijas por estos nombres en el código fuente. Pernos A y B me refiero a como "maestros" pins. Si no va a leer el código fuente, esta distinción no hará ninguna diferencia. Si usted piensa en la lectura del código fuente, esperemos que los comentarios que he puesto en él suficientemente describe el papel de los pines principales y cómo se conducen los LED.
Irregardless, aquí está el Resumen de cómo se conducen los LED:
Antes de una luciérnaga 'canción', se hace una decisión al azar lo que LED es ser conducido. Esta decisión comienza con la selección del perno del 'maestro', ya sea PIN_A o PIN_B. Esta selección enangosta abajo la elección de qué LED actual puede ser conducido. Si PIN_A es elegido, entonces tenemos una opción entre LED1, LED2 y LED3. Asimismo para PIN_B y el otro LED de. Una vez el pin maestro es elegido, al azar elegimos el LED específico para conducir en la reducida lista de candidatos.
Por ejemplo, permite decir que hemos elegido PIN_A y LED2.
Para encender LED2, unidad PIN_A alto y conducir a PIN_D (el pin que está conectado al otro lado del LED2) baja. Para apagar LED2 otra vez durante la reproducción de la canción, salimos PIN_A alta PIN_D alta en coche, así eliminando la diferencia de potencial entre los dos lados del LED2 y detener la corriente a través de él, apagarlo. Puesto que dejamos PIN_A por alto todo el tiempo, también podemos elegir jugar cualquiera de los otros dos de LED, LED 1 o LED3, completamente independiente. En la práctica, el código está escrito para jugar un máximo de dos canciones al mismo tiempo (dos firelies brillando al mismo tiempo).