Not logged in. · Lost password · Register

ne99nyto
Member since Dec 2017
1 post
Subject: 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
Member since Oct 2017
5 posts
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)?
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Special characters:
Go to forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen