Pic 16f628 + leds = encendio random con interalo de tiempo 10 seg

Buenas noches, os traigo una duda tengo un 16f628 y debo generar un encendido aleatorio son 3 leds en total se, colocar les secuencias y eso pero hacer que el encendido sea random con X tiempo (5-10 seg), no lo se hacer, espero alguien pueda resolver mi duda de ante mano gracias por leer :) ...
 
ok que pena, como comente se como trabajar con secuencia mas no como hacer lo random este es e codigo que uso para darle una secuencia.

//////////////////////
#include <16f877a.h>
#fuses hs,nowdt
#use delay(clock=20M)


void main()
{
set_tris_b(0b00000000); // Todos los pines del puerto B son salidas
output_b(0b00000000); // Todos los pines en cero

while(true)
{
output_b(0b00000001);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);
output_b(0b00000011);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);
output_b(0b00000111);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);
output_b(0b00001111);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);
output_b(0b00011111);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);
output_b(0b00111111);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);
output_b(0b01111111);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);
output_b(0b11111111);
delay_ms(400);
output_b(0b00000000);
delay_ms(400);

}
}
///////////////
 

Arriba