Buenas estoy desallonado un codigo que genere un tiempo y ese tiempo yo lo pueda variar con dependiendo del valor que tiene el comversor. El problema que tengo es que el tiempo es siempre el mismo. Osea el led que esta en RA1 no cambia su velocidad nunca!!
aca les dejo el codigo.
#include <18f2550.h>
#DEVICE ADC=10
//FUSES Y OCILADOR
#fuses HS,NOWDT,NOPROTECT,NOLVP,NODEBUG
#use delay(oscillator=20M)
//DEFINO PARA EL LCD
#define LCD_DB4 PIN_B4
#define LCD_DB5 PIN_B5
#define LCD_DB6 PIN_B6
#define LCD_DB7 PIN_B7
#define LCD_RS PIN_B1
#define LCD_E PIN_B2
//INCLUDE LIBRERIAS
#include <LCD.lib>
//Variables GLOBALES
float voltaje;
int16 analogico=0;
//INTERUCCION DEL TIMERO
#INT_AD
void AD_isr()
{
voltaje=Read_ADC(ADC_READ_ONLY);
analogico=voltaje;
//voltaje=(voltaje*5)/1023;
// set_timer0(voltaje);
}
#int_RTCC
void RTCC_isr(){
output_toggle(pin_a1);
set_timer0(analogico);
}
//MAIN
void main(void){
lcd_init();
delay_ms(100);
setup_timer_0(RTCC_DIV_32|RTCC_INTERNAL);
setup_adc(ADC_CLOCK_INTERNAL);
setup_adc_ports(AN0_ANALOG);
enable_interrupts(INT_AD);
enable_interrupts(int_RTCC);
enable_interrupts(global);
for(;;){
Read_ADC(ADC_START_ONLY);
lcd_gotoxy(1,1);
printf(lcd_putc,"Valor del conversor");
lcd_gotoxy(1,2);
printf(lcd_putc,"%lu ",analogico);
}
}