Hallo,
was bedeutet eigentlich dieses Int main(void), welches man in jedes Programm für den Asuro schreibt?
Gruß
Tom
Hallo,
was bedeutet eigentlich dieses Int main(void), welches man in jedes Programm für den Asuro schreibt?
Gruß
Tom
Hi,
das int main(void) kennzeichnet das eigentliche Programm welches im Mikrocontroller abgearbeitet wird. Es beginnt bei der ersten Zeile der Schleife int main(void) und läuft dann durch bis zum while (1). Das while(1) ist dann die eigentliche Schleife für das Programm. In dem Teil int main(void) kommen einmalige Sachen (z.B. UART initialisieren, I²C initialisieren, usw.).
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Das ist wie gesagt das eigentliche Programm welches vom µC aufgerufen wird...
Es gibt dann noch Unterprogramme, nur das ist dann eine andere Geschichte
Lies dir mal ein paar Tutorials durch - und nicht vergessen, google ist dein Freund
Hallo
Man sollte das eher aus der Entwicklung von C betrachten als das C-Programm von einem übergeordneten Betriebssystem aufgerufen wurde und man auch Parameter an das Programm übergeben konnte. Um einen gemeinsamen Einstiegspunkt zu erhalten einigete man sich auf den Namen main() der Hauptfunktion.
Das void bedeutet, die Funktion erwartet beim Aufruf keinen Parameter. Weil die Microkontroller mit einem Reset starten und die Funktion main() nicht als Unterprogamm aufgerufen wird kann man eh keine Parameter übergeben.
Das int wiederum bedeutet, dass es sich um eine Funktion handelt die einen Integerwert als Rückgabewert an das aufrufende Programm zurückgibt. Damit kann die Funktion Fehlermelungen oder Stati zurückmelden. Da es bei Microkontrollern aber kein aufrufendes Programm gibt, braucht man auch nichts zurück geben. Im Gegenteil, die Funktion main() darf nie beendet werden! Trotzdem muss ein return()-Befehl vorhanden sein, das wird durch das int zwingend vorgegeben.
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Lesezeichen