Hallo, kann mir jemand dazu einen Tip geben. Es ist ja für AVR-32 eine Implementierung mitgeliefert, aber diese wird für AVR-8 nicht gefunden. Ich weiß daß es Einschränkungen gibt, da auch keine new/delete funktioniert und keine Exceptions aber ein paar Algorithmen und Datenstrukturen sollten sich doch auch für diese 8-bitter verwenden lassen. Danke.
Es gibt keine C++-Standardlib und erst recht keine STL für den AVR. Klingt blöd, ist auch so. C++ an sich funktioniert, mit etwas Handarbeit bezgl. new und delete ( und noch ein paar anderen Dingen. google weiß bescheid). Oliver
Guest schrieb: > Es ist ja für AVR-32 eine Implementierung mitgeliefert, aber diese wird > für AVR-8 nicht gefunden. > > Ich weiß daß es Einschränkungen gibt, da auch keine new/delete > funktioniert und keine Exceptions aber ein paar Algorithmen und > Datenstrukturen sollten sich doch auch für diese 8-bitter verwenden > lassen. > kann mir jemand dazu einen Tip geben. AVR8 sind klein genug, dass man sie problemlos in Assembler programmieren kann. Da braucht man kein C und schon garkein C++.
Danke daß das geklärt ist, war aber nicht die Frage.
c-hater schrieb: > AVR8 sind klein genug, dass man sie problemlos in Assembler > programmieren kann. Da braucht man kein C und schon garkein C++. AVR8 sind groß genug, dass man sie in zahlreichen bequemen Sprachen programmieren kann. Da braucht man kein Assembler und schon gar keinen Bytecode. Oliver S. schrieb: > Es gibt keine C++-Standardlib und erst recht keine STL für den AVR. > Klingt blöd, ist auch so. So ist das. Wenn du die Standard C++ Bibliothek gerne nutzen möchtest, hast du hiermit eine Motivation, dich mit ARM Controllern zu beschäftigen.
Guest schrieb: > aber ein paar Algorithmen und > Datenstrukturen sollten sich doch auch für diese 8-bitter verwenden > lassen. Ja, geht ja auch.
Wilhelm M. schrieb: > Ja, geht ja auch. Wäre nett wenn du mir sagst wie. Wenn ich
1 | #include <algorithm> |
schreibe, kommt eine Fehlermeldung daß der Header nicht existiert.
Guest schrieb: > Wäre nett wenn du mir sagst wie. Hier sind alle Bibliotheken beschrieben, die zum Lieferumfang des avr-gcc Compilers gehören. Du wirst sehen, dass das nichts in C++ dabei ist. C++ Sachen musst du also komplett selber programmieren. Es sei denn, du verwendest das Arduino Framework. Da sind eine ganze Menge C++ Bibliotheken mitgeliefert und man kann weitere downloaden.
Guest schrieb: > Wäre nett wenn du mir sagst wie. > Wenn ich#include <algorithm> > > schreibe, kommt eine Fehlermeldung daß der Header nicht existiert. Sicher. Aber: die libstdc++ vom g++ ist open-source. Man kann da also reinschauen bzw. zunächst erst mal alles das ohne Probleme übernehmen, was keine dyn. Allokationen macht. Ggf. kann man bzgl. der Implementierung auf kleinen µC noch etwas Feintuning machen. Dyn. Container kann man auch ggf. mit einem Pool-Allokator machen oder man macht sie halt fixed-capacity.
c-hater schrieb: > AVR8 sind klein genug, dass man sie problemlos in Assembler > programmieren kann. Da braucht man kein C und schon garkein C++. Nein, AVR8 sind klein genug,im sie problemlos mit C zu programmieren. Man braucht hier kaum noch Assembler.
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.