VOLTIMETRO 0-50V

download VOLTIMETRO 0-50V

If you can't read please download the document

description

V0LTIMETRO DE 0 A 50 V CON PIC

Transcript of VOLTIMETRO 0-50V

BuenasLo prometidoEste es el programa de un voltimetro de 0 a 50 volts.-Se ensayo linealidad con un tester fluke 189 y la mantiene.-Las conexiones son las siguientes:entrada de tension: a travs de un divisor resistivo formado poruna resistensia de 47k en serie con un preset de 10k,del puntomedio del preset se conecta a RA0 poniendo en serie una resistenciade 1k como proteccion de la entrada y un capacitor de 1micro enparalelo a masa como filtro de entrada.-A puerto B van conectados 3 displays de 7segmentos catodo comuncoincidiendo los segmentos de a-f con b0 a b6 (conectar en seriecon los segmentos resistencias de 470ohm)Cada catodo comun va conectado al colector de transistores 2a238cuyos emisores van a masa,las bases de los transistores seconectan a travs de resistencias de 10k al portc,0 para eldigito menos significativo (decimas de volt),portc.1 para unidadesde volt y portc,2 para decenas de volt.-Espero que alguien dibuje el esquematico y/o el pcb.-SaludosJorge"****************************************************************"* Name : voltim_876.BAS *"* Author : Jorge ansuini *"* Notice : Copyright (c) 2004 jorge ansuini *"* : All Rights Reserved *"* Date : 27/02/2004 *"* Version : 1.0 *"* Notes : voltimetro com display multiplexado y 16f876 *"* : FUNCIONA *"**************************************************************** define osc 8 digit1 VAR Byte digit2 VAR Byte digit3 VAR Byte veces var byte cuenta var word cuenta2 var word intermedia VAR word symbol digi1=portc.0 symbol digi2=portc.1 symbol digi3=portc.2 symbol digito=portb TRISA = %11111111 ADCON1 = %10001110 ADCON0 = %11000101 TRISB = %00000000 TRISC = %00000000 inicio: cuenta=0 for veces= 0 to 49 ADCON0.2 = 1no_termino: gosub display IF ADCON0.2 = 1 Then no_termino intermedia.highbyte = ADRESH intermedia.lowbyte = ADRESL cuenta=intermedia+cuenta next veces cuenta2=cuenta gosub display goto inicio end display: digit3 = cuenta2 dig 4 digit2 = cuenta2 dig 3 digit1 = cuenta2 dig 2 LOOKUP2 DIGIt3,[63,6,91,79,102,109,125,7,127, 111],digito high digi3 pause 1 low digi3 LOOKUP2 DIGIt2,[63,6,91,79,102,109,125,7,127, 111],digito high digi2 pause 1 low digi2 LOOKUP2 DIGIt1,[63,6,91,79,102,109,125,7,127, 111],digito high digi1 pause 1 low digi1return