- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 9 von 9

Thema: Code / Projekt richtig strukturieren

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.698
    Hallo Chris!
    .. möchte ich alles neu strukturieren. Programmiert wird in Plain-C, das soll auch so bleiben ..
    So ähnlich hatte ich es auch vor Jahren. Meine Systematik hatte dann auch mit ner Strukturdarstellung "über alles" angefangen (hier vorzugsweise HW, dort aber schon Verweise auf SW):

    ......Bild hier  
    ......© 2021 by oberallgeier - Originalformat im Bild verlinkt

    Dazu dann natürlich feinere Aufteilungen (teils nicht wirklich präsentabel hier - aber es hilft bei der Orientierung) für die einzelnen Controller, Controllerquellcodes etc. Vor allem verschiedene Sensoren an verschiedenen Controllern sind so gut im Griff. Wichtig natürlich nicht nur Ort- sondern auch Datumsangaben.

    Die Softwareskizzen sind ähnlich und erlauben damit eine schnelle Übersicht über den Code - und dessen Lage auf meinem Computer (wozu gibts denn sonst hyperlinks in Textverarbeitungsprogrammen *gg*).

    PS: die Angaben im präsentierten Bild sind teils veraltet - I²C läuft z.B. mittlerweile mit 400 kHz, auch auf den PingPongs habe ich mittlerweile die müden mega8 gegen mega328 mit 20 MHz-Quarz getauscht und UART funzt jetzt mit 512 MBd usf.
    Geändert von oberallgeier (01.03.2021 um 10:31 Uhr)
    Ciao sagt der JoeamBerg

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hallo,

    vielen Dank erstmal für die hilfreichen Antworten!
    Ich habe mich jetzt dazu entschieden, eben alle Hardware Funktionen und Variablen etc.. in eine eigene Datei zu packen, in welcher ich auch das jeweilige Board definiere, sodass ich dann im Hauptprogramm, falls nötig, auch mit dem Define zwischen versch. Funktionen unterscheiden kann.
    Wenn ich das auf die schnelle richtig gesehen habe, gibt es die Überladung von Funktionen nur in objektorientierten Sprachen oder täusche ich mich?
    Was mich noch sehr interessieren würde, wäre die Versionsverwaltung. Ich arbeite mit EM:Bitz, da gibt es die Funktion "Autoversioning", allerdings hab ich das noch nie verwendet.
    Vielleicht weiß da jemand mehr?

    Vielen Dank
    Chris

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    nur in objektorientierten Sprachen ....

    funktioniert in C++ ... in der Arduino-IDE mit dem Compiler funktioniert das daher auch, in den INO-Dateien.

    Leider wohl aber mit dem älteren C nicht.


    MfG

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    10.04.2005
    Ort
    Bad Aibling
    Beiträge
    212
    Schon eine weile her aber vielleicht interessiert es Dich: wenn Du Modernes C benutzen magst benutze für die Hardware unabhängigen Teile Funktionstemplates die als Template Parameter die Implementierung der Hardwarespezifischen Teile als Datentyp übergeben bekommen. Dann musst Du nur in Zukunft die Hardware nahen Funktionen neu schreiben und alles andere erledigt der Compiler.

    Benutze für Konstanten besser die C Variante und nicht den Präprozessor: const int iPort = 4;
    Die sind Typsicher was die defines nicht sind. Kann man genauso in einer Datei Sammeln um sie an Zentraler stelle zu Pflegen.
    Geändert von alexander_ro (23.05.2021 um 08:58 Uhr)

Ähnliche Themen

  1. Ein Stück C-Code - sieht richtig aus, aber es gibt ne Fehlfunktion
    Von oberallgeier im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 28.12.2012, 11:21
  2. RP6: Projekt Morse-Code
    Von Dirk im Forum Robby RP6
    Antworten: 6
    Letzter Beitrag: 21.03.2012, 17:48
  3. C-Programm strukturieren/aufteilen
    Von dreadbrain im Forum C - Programmierung (GCC u.a.)
    Antworten: 8
    Letzter Beitrag: 09.06.2010, 18:27
  4. Wie kopiert man Quelltexte richtig in ein anderes Projekt?
    Von rogerberglen im Forum Assembler-Programmierung
    Antworten: 2
    Letzter Beitrag: 18.08.2007, 11:49
  5. MIDI- Code richtig?
    Von Xtreme im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 15.03.2006, 07:32

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests