CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

15
202

description

PRÁCTICA DE MICROCONTROLADORES ACERCA DEL CONVERSOR ANALÓGICO- DIGITAL MEDIANTE EL PIC 16F877A

Transcript of CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Page 1: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

2023

Diego Córdova

Christian Fonseca

Page 2: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Contenido

TEMA...............................................................................................................................5

OBJETIVOS.....................................................................................................................5

MATERIALES..................................................................................................................5

MARCO TEÓRICO..........................................................................................................5

PIC16F877A.................................................................................................................6

Diagrama de Pines......................................................................................................7

Manejo de la LCD........................................................................................................9

CONVERSOR ANALÓGICO DIGITAL........................................................................9

ADC-PIC16F877A..................................................................................................10

DESARROLLO..............................................................................................................11

CONCLUSIONES..........................................................................................................13

RECOMENDACIONES.................................................................................................14

BIBLIOGRAFÍA..............................................................................................................14

2

Page 3: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Índice de Ilustraciones

Ilustración 1 PIC16F877A................................................................................................5

Ilustración 2 Diagrama de pines del PIC16F877A...........................................................6

Ilustración 3 Función de cada pin de la LCD...................................................................8

Ilustración 4 Programación en MicroCode para definir ADC y LCD..............................10

Ilustración 5 Programación en MicroCode....................................................................11

Ilustración 6 Implementación en ISIS Proteus 7 del hardware......................................11

Ilustración 7 Implementación del circuito físico.............................................................12

Ilustración 8 Visualización del Voltaje del Potenciómetro y de la temperatura del cautín.

.......................................................................................................................................12

3

Page 4: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

TEMA

CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

OBJETIVOS

o Realizar la programación necesaria a través de MicroCode Studio, para

emplear los conversores ADC del PIC 16F877A, con la finalidad de visualizar la

lectura de un potenciómetro y un sensor de temperatura LM35, tanto su parte

entera como su parte decimal.

o Implementar el circuito necesario para la visualización de la lectura del

potenciómetro y del sensor LM35, mediante el simulador de Proteus para la

visualización de los datos.

o Implementar el circuito físico y comprobar el adecuado funcionamiento del

mismo.

MATERIALES

1. DISPLAY LCD 2x16

2. Resistencias

3. Cristal de 4MHz

4. Capacitores 22pF

5. Cables de conexión.

6. Fuente de 5V.

7. Potenciómetro 1k.

8. LM35.

9. PIC 16F877A.

MARCO TEÓRICO

PIC16F877A

Este microcontrolador es fabricado por MicroChip familia a la cual se le denomina PIC.

El modelo 16F877 posee varias características que hacen a este microcontrolador un

dispositivo muy versátil, eficiente y práctico.

Algunas de estas características se muestran a continuación:

Soporta modo de comunicación serial, posee dos pines para ello.

4

Page 5: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Amplia memoria para datos y programa.

Memoria reprogramable: La memoria en este PIC es la que se

denomina FLASH; este tipo de memoria se puede borrar electrónicamente

(esto corresponde a la "F" en el modelo).

Set de instrucciones reducido (tipo RISC), pero con las instrucciones

necesarias para facilitar su manejo.

PIC utiliza un procesador con arquitectura Harvard, consiguiendo mayor rendimiento

en el procesamiento de las instrucciones, esta arquitectura a diferencia de la Von

Neumann, utiliza dos bloques de memorias independientes, una contiene instrucciones

y la otra sólo datos, cada una con su respectivo sistema de buses de acceso, 8 líneas

para los datos y 14 líneas para las instrucciones, con lo que es posible realizar

operaciones de acceso lectura o escritura simultáneamente en las 2 memorias, a esto

se conoce como paralelismo.

Ilustración 1 PIC16F877A

5

Page 6: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Diagrama de Pines

Ilustración 2 Diagrama de pines del PIC16F877A

Descripción de los puertos:

Puerto A:

Puerto de e/s de 6 pines

RA0 è RA0 y AN0

RA1 è RA1 y AN1

RA2 è RA2, AN2 y Vref-

RA3 è RA3, AN3 y Vref+

RA4 è RA4 (Salida en colector abierto) y T0CKI(Entrada de reloj del módulo

Timer0)

RA5 è RA5, AN4 y SS (Selección esclavo para el puerto serie síncrono)

Puerto B:

Puerto e/s 8 pines

Resistencias pull-up programables

RB0 è Interrupción externa

RB4-7 è Interrupción por cambio de flanco

6

Page 7: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

RB5-RB7 y RB3 è programación y debugger in circuit

Puerto C:

Puerto e/s de 8 pines

RC0 è RC0, T1OSO (Timer1 salida oscilador) y T1CKI (Entrada de reloj del

módulo Timer1).

RC1-RC2 è PWM/COMP/CAPT

RC1 è T1OSI (entrada osc timer1)

RC3-4 è IIC

RC3-5 è SPI

RC6-7 è USART

Puerto D:

Puerto e/s de 8 pines

Bus de datos en PPS (Puerto paralelo esclavo)

Puerto E:

Puerto de e/s de 3 pines

RE0 è RE0 y AN5 y Read de PPS

RE1 è RE1 y AN6 y Write de PPS

