Me estoy iniciando en arduino, con lo que pido disculpas de antemano si la pregunta es tonta, pero estoy harto de buscar y (quizas porque no estoy buscando correctamente) no encuentro la solución.
Estoy con un proyectito muy básico para hacer lo siguiente, quiero que en el arduino esten conectados un motor y un pulsador, y lo que quiero es que la primera vez que pulse el pulsador, se encienda el motor durante un par de segundos, (con los conocimientos aprendidos en el kit de iniciacion....) pero que aunque se vuelva a pulsar o se deje pulsado, no vuelva a encenderse el motor. Osea que solo tenga una "oportunidad para encenderlo" todo me funciona, lo unico que no soy capaz de hacer es que no pas nada la segunda vez que pulso el pulsador y las sucesivas..
os pongo el codigo...
const int button1Pin = 2; // pin del pulsador
const int motorPin = 9; // pin del motor
void setup()
{
pinMode(button1Pin, INPUT);
pinMode(motorPin, OUTPUT);
Serial.begin(9600);
}
void loop()
{
int button1State; // variables para que contengan los estados pulsador
Quizás más ortodoxo sería poner una variable de control:
const int button1Pin = 2; // pin del pulsador
const int motorPin = 9; // pin del motor
int pulsado=0; // indica cuántas veces se ha pulsado el botón
void setup()
{
pinMode(button1Pin, INPUT);
pinMode(motorPin, OUTPUT);
Serial.begin(9600);
}
void loop()
{
int button1State; // variables para que contengan los estados pulsador
En este caso, es más sencillo que utilices la opción de "noter", la opción que da "curro92" es totalmente valida, pero para usuarios algo más avanzados, pues tendrías que hacer que el programa se parase en el setup() hasta que alguien pulsase el boton, despues simplemente el programa no haría nada...
Note, entiendo bien el condicional que me pones en el If y veo la sintaxis sin problemas, lo que no entiendo es la función que pones debajo de delay "pulsado++"