Paso 4: programar el microcontrolador
Puede utilizar el código proporcionado o bien escribir su propia, no es tan difícil.
¿Cómo funciona?
La parte principal es el diodo de la foto que se utiliza como sensor de aquí. Cuando no hay luz o sólo un poco, el diodo se bloqueará. Pero cuando una luz de flash golpea el diodo se convertirá en conductora por un período corto de tiempo. Junto con la resistencia de 100 k es algo que se llama un divisor de tensión.
Así que mientras que los bloques de diodo, su resistencia es mucho mayor que 100k y el pin PB2 casi habrá tierra potencial.
Cuando un flash se detecta que su resistencia llega a ser mucho menor que 100k por un corto período de tiempo y pin PB2 reconocerá una señal alta. Esto dispara una interrupción de la entrada en el software.
El condensador es necesario separar el pin del diodo. Sin el condensador, la pequeña corriente entregada por el diodo durante el parpadeo no sería suficiente para provocar la interrupción. Tal vez alguien tiene una mejor explicación de este efecto. De todas formas funciona.
Cuando un flash es reconocido por el microcontrolador, se cuenta y si cuenta el número de destellos igual al número de parpadeos es necesitada, entonces el flash esclavo se dispara.
El número de destellos es necesitada se lee en después de la puesta en marcha del conmutador rotativo de 4 bits, con ella que podemos fijar hasta 16 predestellos.
El opto acoplador es necesaria porque parpadea a menudo tiene más de decenas de voltios en sus conectores. y esto seguramente mataría nuestro pequeño microcontrolador. Es en principio otro fotodiodo junto con un LED en una cubierta cerrada. Si enciende el LED interno, el diodo es conductor y acorta las dos salidas que entonces se dispara el flash esclavo.
Como un bono extra de un temporizador/contador se habilitaba para restablecer todo el dispositivo si se reconoce más de un segundo sin flash. Esto tiene la siguiente razón: Si tomar fotos en una fiesta y otras personas toman fotos y flash, su flashcounter obtiene precargado y no flash en el momento adecuado. Después de algunos flash esperando a 1s y el flashcounter se restablece.