diff --git a/libraries/AP_HAL/examples/AnalogIn/AnalogIn.pde b/libraries/AP_HAL/examples/AnalogIn/AnalogIn.pde index 6d08f713f4..b4f2f553d5 100644 --- a/libraries/AP_HAL/examples/AnalogIn/AnalogIn.pde +++ b/libraries/AP_HAL/examples/AnalogIn/AnalogIn.pde @@ -12,50 +12,26 @@ const AP_HAL::HAL& hal = AP_HAL_BOARD_DRIVER; -AP_HAL::AnalogSource* ch0; -AP_HAL::AnalogSource* ch1; -AP_HAL::AnalogSource* ch2; -AP_HAL::AnalogSource* ch3; -AP_HAL::AnalogSource* ch10; -AP_HAL::AnalogSource* ch11; -AP_HAL::AnalogSource* ch12; -AP_HAL::AnalogSource* ch13; -AP_HAL::AnalogSource* vcc; +AP_HAL::AnalogSource* ch; void setup (void) { hal.console->printf_P(PSTR("Starting AP_HAL::AnalogIn test\r\n")); - ch0 = hal.analogin->channel(0); - ch1 = hal.analogin->channel(1); - ch2 = hal.analogin->channel(2); - ch3 = hal.analogin->channel(3); - ch10 = hal.analogin->channel(10); - ch11 = hal.analogin->channel(11); - ch12 = hal.analogin->channel(12); - ch13 = hal.analogin->channel(13); - vcc = hal.analogin->channel(ANALOG_INPUT_BOARD_VCC); + ch = hal.analogin->channel(0); } -void loop (void) { - float meas_ch0 = ch0->voltage_average(); - float meas_ch1 = ch1->voltage_average(); - float meas_ch2 = ch2->voltage_average(); - float meas_ch3 = ch3->voltage_average(); - float meas_ch10 = ch10->voltage_average(); - float meas_ch11 = ch11->voltage_average(); - float meas_ch12 = ch12->voltage_average(); - float meas_ch13 = ch13->voltage_average(); - float meas_vcc = vcc->read_average() * 0.001; - hal.console->printf_P(PSTR("Voltage ch0:%.2f ch1:%.2f ch2:%.2f ch3:%.2f ch10:%.2f ch11:%.2f ch12:%.2f ch13:%.2f vcc:%.2f\n"), - meas_ch0, - meas_ch1, - meas_ch2, - meas_ch3, - meas_ch10, - meas_ch11, - meas_ch12, - meas_ch13, - meas_vcc); - hal.scheduler->delay(200); +static int8_t pin; + +void loop (void) +{ + float v = ch->voltage_average(); + if (pin == 0) { + hal.console->println(); + } + hal.console->printf_P(PSTR("[%u %.3f] "), + (unsigned)pin, v); + pin = (pin+1) % 16; + ch->set_pin(pin); + hal.scheduler->delay(100); } AP_HAL_MAIN();