Conversión analógico/digital

«Conversión analógico/digital» gy Amoona Ac•Ka6pR 03, 2010 S pagos Práctica «Conversión Analógico/Digital» OBJETIVO Implementar un algoritmo para medición de un vo taje analógico y despliegue de su magnitud en 2 dígitos con indicadores luminosos de 7 segmentos. MATERIAL Y EQUIPO: • PIC16F873 • Fuente de vo taje • Display 7 segmentos • Transistor NPN (222 ors • Resistencias (10,3 C], 1 DESARROLLO Configuración de puertos digitales de salida Configuración de entrada analógica y convertidor AID Configuración de TMRO para interrupción periódica

Almacenamiento del resultado de la conversión A/D Interrupción TMRO Despliegue de unidades o decenas Inicio de conversión AID truncado. Con la conversión justificada a la izquierda y tomando el valor de ADRESH, las conversiones se truncan a 8 bits sin afecta I resolución de salida deseada. CODIGO FUENTE: ;PRACTICA4 LIST P=16F873 #include «Pl 6F873.

INC» COCIENTE EQU 21h DATO_L EQU 22h DATO_D EQU 23h DATO_H EQU 24h DATO EQU 27h ORG 00h GOTO INICIO INICIO BSF STATUS,RPO ;Banco 1 de registros TRISA,O ;RA0 como entrada gcp TRISA,I RA2 como salida 3CF TRISA,2 ;RA2 como salida CLRF TRISC BSF ADCONI ,PCFG3 ;Poner el pin PCFG3a 1 para seleccionar la configuración de control del puerto A,’D ADCON1,PCFG2 ;poner el Pin PCFG2a1 para seleccionar la

Lo sentimos, pero las muestras de ensayos completos están disponibles solo para usuarios registrados

Elija un plan de membresía
configuración de control del puerto A/D ADCONI,PCFGI ;poner el Pin PCFGI a 1 para seleccionar la configuración de control RI_IFS 3CF ADCONI,PCFGO CFGO a O para seleccionar ADCONO,CHSI ;Selección del canal cero para conversión AID del registro ADCONO BCF ADCONO,CHSO ;Selección del canal cero para conversión AID del registro ADCONO BSF ADCONO,ADON operando CALL WRT TABLE escribir la tabla. odulo del convertidor A/D está Llama a la subrutina WRT_TABLE para BSF ;Conversión AID está en progreso, activar p’ empezar la conversión AID CICLO BTFSCADCONO,GO DONE GOTO CICLO MOVF ADRESH,O conversion MOVWF DATO_D ;Respalda en W el resultado de la lo guarda en DATO_D MOVLW 05h CALLDIVISION ‘Llama a la subrutina de división MOVF COCIENTE,O MOVWF DATO D DATO D-W-COCIENTE MOVLW OAh CALL DIVISION ;DATO D/IO MOVWF DATO H MOVF MOVWF DATO L BTFSS PORTAI GOTO UNIDADES BCF PORTA,I Decenas del número a mostrar ;Unidades del número a mostrar esplegar unidades 31_1fS BSF PORTAI GOTO AS DIVISION CLRF COCIENTE RESTA SUBWF DATO BTFSS STATUS,C ,encendido del display ;DATO D W c-l DATO>-W GOTO SALDIV ;salida Si INCF COCIENTE,F ;lncrementa el cociente GOTO RESTA regresa SALDIV ;Compensa el residuo RETURN tremina WRT TABLE acp STATUS,RPO MOVLW 0x30 memoria MOVWF FSR MOVLW OX7E MOVWF INDF INCF FSR MOVLW ox30 MOVLW 0x6D ;manda el apuntador a la posición inicial de RAM ;Carga el valor 1 en W ;Mueve el contenido de W a INDF lncrementa FSR ;Carga el valor 2 en W ;Carga el valor 3 en W 406 S MOVLW 0x4E MOVLW 0x3D MOVLW ox4F MOVLW ox47 ;Carga el valor 13 en W ;Carga el valor 14 en W ;Carga el valor 15 en W ;Carga el valor 16 en W CONVERT ;Rutina para convertir datos BCD a 7 segmentos MOVLW OFh ANDWFDATO,I ->lnstrucción para truncar el valor del dato en A a 4 digitas MOVI_W 0x30 ;Ponle la dirección inicial de la tabla en W MOVWF FSR ;carga la dirección de inicio de la tabla en FSR MOVF DATO,O ADDWFFSR,I suma el valor de DATO a FSR MOVF INDF,O END SÜFS