Forum: Mikrocontroller und Digitale Elektronik UART Library von P. Fleury


von Hans Wurst (Gast)


Lesenswert?

Zur UART-Library von P. Fleury hab ich eine Frage. Es gibt dort die 
Files UART.H und UART.C

In Uart.c gibt es keine main-Funktion. Wenn ich die Uart.h mit äinclude 
".." einbinde, dann sind die Funktionen zum Senden von Zeichen und 
Empfangen nicht da. Naja, ich könnte jetzt auch machen #include 
"uart.c", dann sind die Funktionen auch da.

Meine Frage - ist die uart.c-Datei dazu gedacht, um sich die benötigten 
Funktionen von da rauszukopieren? Oder sollte man sie mit #include 
einbinden? oder die Funktionen vordefinieren und später beim Linken die 
uart.c dazulinken?

Vielleicht kann mir jmd. von Euch einen kleinen Tipp geben, ich würd 
mich sehr drüber freuen.

von Ein Gast (Gast)


Lesenswert?

Hans Wurst schrieb:
> In Uart.c gibt es keine main-Funktion.

Uart.c ist eine Bibliothek. Du musst also sinnvollerweise die Uart.h per 
#include in dein Programm einbinden und die Uart.c mit linken.
Die main-Funktion muss dann in deiner Anwendung stehen.

von jack (Gast)


Lesenswert?

In einer .c Datei hast du normalerweise nichts verloren. Da drin stehen 
Internas, die dich eigentlich nicht interessieren (in einer sinnvoll 
durchdachten Bibliothek).

Du hast irgendwo in deinem Programm deine main().
Jetzt möchtest du etwas per UART senden. Also bindest du dort, wo du 
senden willst, die UART.h ein.
Jetzt kennt dein Programm alles was es wissen muss. Die .h Datei stellt 
sozusagen das Interface zur Bibliothek dar.
Deine main() kann jetzt alle Funktionen aufrufen, die ihr von der UART.h 
bekannt gemacht werden.

Evtl enthält die UART.c noch andere interne Funktionen. Diese sind aber 
nicht dazu gedacht dass DU als Anwender sie aufrufst. Deswegen stehen 
diese auch nicht in der UART.h.

von Hans Wurst (Gast)


Lesenswert?

Vielen Dank für die Antworten.

Ein Gast schrieb:
> die Uart.c mit linken.

Gibt es in dem AVRStudio 6 die Möglichkeit an einer Stelle Dateien 
auszuwählen, die mit dazugelinkt werden sollen? Oder muss ich per Hand 
einen externen Makefile schreiben?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Hans Wurst schrieb:
> Oder muss ich per Hand
> einen externen Makefile schreiben?

Nein: rechte Maustaste auf den 'Source' Ordner-> 'Add existing file' -> 
zur uart.c durchhangeln und anwählen. So war es bei AS5 und das wird 
sehr ähnlich sein bei AS6.

von Hans Wurst (Gast)


Lesenswert?

Matthias Sch. schrieb:
> Nein: rechte Maustaste auf den 'Source' Ordner-> 'Add existing file' ->
> zur uart.c durchhangeln und anwählen. So war bei AS5 und das wird sehr
> ähnlich sein bei AS6

cool, danke fuer die schnelle Hilfe, und schon klappts :-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.