int main(void) { adc_init(); spi_init(); switches_init(); encoders_init(); for (;;) { // Check the SS pin, if it is low, send the data through SPI. if (spi_slave_selected()) { spi_enable(); for (uint8_t i=0; i<ENCODER_COUNT; ++i) { spi_transfer16(g_encoderValues[i]); } spi_transfer8(g_downMask); spi_disable(); } switches_update(); encoders_update(); } }
int main() { for (;;) { if ( azimuth_pwm_calc_event.signalled()) { azimuth::motor::do_calc(); azimuth_pwm_calc_event.clear(); } if(ms1_event.signalled()) { switches_update(); ms1_event.clear(); } if(ms20_event.signalled()) { on_20ms_event(); ms20_event.clear(); } if ( telemetry::serial_port.in_avail()) { telemetry::parse_input(); } } }