Scooter
Cascarrabias crónico
Acabo de realizar el control de fase de uun tirac por software con un arduino.
Por si a alguien le puede interesar, publico el código fuente y un video del funcionamiento, el esquema lo publicaré en cuanto lo haga.
Por si a alguien le puede interesar, publico el código fuente y un video del funcionamiento, el esquema lo publicaré en cuanto lo haga.
Código:
int cuenta = 0;
int segundo = 0;
int tarda =1;
boolean cero = false;
int espera ;
#include <FlexiTimer2.h>
void interrupcion(){
cero = true;
FlexiTimer2::set(espera, 1.0/10000, timer); // call every 500 1ms "ticks"
FlexiTimer2::start();
}
void timer(){
static boolean output = HIGH;
if (cero){
digitalWrite(8,HIGH);
cero = false;
FlexiTimer2::set(1, 1.0/10000, timer); // call every 500 1ms "ticks"
FlexiTimer2::start();
}
else{
digitalWrite(8,LOW);
FlexiTimer2::stop();
}
}
void setup() {
// put your setup code here, to run once:
pinMode (7,INPUT_PULLUP);
pinMode (8,OUTPUT);
attachInterrupt(digitalPinToInterrupt(7), interrupcion, RISING);
Serial.begin(9600);
digitalWrite(8,LOW);
}
void loop() {
// put your main code here, to run repeatedly:
espera = map(analogRead(0),0,1023,0,100);
}