//# MENU led void led_menu(){ getInputWaitRelease(); uint8_t leds=0; uint8_t adc=0; while(1){ lcdClear(); lcdPrintln("LED:"); lcdPrintln(""); lcdPrintln("U Toggle LEDs"); lcdPrintln("D Toggle ADC"); lcdPrintln(""); lcdDisplay(); switch(getInput()){ case BTN_UP: adc=0; leds=1-leds; SETUPgout(LED4); if(leds){ ON(LED1); ON(LED2); ON(LED3); ON(LED4); }else{ OFF(LED1); OFF(LED2); OFF(LED3); OFF(LED4); }; break; case BTN_DOWN: adc=1; SETUPadc(LED4); break; case BTN_ENTER: SETUPgout(LED1); SETUPgout(LED2); SETUPgout(LED3); SETUPgout(LED4); return; }; if(adc){ lcdPrint("LED4: "); lcdPrint(IntToStr(adc_get_single(ADC0,ADC_CR_CH6)*2*330/1023,4,F_LONG)); lcdNl(); lcdDisplay(); }; getInputWaitRelease(); }; };
void doADC(){ int32_t vBat=0; int32_t vIn=0; int32_t RSSI=0; int32_t LED=0; int32_t MIC=0; int v; int df=0; //#define LED4 PB_6, SCU_CONF_FUNCTION4, GPIO5, GPIOPIN26 SETUPadc(LED4); while(1){ lcdClear(0xff); lcdPrintln("ADC-Test v1"); lcdPrintln(""); lcdPrint("vBat: "); lcdPrint(IntToStr(vBat,4,F_ZEROS));lcdNl(); lcdPrint("vIn: "); lcdPrint(IntToStr(vIn ,4,F_ZEROS));lcdNl(); lcdPrint("RSSI: "); lcdPrint(IntToStr(RSSI ,4,F_ZEROS));lcdNl(); lcdPrint("LED: "); lcdPrint(IntToStr(LED ,4,F_ZEROS));lcdNl(); lcdPrint("Mic: "); lcdPrint(IntToStr(MIC ,4,F_ZEROS));lcdNl(); df++; lcdPrint("df: "); lcdPrint(IntToStr(df,4,F_ZEROS));lcdNl(); lcdPrint("ctr: "); lcdPrint(IntToStr(_timectr,6,0));lcdNl(); lcdNl(); /* lcdPrint("U ADC3/vBat");lcdNl(); lcdPrint("D ADC4/vIn ");lcdNl(); lcdPrint("L ADC0/RSSI");lcdNl(); lcdPrint("R ADC7/Mic ");lcdNl(); */ lcdDisplay(); vBat=adc_get_single(ADC0,ADC_CR_CH3)*2*330/1023; vIn=adc_get_single(ADC0,ADC_CR_CH4)*2*330/1023; RSSI=adc_get_single(ADC0,ADC_CR_CH0)*2*330/1023; LED=adc_get_single(ADC0,ADC_CR_CH6)*2*330/1023; MIC=adc_get_single(ADC0,ADC_CR_CH7)*2*330/1023; switch(getInput()){ case BTN_UP: vBat=adc_get_single(ADC0,ADC_CR_CH3)*2*330/1023; cpu_clock_set(204); break; case BTN_DOWN: vIn=adc_get_single(ADC0,ADC_CR_CH4)*2*330/1023; cpu_clock_set(102); break; case BTN_LEFT: RSSI=adc_get_single(ADC0,ADC_CR_CH0)*2*330/1023; cpu_clock_set(12); break; case BTN_RIGHT: LED=adc_get_single(ADC0,ADC_CR_CH6)*2*330/1023; MIC=adc_get_single(ADC0,ADC_CR_CH7)*2*330/1023; break; case BTN_ENTER: return; break; }; }; };