+ All Categories
Home > Documents > Modulos en c

Modulos en c

Date post: 06-Nov-2015
Category:
Upload: akiles-vailaba
View: 248 times
Download: 1 times
Share this document with a friend
Popular Tags:
15
INTERRUPCIONES ADC COMUNICACIÓN SERIAL EN C
Transcript
  • INTERRUPCIONES

    ADC

    COMUNICACIN

    SERIAL

    EN

    C

  • INTERRUPCIONES FUNCIONES: ENABLE_INTERRUPTS(), DISABLE_INTERRUPTS(), CLEAR_INTERRUPT(), INTERRUPT_ACTIVE(), EXT_INT_EDGE() Constants used in EXT_INT_EDGE() are: #define L_TO_H 0x40 #define H_TO_L 0

    DIRECTIVAS

  • INTERRUPCIONES

    Funciones: enable_interrupts(nivel); disable_interrupts(nivel);

    GLOBAL 0xF2C0 INT_RTCC 0x00F220 INT_TIMER0 0x00F220 INT_TIMER1 0x009D01 INT_TIMER2 0x009D02 INT_TIMER3 0x00A002 INT_EXT_L2H 0x5000F210 INT_EXT_H2L 0x6000F210 INT_EXT 0x00F210 INT_EXT1_L2H 0x5001F008 INT_EXT1_H2L 0x6001F008 INT_EXT1 0x00F008 INT_EXT2_L2H 0x5002F010 INT_EXT2_H2L 0x6002F010 INT_EXT2 0x00F010 INT_RB 0x00FFF208 INT_AD 0x009D40 INT_RDA 0x009D20 INT_TBE 0x009D10 INT_SSP 0x009D08 INT_CCP1 0x009D04 INT_CCP2 0x00A001 INT_BUSCOL 0x00A008 INT_LOWVOLT 0x00A004 INT_COMP 0x00A040 INT_EEPROM 0x00A010 INT_OSCF 0x00A080 INT_SPP 0x009D80 INT_USB 0x00A020

    niv

    el

  • ADC

    Function: SETUP_ADC(MODO);

    ADC_OFF 0 // ADC Off ADC_CLOCK_DIV_2 0x100 ADC_CLOCK_DIV_4 0x04 ADC_CLOCK_DIV_8 0x01 ADC_CLOCK_DIV_16 0x05 ADC_CLOCK_DIV_32 0x02 ADC_CLOCK_DIV_64 0x06 ADC_CLOCK_INTERNAL 0x07 // Internal 2-6us

  • ADC SETUP_ADC_PORTS(VALOR);

    #define NO_ANALOGS 0x0F // None #define ALL_ANALOG 0x00 // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3 B1 B4 B0 #define AN0_TO_AN11 0x03 // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3 B1 B4 #define AN0_TO_AN10 0x04 // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3 B1 #define AN0_TO_AN9 0x05 // A0 A1 A2 A3 A5 E0 E1 E2 B2 B3 #define AN0_TO_AN8 0x06 // A0 A1 A2 A3 A5 E0 E1 E2 B2 #define AN0_TO_AN7 0x07 // A0 A1 A2 A3 A5 E0 E1 E2 #define AN0_TO_AN6 0x08 // A0 A1 A2 A3 A5 E0 E1 #define AN0_TO_AN5 0x09 // A0 A1 A2 A3 A5 E0 #define AN0_TO_AN4 0x0A // A0 A1 A2 A3 A5 #define AN0_TO_AN3 0x0B // A0 A1 A2 A3 #define AN0_TO_AN2 0x0C // A0 A1 A2 #define AN0_TO_AN1 0x0D // A0 A1 #define AN0 0x0E // A0 #define AN0_TO_AN11_ANALOG 0x03 //!old only provided for compatibility #define AN0_TO_AN10_ANALOG 0x04 //!old only provided for compatibility #define AN0_TO_AN9_ANALOG 0x05 //!old only provided for compatibility #define AN0_TO_AN8_ANALOG 0x06 //!old only provided for compatibility #define AN0_TO_AN7_ANALOG 0x07 //!old only provided for compatibility #define AN0_TO_AN6_ANALOG 0x08 //!old only provided for compatibility #define AN0_TO_AN5_ANALOG 0x09 //!old only provided for compatibility #define AN0_TO_AN4_ANALOG 0x0A //!old only provided for compatibility #define AN0_TO_AN3_ANALOG 0x0B //!old only provided for compatibility #define AN0_TO_AN2_ANALOG 0x0C //!old only provided for compatibility #define AN0_TO_AN1_ANALOG 0x0D //!old only provided for compatibility #define AN0_ANALOG 0x0E //!old only provided for compatibility

  • ADC

    // The following may be OR'ed in with the above using | #define VSS_VDD 0x00 // Range 0-Vdd #define VREF_VREF 0x30 // Range VrefL-VrefH #define VREF_VDD 0x20 // Range VrefL-Vdd #define VSS_VREF 0x10 // Range 0-VrefH

    SETUP_ADC_PORTS( VALOR);

  • ADC

    SET_ADC_CHANNEL(), READ_ADC() #define ADC_START_AND_READ 7 // This is the default if nothing is specified

    #define ADC_START_ONLY 1 #define ADC_READ_ONLY 6

    #device ADC=8

    DIRECTIVA

  • COMUNICACIN SERIAL

    Configuracin genrica del USART: #use rs232(opciones)

  • COMUNICACIN SERIAL

  • COMUNICACIN SERIAL PUTC() PUTCHAR() Estas funciones envan un carcter a la patilla XMIT del dispositivo RS232. Es preciso utilizar la directiva #USE RS232 antes de la llamada a esta funcin para que el compilador pueda determinar la velocidad de transmisin y la patilla utilizada. La directiva #USE RS232 permanece efectiva hasta que se encuentre otra que anule la

    PUTS(string) Esta funcin enva cada carcter de string a la patilla XMIT del dispositivo RS232. Una vez concluido el envo de todos los caracteres la funcin enva un retorno de carro CR o RETURN (ASCII 13) y un avance de lnea LF o LINE-FEED (ASCII 10). Ejemplo: puts( " ---------- " ); puts( " | HOLA |" ); puts( " ---------- " );

  • COMUNICACIN SERIAL PRINTF([function], string, [values]) La funcin de impresin formateada PRINTF saca una cadena de caracteres al estndar serie RS-232 o a una funcin especificada. El formato est relacionado con el argumento que ponemos dentro de la cadena (string). Cuando se usan variables, string debe ser una constante. El carcter % se pone dentro de string para indicar un valor variable, seguido de uno o ms caracteres que dan formato al tipo de informacin a representar. Si ponemos %% obtenemos a la salida un solo %. El formato tiene la forma genrica %wt, donde w es optativo y puede ser 1,2,...,9. Esto es para especificar cuntos carcteres son representados; si elegimos el formato 01,...,09 indicamos ceros a la izquierda, o tambin 1.1 a 9.9 para representacin en punto flotante. t es el tipo de formato y puede ser uno de los siguientes:

  • COMUNICACIN SERIAL

    C Carcter U Entero sin signo x Entero en Hex (en minsculas) X Entero en Hex (en maysculas) D Entero con signo %e Real en formato exponencial(notacin cientfica) %f Real (Float) Lx Entero largo en Hex (en minsculas) LX Entero largo en Hex (en maysculas) Lu Decimal largo sin signo Ld Decimal largo con signo % Simplemente un %

  • COMUNICACIN SERIAL

    KBHIT() Esta funcin devuelve TRUE si el bit que se est enviando al pin RCV de un dispositivo RS232, es el bit de inicio de un carcter. Es preciso utilizar la directiva #USE RS232 antes de la llamada a esta funcin para que el compilador pueda determinar la velocidad en baudios y la patilla utilizada. La directiva #USE RS232 permanece efectiva hasta que se encuentre otra que anule la anterior.

    RECEPCION DE DATOS

    c = GETC() c = GETCH() c = GETCHAR() Estas funciones esperan un carcter por la patilla RCV del dispositivo RS232 y retorna el carcter recibido. Es preciso utilizar la directiva #USE RS232 antes de la llamada a esta funcin para que el compilador pueda determinar la velocidad de transmisin y la patilla utilizada. La directiva #USE RS232 permanece efectiva hasta que se encuentre otra que anule la anterior.


Recommended