bueno e tratado de hacer un voltimetro con el pic 16f876a y un display 2*16 al probarlo en proteus sirve ala perfeeccion pero al hacerlo en un proto. la lcd se queda prendida pero no dice nada aui les dejo el diagrama y el programa
y aqui esta el diagrama
Código:
'****************************************************************
'* Name : voltimetro.BAS *
'* Author : N4NDx *
'* Notice : Copyright (c) 2011 Lima *
'* : All Rights Reserved *
'* Date : 20/08/2011 *
'* Version : 1.0 *
'* Notes : *
'* : *
'****************************************************************
'
Declaracion del dispositivo
Device = 16F876A
Xtal = 4 ' cristal de 4MHz
'****************************************************************
' Asignacion del LCD
Declare LCD_DTPin = PORTB.4 ' puerto de datos del LCD
Declare LCD_ENPin = PORTB.2 ' pin para el E
Declare LCD_RSTPin = PORTB.3 ' pin para el RS
Declare LCD_Interface 4 ' modo 4 bits
Declare LCD_Lines 2 ' LCD de 2 lineas
'****************************************************************
' Definicion del conversor A/D
Declare Adin_Res = 10 ' resolucion de 10 bits
Declare Adin_Tad = FRC ' oscilador RC interno
Declare Adin_Delay = 50 ' muestreo cada 50 microsegundos
'****************************************************************
'Creacion de variables
Dim senal As Word ' variable palabra
Dim Volts As Float ' variable en coma flotante (4bytes)
'****************************************************************
Symbol cuantif = 100.0 / 1024 ' Calcula el valor de cuantificacion
' maximo 100 voltios DC
Print Cls ' limpia el LCD y genera un retardo
'****************************************************************
'Definicion de los puertos
TRISA = %00000001 ' Configura AN0 (PortA.0) como entrada
ADCON1 = %10000000 ' habilita entrada analogica en PortA.0
'****************************************************************
'Empieza el programa
inicio:
senal = ADIn 0 ' se lee el canal 0 y almacena en senal
Volts = senal * cuantif
Print At 1,1, "Voltaje:" ' imprime voltaje en fila 1 posicion 1
Print At 2,1,Dec2 Volts,"V" ' imprime en fila 2 posicion 1
' DEC2 muestra 2 decimales
GoTo inicio
End
y aqui esta el diagrama
Adjuntos
Última edición por un moderador: