sot Electrica y mecénica: 20 Ejemplos précticas con arcino rival bisico, simuados an proteus codigo anc y arduina
30 Ejemplos practicos con arduino nivel basico, simulados en proteus+codigo en c y
arduino
Hola de nuevo
traigo unas practicas con arduino de nivel basico para los que se quieran iniciar en este campo.
todo va simulado en Proteus con su cédigo en c, los archivos .pde de los sketchs y un video
demostrando el funcionamiento de cada ejemplo.
Sin mas empezamos
Ejercicio 1 Blink
re
* Intermitente
* Ejemplo basico con Arduino, Encendido y apagado de un led
* con una cadencia de 1 sg. usando el PIN 13 como salida
* no es necesario usar una resistencia para el led
* la salida 13 de Arduino la lleva incorporada.
* httpvwww.arduino.celen/Tutorial/Blink
"
(Practica de Luisdlahuerta
int ledPin = 13; /f Definicién de la salida en el PIN 13
void setup() /Configuracién
{
pinMode(ledPin, OUTPUT); // designa la salida digital al PIN 13
}
void loop() // bucle de funcionamiento
{
digitalWrite(ledPin, HIGH); I/ activa el LED
delay(1000); // espera 1 seg. (tiempo encendido)
digitalWrite(ledPin, LOW); // desactiva el LED
detay(1000);// espera 1 seg. (tiempo apagado)
}
Simulacién en proteus y cédigo en ¢ pinchando aqui
Ejercicio 2 Blink con Boton
hip ituisdlahuerta. blogspot.com 26/2018107/90-.jemplos-practicas-cor-arduino-nivel ml 8sot Electrica y mecénica: 20 Ejemplos précticas con arcino rival bisico, simuados an proteus codigo anc y arduina
blink con botén
11Practica de Luisdlahuerta
int ledPin=13; /Felijo el pin13 para el led
int inPin=5; JV elijo el pin d5 para entrada del botén
int val-0; Jideclaro la variable para leer el estado del botén
void setup() {
pinMode(ledPin, OUTPUT); //dectaro el led como salida
pinMode(inPin,INPUT); _//declaro el pin del boton como entrada
}
void loop() {
val=digitalRead(inPin); //Lee el valor de entrada del botén
if(val=
HIGH){ MChequea si el valor leido en el botén es
Ialto"1"(boton presionado)
digitalWrite(ledPin, LOW); l/pone el led en off
Jelsef
digitalWrite(ledPin, LOW); /apaga el led
delay(100); Iretardo 100ms
digitalWrite(ledPin, HIGH);//enciende el led
delay(100); Iretardo 100ms
}
}
hip ituisdlahuerta. blogspot.com 26/2018107/90-jemplos-practicas-cor-arduino-nivel ml 218aor Electrica y mecénica: 20 Ejemplos préticas con arcino nivel bsico,simUlados an proleuscocigo enc y arcing
Simulacién en proteus y oédigo en c pinchando aqui
Ejercicio 3 Encendido y apagado de 3 leds
11Encendido y apagado de 3 led
J/Practica de Luisdlahuerta
11Defino las salidas de los leds
void setup(){ _/Iconfiguro las salidas para los leds
pinMode(ledPint, OUTPUT); idefinidos como salidas
pinMode(ledPin2,OUTPUT);
pinMode(ledPin3, OUTPUT);
digitalWrite(ledPin1, LOW)y/Apago los leds
digitalWrite(ledPin2,LOW);
digitalWrite(ledPin3, LOW);
}
void loop() { IBucle de funcionamiento
digitalWrite(ledPin1, HIGH);//Enciende y apago los leds cada 100ms
delay(100);
digitalWrite(ledPin1,LOW);
delay(100);
digitalWrite(ledPin2,HIGH);//Enciende y apago los leds cada 100ms
delay(100);
digitalWrite(ledPin2,LOW);
delay(100);
digitalWrite(ledPin3, HIGH);//Enciende y apago los leds cada 100ms
delay(100);
digitalWrite(ledPin3, LOW);
delay(100);
}
hip ituisdlahuerta.blogspt.com 26/2018107/90-.jemplos-practicas-cor-arduino-nivel ml
a6sot Electrica y mecénica: 20 Ejemplos précticas con arcino rival bisico, simuados an proteus codigo anc y arduina
Simulacién en proteus y cédigo en c pinchando aqui
Ejercicio 4 Lectura del estado de un botén
T= 43 :
a
/ILectura del estado de un botén
1! detecta si el boton se esta pulsando o no y enciende un led
11Practica de Luisdlahuerta
int ledPin=13; //Pin del led
int inPin=10; //Pin del boton
int value=0; //establezco el valor del pulsador en cero
void setup() {
pinMode(ledPin, OUTPUT); /lestablezco el pin del led como salida
pinMode(inPin,INPUT); //establezco el pin del boton como entrada digital
}
void loop() {
value = digitalRead(inPin); /lee el valor del botén en la entrada digital
digitalWrite(ledPin, value);
}
hip ituisdlahuerta. blogspot.com 26/2018107/90-.jemplos-practicas-cor-arduino-nivel ml a8aor Electrica y mecénica: 20 Ejemplos préticas con arcino nivel bsico,simUlados an proleuscocigo enc y arcing
Simulacién en proteus y cédigo en ¢ pinchando aqui
Ejercicio 5 Lectura de la entrada analégica de un potenciometro
f
IIpotenciométro lectura de sefial analégica
Jenciende y apaga un LED conectado al pin digital #13;
JI La cantidad de tiempo que el LED parpadeara depende del
Jivalor obtenido mediante analogRead(). En este caso al pin AO
IiPréctica de Luisdlahuerta
int potPin=0; 1/Defino el pin AO como entrada analigica para el potenciémetro
int ledPin=13; Iidefino el pin D13 para el led indicador
int val=0; IIvariable para almacenar la lectura del potenciémetro
void setup() {
pinMode(ledPin, OUTPUT); — //Declaro el led como salida
}
void loop() {
val=analogRead(potPin); _//Lee el valor del potenciémetro
digitalWrite(ledPin, HIGH); //Enciende el led
delay(val); !Detiene el programa por un tiempo igual a la lectura del potenciémetro
digitalWrite(ledPin LOW); //Apaga el led
delay(val); !Detiene el programa por un tiempo igual a la lectura del potenciémetro
hip ituisdlahuerta. blogspot.com 26/2018107/90-jemplos-practicas-cor-arduino-nivel ml 18sot Electrica y mecénica: 20 Ejemplos précticas con arcino rival bisico, simuados an proteus codigo anc y arduina
Simulacién en proteus y cédigo en ¢ pinchando aqui
Ejercicio 6 El coche fantastico 1
=
EB s=
+
"EI coche fantastico 1
7
JiPréctica de Luisdlahuerta
int pin2 = 2; // PIN-es de los LED
int pins = 3;
int pind
int pint
int timer = 100; // Temporizador
void setup(){
pinMode(pin2, OUTPUT); i! Configuracién de los PIN-es como salida
pinMode(pin3, OUTPUT);
pinMode(pin4, OUTPUT);
pinMode(pin5, OUTPUT);
pinMode(pin6, OUTPUT);
pinMode(pin7, OUTPUT);
hip ituisdlahuerta.blogspt.com 26/2018107/90-.jemplos-practicas-cor-arduino-nivel ml aneswveo%7 Eectéxica y mecdnic: 30 Fjemplospréticos con ardiro nivel bésico,simlados en proteus ‘codigo enc arduino
}
void loop() {
digitalWrite(pin2, HIGH); // Enciende y apaga secuencialmente LED-s
delay(timer);
digitalWrite(pin2, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);
digitalWrite(pins, HIGH);
delay(timer);
digitalWrite(pins, LOW);
delay(timer);
digitalWrite(pin6, HIGH);
delay(timer);
digitalWrite(piné, LOW);
delay(timer);
digitalWrite(pin7, HIGH);
delay(timer);
digitalWrite(pin7, LOW);
delay(timer);
digitalWrite(piné, HIGH);
delay(timer);
digitalWrite(piné, LOW);
delay(timer):
digitalWrite(pins, HIGH);
delay(timer);
it
);
ic
digitalWrite(pins, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW):
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
}
hip ituisdlahuerta. blogspot.com 26/2018107/90-.jemplos-practicas-cor-arduino-nivel ml 16sot Electrica y mecénica: 20 Ejemplos précticas con arcino rival bisico, simuados an proteus codigo anc y arduina
Simulacién en proteus y oédigo en ¢ pinchando aqui
Ejercicio 7 coche fantastico 2 con ciclo for
a ss
Jfel coche fantastico 2 reduciendo las lineas de codigo con un ciclo FOR
J!Practica de Luisdlahuerta
int pinArray[=(2,3.4,5.6.7); _I/se define el array de pines, y ahorramos codigo
int count= Ivariable contador
int timer=100; /Memporizador con un valor de 100ms
void setup() {
for(count=0;count<6;count++)( __//Sentencia For cuenta parriba
pinMode(pinArray[count], OUTPUT); _/Iconfiguramos todos los pines de los leds como salida
}
}
void loop() {
for(count=0;count<6;count++)( _//recorrido de ida, cuenta parriba con For
digitalWrite(pinArray{count], HIGH); //Ponemos los led en High, alto
delay(timer);
digitalWrite(pinArray{count], LOW); /Apagamos los leds
delay(timer):
}
hip ituisdlahuerta. blogspot.com 26/2018107/90-jemplos-practicas-cor-arduino-nivel ml
aneEectéxica y mecdnia: 30 jemplosprticos con ard nivel bisico, simulados en proleus+cakgo enc arbino
for(count=5;count>=0;count--){__IIrecorrido de vuelta, pabajo los leds con for
digitalWrite(pinArray{count], HIGH); //Encendemos los leds
delay(timer);
digitalWrite(pinArray{count], LOW); //Apagamos los leds
delay(timer):
}
}
sot
Simulacién en proteus y cédigo en ¢ pnchando aqui
8 coche fantastico 3 efecto visual
Ejerci
hip ituisdlahuerta.blogspt.com 26/2018107/90-.jemplos-practicas-cor-arduino-nivel ml a8aor Electrica y mecénica: 20 Ejemplos préticas con arcino nivel bsico,simUlados an proleuscocigo enc y arcing
JIEI coche fantastico 3
int pinArray[]=(2,3,4,5,6,7); __Ipines del array
int count WContador
int timer=30; Itemporizador
void setup(){
for(count=0;count<6;count++){ _//Incremeto
pinMode(pinArray{count], OUTPUT); //Configuramos todos los pines de una vez
}
}
void loop(){ Moucle
for(count=0;count<5;count++){__/Jenciende los leds creando una estela visual
digitalWrite(pinArray{count], HIGH);
delay(timer);
digitalWrite(pinArray{count+ 1], HIGH);
delay(timer);
digitalWrite(pinArray[count], LOW);
delay(timer*2);
}
for(count=5;count>0;count-){
digitalWrite(pinArray{count], HIGH);
delay(timer);
digitalWrite(pinArray[count-1], HIGH);
delay(timer);
digitalWrite(pinArray{count],LOW);
delay(timer*2);
Simulacién en proteus y cédigo en ¢pinchando aqui
hip ituisdlahuerta. blogspot.com 26/2018107/90-.jemplos-practicas-cor-arduino-nivel ml
s018swt? Electrica y mecdrica 20 Ejerplo préctcos con arco rival sco, simula an revs codigo en cy arcina
Ejercicio 9 Estrella fugaz
W/Estrella fugaz, variante del coche fantastico
11Practica de Luisdlahuerta
int pinArray[]=(2,3,4,5.6,7,8,9,10,11,12}; /declaracion de pines mediante un array
int controlLed= 13; IlLed de control
int waitNextLed=100; Itiempo antes de encender el siquiente led
INUmero de les que permanecen encendidos antes de empezar a apagarlos para formar la cola
int tailLength=4; tiNumero de leds conectados(tamario del array)
int ineSize=11;
void setup(){
inti;
pinMode(controlLed, OUTPUT); eonfiguramos los pines como salida digital
for(i=0;i 0)
tailCounter—~
}
for (i=(lineSize-taill ength); i