Está en la página 1de 3

PRACTICA#2. LABORATORIO DE MICROPROCESADORES.

Proyecto Dispositivo Fase


Conversión
Alarma Pic16F877A Analógica - Digital

Integrantes:

 Valcárcel Amanda, 30683775


 Vera Diego, 27237750

o CONVERSIÓN ANALÓGICO-DIGITAL.LENGUAJE ENSAMBLADOR.


Para realizar dicha conversión debemos tomar en cuenta:

PIC16F877A

Rango de (0-5 v)
Resolución de 10 bits, para lo cual se verán implicados los registros:
ADCON0------------BCO 0 Configuración de entradas analógicas
ADCON1 ----------- BCO 1
ADRESH----------BCO 0 Guarda la conversión de analógico a digital
ADRESL --------- BCO 1
; Configurar oscilador interno a 4 MHz
MOVLW b'00001100'
MOVWF OSCCON

; Configurar PORTA como entrada analógica y PORTB como digital


MOVLW b'00000001'
TRISA = A
MOVLW b'00000000'
TRISB = B

; Configurar conversor ADC


MOVLW b'10000001'
MOVWF ADCON0
MOVLW b'10000000'
MOVWF ADCON1

; Bucle principal
main:
BSF ADCON0, GO ; Iniciar conversión ADC
wait:
BTFSC ADCON0, GO ; Esperar a que termine la conversión
GOTO wait
MOVF ADRESH, 0 ; Leer byte más significativo del resultado ADC
MOVWF CAD ; Almacenar resultado en variable CAD
GOTO main ; Repetir
o CONVERSIÓN ANALÓGICO-DIGITAL.LENGUAJE C.

#include <16f887.h>

#device adc=10

#use delay(clock=4000000)

// Variable to store the result of the ADC conversion

unsigned char CAD;

void main()

TRISA = 0xFF; // Configuramos el puerto A como entrada para la conversión


analógica digital

ADCON0 = 0x01; // Iniciamos la conversión en el canal 0

ADCON1 = 0x80; // Configuramos el conversor analógico a digital

while(1)

GODONE = 1; // Iniciamos la conversión

while(GODONE); // Esperamos a que la conversión termine

CAD = ADRESH; // Guardamos el resultado en el registro CAD

También podría gustarte