//hello word con pic CSS parpadea un led en el portb.0
//licencia open source
//codigo :Oswaldo Sanchez
//para: ALUX 1.1 CICY 2011 "Departamento de instrumentación y control"
#INCLUDE <18f2550.h>//seleccionamos pic a usar(18f2455/18f4550/18f2550)
#fusesHSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL2,CPUDIV1,VREGE,
MCLR,NOPBADEN//ojo los fuses copiarlos en solo una linea
// declaración de fuses
#use delay(clock=48000000) //declaramos reloj
#define LOADER_END 0x7FF
#define LOADER_SIZE 0x6FF
#build(reset=LOADER_END+1, interrupt=LOADER_END+9)
#org 0, LOADER_END {}
// termina el mapeo de la memoria
#use fast_io(b) //declaramos la librería para la configuración del registro tris
void main(){ //bucle principal
set_tris_b(0b00000000); //configuramos registro tris todos salidas
output_b(0b00000000); //apago el portb
while(true){ //bucle infinito
output_toggle(pin_b0); //cambia de estado el portb.0
delay_ms(500); //pausa de 500 ms
}
}
//Secuencia en el portB con pic CSS
//licencia open source
//codigo :Oswaldo Sanchez
//para: ALUX 1.1 CICY 2011 "Departamento de instrumentación y control"
#INCLUDE <18f2550.h> //SELECCIONAMOS EL PIC A UTILISAR
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL2,CPUDIV1,VREGEN,MCLR,NOPBADEN
// DECLARACION DE FUSES
#use delay(clock=48000000) //DECLARAMOS EL RELOJ
#define LOADER_END 0x7FF
#define LOADER_SIZE 0x6FF
#build(reset=LOADER_END+1, interrupt=LOADER_END+9)
#org 0, LOADER_END {}
// TERMINA EL REMAPEO DE VECTORES DE MEMORIA
//(para bootloader) si no usa bootloader borre esta parte
#use fast_io(b) //DECLARAMOS LA LIBRERIA PARA CONFIGURAR EL REGISTRO TRISB
void main(){ //BUCLE PRINCIPAL
long j=1; //DECLARO VARIABLE DE TAMAÑO LONGset_tris_b(0); //CONFIGURO REGISTRO TRIS TODOS SALIDAS
for(;;){ //BUCLE INFINITO
while (j<255){ //MIENTRAS EL J SEA MENOR QUE CERO
output_b(j); //IMPRIME J EN EL PORTB
delay_ms(200); // PAUSA DE 200 Ms
j*=2; //j=j MULTIPLICADO POR 2
}
J=128;
while (j>2){ // MIENTRAS QUE J SEA MAYOR QUE DOS
j/=2; //DIVIDO J ENTRE DOS
output_b(j); // IMPRIMO J EN PORTB
delay_ms(200); //PAUSA 200 Ms
}
J=1;
}
}
me gusto gracias
ResponderEliminar