Zum ersten Teil: Falsch, wenn du (C) programmieren kannst, macht einiges sehr schnell sehr viel Sinn. Ich will es Mal so umschreiben: Die ASURO-Bibliothek ist der Werkzeugkasten mit dem du arbeitest. Hast du die handwerklichen/motorischen Fähigkeiten nicht, bringt dir auch das tollste Werkzeug nichts.
Zum zweiten Teil: Das mit "h" und "c" ist einerseits eine Frage der Konvention, andererseits eine Eigenheit der Programmiersprache C, die zwischen Deklaration ("Es gibt eine Funktion mit Namen X, Parametern Y und Rückgabewert Z") und Definition ("Hier ist Funktion X die folgendes macht (Quelltext)"). Jede C-Datei steht beim Kompilieren erst einmal alleine da und weiß nichts über andere Dateien oder Bibliotheken. Um daher "fremde" Funktionen zu verwenden, müssen diese erst bekannt gemacht werden, indem man sie Deklariert. Um diesen Vorgang zu vereinfachen, schafft man eine Art Schnittstelle, die Header-Datei, die die Deklarationen aller wichtigen Funktionen enthält. (Wobei wichtig == soll von außen benutzt werden können).
Und damit man immer weiß, welcher Header die Schnittstelle zur welcher Implementierung enthält, verwendet man normalerweise den gleichen Namen wie bei der Quelltext-(C)-Datei, was die typischen Paare Name.C und Name.H ergibt.
Manche Dateien sind nicht für dich bestimmt, sondern werden (Beispielsweise von Eclipse, AVR Studio o.ä.) für eigene Zwecke verwendet. Andere sind sogenannte Projektdateien, in der die Programmierumgebung sich merkt, was alles zusammengehört.
Und zu der Frage, "Wie finde ich raus was wie zusammengehört und wie es funktioniert", das sollte die Dokumentation des Quelltextes erklären. Wenn nur Schnipsel angeboten werden, musst du dir wohl selbst ein Makefile aufsetzen, alternativ dazu kannst du auch eine Entwicklungsumgebung verwenden, die das für dich von alleine erledigt.
mfG
Markus
Lesezeichen