Nicht angemeldet. · Kennwort vergessen · Registrieren

ne99nyto
Mitglied seit 12/2017
1 Beitrag
Betreff: Klausur März 2012 c.modul
hi,
ich komme bei der Aufgabe aus der Klausur von März 2012 nicht weiter:

Ein Mikrocontroller-Programm "main.c" verwende die Funktionen:
void send(char);
char receive(void);
eines Netzwerk-Treibers.Der Treiber implementiert diese Funktionen und verwaltet zudem einen Puffer für eingehende Zeichen und eine Unterbrechungsbehandlungsfunktion, die diesen befüllt:
char buf[32];
void receive_irq(void){ ... }
Skizzieren Sie, welche Dateien (netzwerk.*) erforderlich sind, um den Treiber in Form eines C-Moduls bereit zu stellen und im Hauptprogramm verwenden zu können.Was ist zu beachten(d.h."was muss in welcher Datei wie stehen"),um eine korrekte Kapselung der Modulinterna sowie die korrekte Sichtbarkeit und Verwendung der Modulschnittstellen zu gewährleisten?

Ich habe mir überlegt in einer Netzwerk.h Datei die entsprechenden Funktionen und Variablen zu deklinieren:
void send (char),
char receive (void);
extern char buf[32];
void receive irg(void);

und in der .c-Datei müssen dann die Module inkludiert werden:
#inlcude <netzwerk.h>

Fehlt noch was, stimmt das oder wie ist die Aufgabe zu verstehen?
herzog
Mitglied seit 10/2017
5 Beiträge
Im Grunde sind hier 3 Dateien interessant und was die jeweiligen Dateien enthalten:

netzwerk.h
netzwerk.c
main.c


Du schlägst vor die Deklaration der Funktionen und Variablen alle in die netzwerk.h zu packen und in der netzwerk.c zu inkludieren. Da stellt sich die Frage, woher kennt der Code in der main.c die Signatur der Funktionen?

Was du bisher auch nicht unterscheidest: Welche Funktionen können nur im netzwerk-Modul sichtbar sein und welche müssen global sichtbar sein?

Was in der Antwort auch noch nicht vorkommt, wo werden die entsprechenden Funktionen denn implementiert (und mit welcher Sichtbarkeit)?
Schließen Kleiner – Größer + Auf diesen Beitrag antworten:
Prüfcode: VeriCode Gib bitte das Wort aus dem Bild ins folgende Textfeld ein. (Nur die Buchstaben eingeben, Kleinschreibung ist in Ordnung.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Weitere Zeichen:
Gehe zu Forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen