ej_system.c

Ir a la documentación de este archivo.
00001 
00013 #include <pic/p16f877a.h>
00014 #include <system.h>
00015 
00016 int main(void)
00017 {
00018         unsigned char dato=0xF0;
00019         unsigned char res;
00020 
00021         //Puerto B como salida
00022         ASM("BANKSEL TRISB");
00023         ASM("MOVLW  0x00");
00024         ASM("MOVWF  TRISB");
00025 
00026         //0xF0  --> PORTB
00027         ASM("BANKSEL F_REG");//dato se encuentra en el banco de F_REG
00028         ASM("MOVF  %0,W"::"r" (dato));
00029         ASM("BANKSEL PORTB");
00030         ASM("MOVWF  PORTB");
00031 
00032         //PORTB --> res
00033         ASM("BANKSEL PORTB");
00034         ASM("MOVF  PORTB,W");
00035         ASM("BANKSEL F_REG");//res se encuentra en el banco de F_REG
00036         ASM("MOVWF %0":"=v" (res));
00037 
00038         //cuando termines de escribir en asembler
00039         //siempre debes dejarlo en el banco de F_REG,
00040         //de lo contrario el programa falla.
00041 
00042         //Pongo a dormir al micro
00043         sleep();
00044 
00045         return 0;
00046 }
00047 

Generado el Thu Jan 8 00:55:37 2009 para pic-gcc-library por  doxygen 1.5.1