Escolar Documentos
Profissional Documentos
Cultura Documentos
//Variaveis
unsigned int timeToWait; //tempo de espera apos a passagem pelo zero para dispa
rar o TRIAC (em microssegundos)
int pulseWidth;
//tempo de duracao do pulso de disparo
int state = 0;
//status do sinal de sincronismo
int previousState = 0;
//estado anterior do sinal de sincronismo
const int halfCycle = 8333;
//tempo em microssegundos de um semiciclo da re
de eletrica (constante)
float increment;
//variavel utilizada para variar mais lentament
e a potencia quando o botao e mantido pressionado
void setup(){
pinMode(trigger, OUTPUT);
pinMode(sync, INPUT);
pinMode(incButton, INPUT);
pinMode(decButton, INPUT);
timeToWait = 8333;
increment = 8333.0;
void loop(){
boolean turnOff = 0;
ampada
boolean maxPower = 0;
otencia maxima para a lampada
pulseWidth = 0;
}
/*Le estado do sinal de sincronismo*/
state = digitalRead(sync);
/*Se a potencia for maxima, deixa o trigger acionado direto*/
if(maxPower)
digitalWrite(trigger, HIGH);
/*Se o estado do sinal de sincronismo mudou e a lampada nao deve ficar apagada
*/
else if( (turnOff == 0)&&(state != previousState) ){
previousState = state;
ual
delayMicroseconds(timeToWait);
disparo
digitalWrite(trigger, HIGH);
sparo (trigger)
delayMicroseconds(pulseWidth);
pulso
digitalWrite(trigger, LOW);
isparo (trigger)
}//end if
}//end void loop
//armazena estado at
//espera tempo para
//aciona sinal de di
//aguarda largura de
//desliga pulso de d