Canales sociales
Nos gusta mucho estar en contacto con nuestros lectores y saber más acerca de sus proyecto e inventos.También puedes sugerir una noticia en el blog

Aunque el codigo no es demasiado limpio, funciona a la perfección, ideal para que los que no tienen mucha experiencia programando, lo comprenda sin problemas, todo muy ordenado y paso a paso, con tan solo 5 pines del MBED, un pulsador y 4 leds, una resistencia de 10k, para tomar una tensión de referencia y que el pulsador funcione correctamente, todo, tal como se muestra en el siguiente esquema:

Tal como se aprecia en el esquema, conectamos consecutivamente los LED's a partir del p5 del MBED y en el ultimo, el p9 la salida del botón.
Lo que he conseguido hacer con el siguiente código, es acelerar la velocidad con que se encienden en cadena los Led's, haciendo un efecto de movimiento, si mantenemos pulsado el botón empiezan a lucir cada vez mas rápido, hasta que se paran y tenemos que reiniciar el MBED.
/****************************
Prueba con MBED y diodos LED
Andoni Diaz 29/01/2011
www.BricoGeek.com
****************************/
#include "mbed.h"
DigitalOut myled(p5);
DigitalOut myled2(p6);
DigitalOut myled3(p7);
DigitalOut myled4(p8);
DigitalIn boton1(p9);
float dormir = 0.509;
int main() {
while(1) {
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
myled = 1;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
myled = 0;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
myled2 = 1;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
myled2 = 0;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
myled3 = 1;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
myled3 = 0;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
myled4 = 1;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
myled4 = 0;
if(dormir == 0) { dormir = 1;}
if(boton1 & dormir != 0.01) {
dormir = (dormir - 0.01);
}
wait(dormir);
}
}
Para el que no sepa como se puede compilar y grabar en nuestro MBED, he redactado el siguiente sumario, con los pasos a seguir hasta hacer funcionar el programa.
En la tienda
Esperamos vuestras dudas, sugerencias y comentarios!
Comentarios:
Enviado el 29/01/2011 (22:52)
Gracias por el post. Tengo ganas de comprarme un Mbed.."es una bestia parda" (aunque de momento, no me puedo quejar de las capacidades del arduino mega!)