TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Hossman0131 en 22 de Junio de 2019, 01:29:28
-
Buenas noches compañeros.
Por favor quien me podrá ayudar,
Quiero activar 20 led con pic donde cada vez q pulse se valla activando uno por uno con un tiempo cada uno de 5 min.
Gracias
-
Si necesitas un tiempo entonces necesitas algo que cuente tiempo, puede ser un timer, puede ser una demora. etc. Supongamos que tenes una demora para hacer mas simple
Lo demas es preguntar por el boton si esta presionado o no (con un if)... esto deberia ser relativamente sencillo, solo necesitas leer una entrada. Pero esperar que el boton se suelte (con un while)..
Finalmente activar el led y desactivar el led viejo.
Repetir hasta cansarse, es decir copiar y pegar lo de arriba y cambiar las salidas de los leds.
Es lo mas sencillo. Ahora queda en vos tratar de hacerlo. Obviamente se puede complicar mas y que sea mas corto... O usar otro dispositivos externos como unos shift-register que harian mucho mas simple todo. Ni siquiera necesitarias el micro...
-
Podes hacerlo de la siguiente manera:
PIC CCS COMPILER:
Solo led uno encendido:
int i;
for(i=0;i<600;i++){
output_high(LED1);
output_low(LED2);
output_low(LED3);
.........................
output_low(LED20);
delay_ms(500);
Solo el segundo led encendido
for(i=0;i<600;i++){
output_low(LED1);
output_high(LED2);
output_low(LED3);
.........................
output_low(LED20);
delay_ms(500);
500*600=300000 mili segundos dentro del for = 5 minutos.