Monografias.com > Ingeniería
Descargar Imprimir Comentar Ver trabajos relacionados

Entrada – salida digital con CCS




Enviado por Pablo Turmero



    Monografias.com
    Programación en C para Electrónica.
    Microcontrolador PIC16F876. 1

    Monografias.com
    Características µC RISC. Reloj de hasta
    20Mhz.(CM=1/4fosc) 35 instrucciones de 14 bit. Instrucciones de 1
    CM (excepto saltos) Power On Reset (POR) 8Kx14 bits en memoria
    flash. 368 bytes de RAM. 256 bytes de EEPROM. 22 E/S digital. 14
    interrupciones. Programación serie LVP. 2

    Monografias.com
    Características 3

    Monografias.com
    Periféricos. 3 temporizador /contador T0 = 8bits T1 y T2 =
    16 bits 2 módulos de comparación y captura / PWM.
    Puerto serie síncrono (SSP) con SPI y I2C. USART / SCI. 5
    entradas A/D de 10 bits. Hasta 22 E/S digital. Comparador
    analógico. Perro guardian (WDT) 4

    Monografias.com
    Encapsulado. 5

    Monografias.com
    Diagrama de bloques: 6

    Monografias.com
    Características de los puertos Son bidireccionales. Acceso
    como byte o bit. Lectura del valor del pin. Corriente
    máxima del pin 25mA. Corriente máxima del puerto
    200mA. Después de un reset todas son entradas. 7

    Monografias.com
    Organización de la memoria 8

    Monografias.com
    Programación en C para Electrónica. Entrada/Salida
    digital. 9

    Monografias.com
    Entrada salida digital El PIC 16F876A dispone de 22 lineas de E/S
    digital configurables repartidas en 3 puertos. Puerto A = 6
    lineas (RA0..RA5) Puerto B = 8 lineas (RB0..RB7) Puerto C = 8
    lineas (RC0..RC7) Los puertos son independientes y se puede
    programar cada terminal para que se comporte como entrada o como
    salida. 10

    Monografias.com
    Entrada salida digital La configuración como entrada o
    salida se hace a través del registro TRISx correspondiente
    del banco 1 de la memoria. TRISA=85h (Puerto A) TRISB=86h (Puerto
    B) TRISC=87h (Puerto C) Un valor 0 en los bits de estos registros
    configuran el pin correspondiente del puerto como salida y un 1
    como entrada. 11

    Monografias.com
    Entrada salida digital Para configurar los puertos se utiliza la
    función set_tris_X(valor) Se puede leer la
    configuración de los puertos con la función
    get_tris_X(valor) Ejemplos: set_tris_A (0x3F) /* Puerto A como
    entradas.*/ set_tris_B (0x00) /* Puerto B como salidas.*/
    set_tris_C (0b00001111) /*Pines RB0..RB3 salidas y RB4..RB7
    entradas*/ 12

    Monografias.com
    Entrada salida digital La lectura o escritura de datos en los
    puertos se hace mediante la lectura o escritura en el registro
    del banco 0 asociado a cada puerto. PORTA=05h (Puerto A)
    PORTB=06h (Puerto B) PORTC=07h (Puerto C) La lectura y/o
    escritura se realiza directamente sobre los pines del puerto.
    13

    Monografias.com
    Entrada salida digital CCS tiene funciones predefinidas para el
    uso de los puertos de E/S digital. Las funciones pueden tratar el
    puerto completo o un bit del mismo. Los parámetros de
    estas funciones están definidos en un fichero include
    (p.ej:16F876A.h) con un formato PIN_Xn donde X es el puerto y n
    el bit. 14

    Monografias.com
    Funciones de Salida (bit) output_low(PIN_Xn) //pone a 0.
    output_high(PIN_Xn) //pone a 1. output_bit(PIN_Xn,valor) //pone
    el pin Xn a valor (0 ó 1). output_toggle (PIN_Xn)
    //complementa el valor del pin output_float (PIN_Xn) //Pin como
    entrada (simula d. ab.) 15

    Monografias.com
    Funciones de Entrada (bit) input_state(PIN_Xn) //Lee el valor del
    pin sin cambiar //el sentido del terminal. input(PIN_Xn) //Lee el
    valor del pin. 16

    Monografias.com
    Funciones de E/S (bit) Ejemplos: output_low(PIN_A0);
    output_high(PIN_B1); output_bit(PIN_B3,0); output_toggle
    (PIN_C6); output_float (PIN_A2); valor=input_state (PIN_B7);
    valor=input(PIN_C3); 17

    Monografias.com
    Funciones de E/S (byte) output_X(valor): X= puerto (A,B o C)
    Valor= byte a escribir en el puerto. Escribe valor en X. Ejemplo:
    output_B(0xA5); //PORTB=10100101 input_X(): X= puerto (A,B o C)
    Lee el valor del puerto X. Ejemplo: valor=input_B(); /*guarda en
    valor el contenido del puerto B*/ 18

    Monografias.com
    Entrada salida digital CCS provee directivas y funciones
    predefinidas para el uso de los puertos de E/S digital. Las
    funciones output_X() e input_X() dependen de la directiva de
    configuración que usemos. Directivas: #use fast_io
    (puerto) #use standar_io (puerto) #use fixed_io (puerto) 19

    Monografias.com
    Directivas del preprocesador 20

    Monografias.com
    Directivas de gestión de puertos #use fast_io (puerto) No
    modifica el registro TRIS en lecturas y escrituras. Hay que
    asegurarse de que los pines está configurados
    correctamente. #use standar_io (puerto) Modifica el registro TRIS
    correspondiente en lecturas y escrituras. (Modo por defecto) #use
    fixed_io (puerto) Configura el puerto y no modifica el registro
    TRIS en lecturas y escrituras. 21

    Monografias.com
    Programación en C para Electrónica. Ejemplos
    22

    Monografias.com
    Led intermitente 23

    Monografias.com
    Led intermitente 24

    Monografias.com
    Led intermitente (con funciones) 25

    Monografias.com
    Pulsador 26

    Monografias.com
    Pulsador (con funciones) 27

    Monografias.com
    Cruce semáforos 28

    Monografias.com
    Cruce semáforos 29

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter