Nombre del docente: Eric Gerardo Gómez Jáuregui
Materia: Microcontroladores
REPERTORIO DE FUNCIONES COMPILADOR PIC CCS PROGRAMA BASE #INCLUDE <16F886.H> #USE DELAY(CLOCK=4000000) #FUSES INTRC_IO,NOWDT,NOPUT,NOMCLR,NOPROTE INTRC_IO,NOWDT,NOPUT,NOMCLR,NOPROTECT,NOCPD,NOBROWNOUT CT,NOCPD,NOBROWNOUT #FUSES NOIESO,NOFCMEN,NOLVP,NODEBUG,NOW NOIESO,NOFCMEN,NOLVP,NODEBUG,NOWRT,BORV21 RT,BORV21
MANEJO DE PUERTOS POR RAM
MANEJO DE PUERTOS POR DIRECTIVAS
#BYTE TRISA = 0X85 (
#USE FAST_IO(A)
#BYTE PORTA = 0X05
#USE STANDARD_IO(A)
PUERTO DE ENTRADA
PUERTO DE ENTRADA
TRISA=0XFF;
SET_TRIS_A(0XFF);
LEER PUERTO
LEER PUERTO
X=PORTA;
X=INPUT_A( );
PUERTO DE SALIDA
PUERTO DE SALIDA
TRISA=0X00;
SET_TRIS_A(0X00);
ESCRIBIR EN PUERTO
ESCRIBIR EN PUERTO
PORTA=0X00;
OUTPUT_A(0XFF);
LECTURA EN 1 BIT
LECTURA EN 1 BIT
IF(BIT_TEST(PORTA,0)==0)
IF(INPUT(PIN_A0)==0)
IF(BIT_TEST(PORTA,0)==1)
IF(INPUT(PIN_A0)==1)
ESCRITURA EN 1 BIT
ESCRITURA EN 1 BIT
BIT_CLEAR(PORTA,0);
OUTPUT_LOW(PIN_A0);
BIT_SET(PORTA,0);
OUTPUT_HIGH(PIN_A0);
LCD #INCLUDE DESPUÉS DEL RELOJ LCD_INIT( ); LCD_GOTOXY(1,1); PRINTF(LCD_PUTC,"OCUPADOS = %02U \nDISPONIBLES = %02U",X,Y);
ADC #DEVICE ADC=10 ANTES DEL RELOJ SETUP_ADC(ADC_CLOCK_INTERNAL); SETUP_ADC_PORTS(sAN0|sAN1); SET_ADC_CHANNEL(0); X=READ_ADC( );
EEPROM WRITE_EEPROM(0X00,X); READ_EEPROM (0X00);
COMUNICACIÓN SERIAL #USE RS232(BAUD=9600,XMIT=PIN_C6,RCV=PIN_C7,BITS=8) PUTC(X); #INT_RDA VOID RDA_isr( ) { GETC( ); } ENABLE_INTERRUPTS(INT_RDA); ENABLE_INTERRUPTS(GLOBAL);
0xFC,0x60, 0xDA, 0xF2, 0x66, 0xB6, 0xBE, 0xE2, 0xFE, 0xE6, 0xEE, 0x3E, 0x9C, 0xFC, 0x9E, 0x8E};