SoynuevoenlaprogramaciónPIC,yenelsiguienteprograma,intentoparpadearelLEDparaunrangoespecíficoderesistencia.Perocuandoherealizadoladepuración,descubríquemientraselbucleseestablecióparaesperarhastaqueserealicelaconversiónenADC_Read()noseestácompletando.Porfavor,ayuda.Diagramadecircuitoadjuntotambiénconestehilo.
#include<pic.h>#include<htc.h>#define_XTAL_FREQ2000000voiddelay(intcnt){while(cnt--);}voidADC_Init(){ADCON0=0X81;ADCON1=0XCE;}intADC_Read(unsignedintch){ADCON0=0X81;ADCON1=0XCE;intresult;delay(50);ADON=1;while(ADON==1);result=ADRESH;result=result<<8;result=result|ADRESL;return(result);}intmain(){unsignedintadcValue;TRISA=0X01;PORTB=0X00;TRISB0=0X00;ADC_Init();while(1){adcValue=ADC_Read(0);if(adcValue>=300&&adcValue<=500){RB0=1;}else{RB0=0;}}return0;}