hola a todos
mi problema es el siguiente:
hice un programa en donde ocupo el puerto adc del microcontrolador pic 16f628 pero necesito grabar el programa ya hecho y solo me consegui un pic 16f88 me sale un error el la configuracion del puerto al cambiar en la libreria el pic16f62 por el pic16f88 adjunto el codigo
el programa lo que hace es medir el voltaje de una bateria y dependiendo del valor de este se encienden los leds dependiendo del rango de voltaje
cualquier ayuda muchas gracias
saludos a todos
mi problema es el siguiente:
hice un programa en donde ocupo el puerto adc del microcontrolador pic 16f628 pero necesito grabar el programa ya hecho y solo me consegui un pic 16f88 me sale un error el la configuracion del puerto al cambiar en la libreria el pic16f62 por el pic16f88 adjunto el codigo
Código:
#include <16F88.h>
#device adc=10
#fuses xt,nowdt,noput,nobrownout,nolvp,noprotect
#use delay(clock=4000000)
#include <lcd.c>
#define LED PIN_B2
void main() {
int16 medicion;
float voltaje;
lcd_init();
while (1) {
{
setup_adc(ADC_CLOCK_INTERNAL);
setup_adc_ports (RA0_analog); aqui me sale error me dice el compilador ccs que no esta definido
set_adc_channel(0);
delay_us(20);
medicion= voltaje;
medicion = read_adc();
setup_adc (adc_off);
voltaje = 13.8 * medicion / 1024;
printf(lcd_putc, "\fADC = %4ld", medicion);
printf(lcd_putc, "\nVoltage = %01.2fV", voltaje);
}
if(input(pin_a1)==0)
output_low(LED);
if(input(pin_a1)==1)
output_high(LED);
if ((voltaje>=12.25) && (voltaje<=13.8)){
output_high(PIN_B0);
delay_ms (1000);
}
else {
output_low(PIN_B0);
}
if ((voltaje>9.7) && (voltaje<12.25)){
output_high(PIN_B1);
delay_ms (1000);
}
else
output_low(PIN_B1);
}
}
el programa lo que hace es medir el voltaje de una bateria y dependiendo del valor de este se encienden los leds dependiendo del rango de voltaje
cualquier ayuda muchas gracias
saludos a todos
Última edición por un moderador: