Me encuentro con problemas al encender varios LEDs simultáneamente en un microcontrolador 18f4550 bajo el mismo "while(1)". Soy nuevo en la programación. [C18 compilador con Mplab ide.]
Pude alternar el parpadeo de los led RB0 y RB1 con un trozo de código encontrado en la web poniendo los pines RB en salida y luego haciéndolos altos.
#include<pic18f4550>
// Chip config and setting for make RB pins output
void main(void) // Main block
{
While(1)
{
blink-RB-two-led-alternatively-forever(); // a function prototype for blinking RB0 and RB1 Alternatively.
} // loop forever
}
Eso funciona bien sin ningún problema. Puedo hacer lo mismo con los pines de PortD también, sin problemas.
Pero quiero que RD0 y RD1 parpadeen alternativamente , Simultáneamente con RB0-RB1.
Significa que cuando enciendo el pic18f4550 deseo que ambos RB0-RB1 y RD0-RD1 parpadeen alternativamente y simultáneamente.
He probado esto. Pero no funcionó.
void main(void) // Main block
{
While(1)
{
blink-RB-two-led-alternatively-forever(); // a function prototype for blinking RB0 and RB1 Alternatively.
blink2-RD-two-led-alternatively-forever(); // a function prototype for blinking RD0 and RD1 Alternatively.
}
}
El bucle entra en " blink-RB-two-led-alternatively-forever(); " y sigue parpadeando los pines RB0 y RB1 y nunca llega al segundo prototipo de función.
Si cambio el Orden Entonces RD0 -RD1 comienza a parpadear alternativamente Pero nunca llega a PortB.
Por favor, sugiérame una solución. Cómo hacer que ambas cosas funcionen simultáneamente.
Muchas gracias de antemano.