LusoRobótica - Robótica em Português
Sistemas específicos => Arduino / AVR => Tópico iniciado por: BaNoBi em 18 de Novembro de 2010, 22:32
-
Boas,
Estou a fazer testes com este circuito para fazer on/off de equipamentos a 220v:
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimages.elektroda.net%2F21_1228334288.jpg&hash=6108e7ac02c01648c1efe41cb636de49c960e915)
E com este código:
void setup() {
pinMode(12, OUTPUT);
}
void loop() {
digitalWrite(12, HIGH);
delay(10000);
digitalWrite(12, LOW);
delay(10000);
}
Para os testes, liguei uma lâmpada de 220v ao BT136 e quando o arduino está a fazer o boot a lâmpada pisca umas 7 vezes, depois fica a trabalhar normalmente.
Existe alguma possibilidade de alterar este comportamento?
-
Mete uma resistência de 10Kohm a ligar o +Vin ao ground, isso acontece porque quando o bootloader do arduino é executado os pinos estão todos como entradas de alta impedância e qualquer ruído pode fazer o pino mudar de estado, a resistência actua como um pull-down para impedir isso
-
:(
Muito obrigado pela dica, mas não resolveu.
-
"boot", para ti, significa ligar a energia, ou significa fazer a programação?
Isso está de certeza nas inicializações internas do Arduino, que estão encobertas, ao utilizador, pelas bibliotecas.
Mas os experts em Arduino podem dar a solução, há aqui muitos! ;D
-
"boot", para ti, significa ligar a energia, ou significa fazer a programação?
Ligar a energia ao arduino
-
Quando o arduino é ligado primeiro corre o bootloader, e o pino 12 devia estar em alta impedância, não devia estar como saida e muito menos mudar de estado, mas tendo em conta as atrocidades que tenho visto no código do arduino já nada me espanta, experimenta ir baixando a resistência até aos 4,7K ver se resolve.
-
Realmente este é o problema de não se ter controlo no chip. Confirma-se.
Tenta mudar de pino, a ver se faz a mesma coisa.