RE2 è RE2 y AN7 y CS de PPS

Dispositivos periféricos:

Timer0: Temporizador-contador de 8 bits con preescaler de 8 bits

Timer1: Temporizador-contador de 16 bits con preescaler que puede

incrementarse en modo sleep de forma externa por un cristal/clock.

Timer2: Temporizador-contador de 8 bits con preescaler y postescaler.

Dos módulos de Captura, Comparación, PWM (Modulación de Anchura de

Impulsos).

7

Page 8: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Conversor A/D de 1 0 bits.

Puerto Serie Síncrono Master (MSSP) con SPI e I2C (Master/Slave).

USART/SCI (Universal Syncheronus Asynchronous Receiver Transmitter) con

9 bit.

Puerta Paralela Esclava (PSP) solo en encapsulados con 40 pines

Manejo de la LCD

Ilustración 3 Función de cada pin de la LCD

LA DECLARACIÓN LCDOUT. Sirve para mostrar items en una pantalla de cristal

líquido, se utiliza escribiendo: LCDOUT, luego escribiendo $FE, y seguido por el

comando a utilizar, el siguiente cuadro muestra los comandos más utilizados:

Tabla 1 Comandos más utilizados para manejar la LCD

8

Page 9: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

CONVERSOR ANALÓGICO DIGITAL

La conversión analógica digital, es la que nos permite transformar una señal analógica

(un voltaje), en una representación digital (números binarios) del valor correspondiente

a la tensión en el pin de entrada para poder trabajar con ella. Se utiliza en infinidad

de aplicaciones, lo más común es usarla para leer señales provenientes de algún

sensor (temperatura, humedad, acelerómetros, etc.).

ADC-PIC16F877A

Distribución de pines

– 8 canales ADC:

• RA0/AN0 = 2

• RA1/AN1 = 3

• RA2/AN2 = 4

• RA3/AN3 = 5

• RA5/AN4 = 7

• RE0/AN5 = 8

• RE1/AN6 = 9

• RE2/AN7 = 10

– Tensión de referencia:

• Vref- = RA2

• Vref+ = RA3

9

Page 10: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Tabla 2 Tabla de configuración para el registro ADCON1

DESARROLLO

1. Realizar el código necesario para poder activar los conversores ADC del

PIC16F877A, en donde se utilizará la instrucción ADCON1, pero primero es

necesario definir el conversor ADC.

Ilustración 4 Programación en MicroCode para definir ADC y LCD

2. Realizar el código para emplear la lectura del LM35 y del potenciómetro,

convertirla y poder visualizarla en la LCD.

10

Page 11: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Ilustración 5 Programación en MicroCode

3. Cargar el archivo .HEX a través de ISIS Proteus 7 en el circuito armado para

luego proceder a su simulación.

Ilustración 6 Implementación en ISIS Proteus 7 del hardware

4. Programar el circuito en el PIC 16F877A con el código realizado.

5. Implementar el circuito en la Protoboard y verificar su correcto funcionamiento

mediante la visualización del voltaje del potenciómetro y la temperatura

sensada por el LM35.

11

Page 12: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

Ilustración 7 Implementación del circuito físico

Ilustración 8 Visualización del Voltaje del Potenciómetro y de la temperatura del cautín.

CONCLUSIONES

o Se ha podido utilizar de correcta manera el conversor analógico digital

incorporado en el PIC16F877A para la práctica correspondiente de manera que

se opte por una estrategia elaborada para un sinfín de aplicaciones diferentes.

o Se pudo asimilar los conocimientos concernientes para la utilización de un

nuevo PIC que es el 16F877A a partir de los fundamentos analizados con el

12

Page 13: CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A

Micro-procesdores y Micro-controladores_____________________________________________________________________

anterior microcontrolador PIC16F628A y así aprovechar la ventaja del uso de

mayor número de puertos y herramientas incorporadas más complejas.

o Se pudo estructurar la lectura analógica de cierto voltaje variable que se regula

con un potenciómetro para parámetros de entrada y así representarlos en una

LCD como valores digitales simulando un tipo flotante con su parte entera y

decimal.

o Se pudo a la par estructurar por medio de la misma técnica, la aplicación en la

cual cierto valor analógico que recepta un LM35 correspondiente a la

temperatura del medio, puede ser impreso en la misma LCD también con su

parte entera y decimal, simulando un termómetro digital.

RECOMENDACIONES

o Borrar el código anterior del PIC antes de cargar un nuevo programa porque se

pueden sobrescribir los datos.

o Cuando se va a grabar el programa en el PIC tener en cuenta que se debe

dejar libre la primera fila y colocar el PIC a partir de la segunda.

o Se recomienda colocar las definiciones respectivas en la programación para

activar las funciones de conversor análogo-digital dentro del PIC.

o Es recomendable tener muy en cuenta la configuración respectiva al momento

de quemar el PIC, para que de esta manera cada pin del microcontrolador

ejecute la debida función.

o Es recomendable utilizar un cautín para simular los cambios de temperatura

que afectarán al LM35 y así se visualizará de mejor manera la función de un

termómetro digital.

BIBLIOGRAFÍA

Reyes, C. A. (2008). Microcontroladores PIC Programación en Basic. Quito: RISPERGRAF.

13