Hi, wie plant ihr eigentlich Software für den Embedded Bereich? Das man für C++ (also Objektorientiertes programmieren) UML verwendet ist mir klar, nur wie macht man das für das stink normal ANSI C? Kennt ihr da gute (möglichst freie) Software oder Bücher/Internetseiten? Gruss Marco
Zettel und Stift...soll es auf einem Schreibtisch geben....hab ich mal gehört ;)
Ich würde folgenden Ablauf für die Programmplanung vorschlagen: - "Lastenheft" schreiben (auf Papier), d.h. festlegen was wie, wann und in welcher Form rein und raus kommt, und was das Programm überhaupt alles machen soll. Also ein vollständiger Überblick über das externe Verhalten deines Programms/µCs - Zustandsdiagramm und Flussdiagramm entwerfen (auf Papier) - Aufteilung in Funktionen, mit Festlegung der Funktionsprototyen mit Datentypen und dem gewünschten Verhalten der einzelnen Funktionen sowohl im Regel- als auch im Fehlerfall (evtl. nochmal Fluss- und/oder Zustandsdiagramm für jede Funktion). Bei µC solltest Du ab hier schon auf das Einpassen deiner Logig in die vorhandenen Ressourcen (Register, Zähler, I/O-Ports, verwendung passender Datentypen, etc.) achten, damit Du alles unterbringst. (alles immer noch auf Papier) - Wenn Du es ganz amtlich machen willst definierst Du zu jeder Funktion noch einen Test. Das ist ein kleines Script das die Funktion mit typischen Eingabewerten innerhalb und außerhalb des definierten Bereiches füttert, und die Rückgabe des korrekten Ergebnisses bzw. der korrekten Fehlermeldung überprüft. Ich gah mal nicht ins Detail, da gibts massenweise Literatur dazu. Wenn Du die Planung hast ist das Schlimmste eigentlich überstanden. - Jetzt schmeißt du vi oder den Editor deiner Wahl an. Am besten schreibst Du zuerst die Tests (wenn Du welche machst), und dann kannst Du die Funktionen der Reihe nach schreiben. main() zuletzt. Da Du alles detailliert geplant hast sollten in dieser Phase keine großen Überlegungen mehr nötig sein, Du übersetzt einfach deine Flussdiagramme in gültiges ANSI-C bzw den C-Dialekt für deinen µC. - Und am Schluss steht natürlich wie überall das Debuggen im Emulator und schließlich der Upload in den µC. Bei ganz einfachen Programmen kannst Du natürlich einen oder mehrere der anfänglichen Planungsschritte auch im Kopf machen. Viel Erfolg.
< Wenn Du die Planung hast ist das Schlimmste eigentlich überstanden.> Und wenn du hier angekommen bist, hast du die notwendigen Informationen um den passenden µC auszuwählen.
Schau mal unter "V-Modell". Ist gar nicht schlecht. Markus hat übrigens recht damit, Tests früh einplanen. Es hilft immens! Wollte ich noch mal betonen, damit es nicht untergeht. Hier tue ich mich übrigens sehr schwer, ich denke, ich werde da mal einen Thread aufmachen.
>> < Wenn Du die Planung hast ist das Schlimmste eigentlich überstanden.> >Und wenn du hier angekommen bist, hast du die notwendigen Informationen >um den passenden µC auszuwählen. Ok, ich bin von einem festgelegten µC ausgegeangen, für den ein Programm geschrieben werden soll. Aber Du hast recht, wenn erst das Programm definiert wurde ist an dieser Stelle der Zeitpunkt gekommen um den richtigen µC auszuwählen
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.