Irgendwas mache ich immer noch falsch!
main.cCode:funktionen.c: In function ‘Beschleunige’: funktionen.c:51: error: ‘abgebrochen’ undeclared (first use in this function)...
funktionen.c (Auszug)Code:#include "asuro.h" extern int abgebrochen; #include "funktionen.h" int main(void) { // Initialisierung Init(); sei(); StartSwitch(); // hier kommt der Hauptteil des Programms StatusLED(RED); while (1) { /* ** Nach einem erfolgreichen Beschleunigungsvorgang soll so lange weitergefahren ** werden, wie kein Hindernis kommt. Ansonsten wird an den Anfang der Schleife ** zurückgesprungen und wieder von 0 beschleunigt. */ if (Beschleunige(120, 150, 3)) { while (abgebrochen == 0); abgebrochen = 0; } } return 0; }
funktionen.hCode:#include "asuro.h" int Beschleunige(int start, int end, int zeit) { StatusLED(GREEN); int momentan; int durchlaeufe = end - start; float zeitschritt = (float) zeit / (float) durchlaeufe * 1000; for(momentan=start; momentan<end; momentan++) { // wenn die Geschwindigkeit von einem Interrupt verändert wurde, wird der Vorgang unterbrochen if (abgebrochen == 1) { abgebrochen = 0; return 0; } Geschwindigkeit(momentan, momentan); Warte(zeitschritt); } return 1; }
Code:int Beschleunige(int, int, int);






Zitieren


Lesezeichen