#define F_CPU_3686400UL #include #include #include void pause_drehung (void); void pause_neigung (void); void rechtslauf_drehen (void); void linkslauf_drehen (void); void neigung_flacher (void); void neigung_steiler (void); void manuel (void); void automatik (void); void ADC_Init(void); uint16_t sensor_sued; uint16_t sensor_west; uint16_t sensor_ost; uint16_t sensor_nord; int main (void) { DDRC = 0xFF; // Port C wird als Ausgang deklariert PORTC = 0; // Alle Pins am Port C werden auf low gesetzt PORTA = 0x00; ADC_Init(); while (1) { automatik (); } } void automatik (void) { >>>>>>>sensor_sued = ADC_Read (0); sensor_west = ADC_Read (1); sensor_ost = ADC_Read (2); sensor_nord = ADC_Read (3); if (sensor_west > sensor_ost) { rechtslauf_drehen (); } if (sensor_ost > sensor_west) { linkslauf_drehen (); } else pause_drehung (); } void ADC_Init(void) { uint16_t result; ADMUX = (0<>>uint16_t ADC_Read( uint8_t channel ) { ADMUX = (ADMUX & ~(0x1F)) | (channel & 0x1F); ADCSRA |= (1<