Shldnt ser capaces de ver este Instructable es inédita. Había olvidado que había hecho uno similar antes
Los Attiny 13, 25, 45, 85 son encantador pequeño que como su nombre lo dice, son pequeñas. Se supone que tienen 6 pines I/O pero pin número uno (PB5/ADC0) funciona como pin RESET y para utilizarlo como un pin de I/O, es necesario configurar los fusibles apropiados en el chip. Que no es tan difícil, pero el problema es que una vez fusible, el chip no puede ser reprogramado por SPI, pero necesita un programador de voltaje alto que necesita primero para restablecer otra vez el fusebit específico.
Aunque era un poco confuso para mí lo que la tensión requerida de baja es que el pin de Reset para un Reset, parece que es menor que lo que generalmente se interpreta como una 'baja'. Que potencialmente abre posibilidades para usar el rango entre + Vcc y Vreset para la entrada, sin necesidad de reiniciar el chip para probar esto que utilicé un Attiny13, conectado un LED y un resistor a PB0 y conectado el contacto medio de una resistencia variable de 25 k al Pin 1 y el exterior en contacto con a Vcc y 0V respectivamente. Entonces cargué el Attiny con el siguiente programa:
// Using the Reset pin as ADC0 const int Led = 0; int x=0; void setup() { pinMode(Led, OUTPUT); } void loop() { digitalWrite(Led,HIGH); x=analogRead(0); delay(x); digitalWrite(Led,LOW); delay(x); }
Cuando la resistencia variable se conecta todo el camino hasta el + Vcc carril, el LED parpadea en un ritmo constante. Cuando baja la resistencia variable, la frecuencia de intermitencia subió, es decir, un rápido parpadeo del LED... como era de esperar. Esto fue hasta el LED de repente detuvo parpadeando (como la función RESET en). Resulta que el punto de reset estaba en 9 K Ohm. Que es igual a 5 *(9/25) = 45/25=9/5=2.2 voltios. Que generalmente no es muy diferente de lo que se considera un bajo y es un poco superior a lo que entendí el Vreset ser.
Por lo tanto, utilizarlo como un pin de entrada igital podría ser un poco difícil, pero abre bastantes posibilidades para utilizar la gama entre Vreset y Vcc para entrada analógica, aunque un poco de una gama comprimido.
Como por supuesto no se puede tener un circuito que está siempre al borde de resetear, necesitamos construir en algún tipo de protección: algo que mantiene la tensión en el pin 1 de golpear a 2,2 voltios.
Consideremos el circuito de 2. Suponga que la menor resistencia de la LDR se mide en las circunstancias de luz que estamos utilizando es 1k. Entonces sabemos que la corriente a través de que 1 k debe ser mínimamente 2.2 mA a permanecer por encima del voltaje de Reset. Por lo tanto la resistencia total de la LDR + la resistencia debe ser 5/2.2=2.27k, por lo tanto la resistencia debe no ser más que 1, 27 k. Los valores más cercanos de E12 son k 1,2 y 1,5 k y debemos elegir 1,2 k seguro.
Por supuesto se puede utilizar el circuito con la resistencia LDR intercambiados, y entonces es mucho más difícil de calcular que una segura resistencia en oscuridad el valor de la LDR puede subir a varios Mega ohmios, pidiendo un resistor que es en ese mismo rango.
Dado el hecho de que el nivel de reposición es de 2,2 voltios, no me he molestado para probar si trabajaría con digitalRead.
Obviamente el método tiene algunas desventajas, principalmente una gama de comprimidos, pero si sólo necesita un pin extra para medir la luz y no vale la pena subir hasta un attiny 44 o un attiny 2313, este método sólo puede hacer la diferencia