CONVERSOR ANALÓGICO/DIGITAL COM SAMPLE AND HOLDCONVERSOR ANALÓGICO/DIGITAL COM SAMPLE AND HOLD
CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A
-
Upload
christian-fonseca -
Category
Documents
-
view
127 -
download
6
description
Transcript of CONVERSOR ANALÓGICO DIGITAL CON EL PIC 16F877A
2023
Diego Córdova
Christian Fonseca
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
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
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
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
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
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
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
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
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
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
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
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