Hallo an Alle, ich war lange Zeit stiller Mitleser aber jetzt habe ich mal eine Frage. Folgendes: Die Arduino IDE ist für mich zu unbequem und experimentell. Meine Wahl ist Atmel Studio. Ich möchte in reinem C/C++ programmieren, ohne die void setup() und void loop() Funktionen. Mittels avrdude kann ich nun wie gewohnt über Main und while(1) programmieren. Nur wie bekomme ich z.B. die Funktionen Serial.print() usw. per library ins Atmel Studio eingebunden? Habe mich schon über Visualmicro informiert, da hänge ich jedoch wieder an einem externen Tool-Anbieter und habe zusätzlich die setup() und loop() Umgebung. Das Projekt soll längerfristig Erfolg haben und ich möchte nicht von experimentellen Entwicklungsumgebungen abhängig sein -> Dass bei neuen Versionen auf einmal Fehler auftreten oder diese eingestellt werden hatte ich schon. Vielen Vielen Dank :) Ich hoffe ich habe meine Frage verständlich formuliert.
Ganz einfach: Du schreibst dir selber eine Library, die "Serial.print()" implementiert. Oder nimmst einfach eine andere, die dasselbe leistet, kleiner ist, aber eben eine ein bischen andere Syntax hat. (printf z.B.) Oder du musst eben doch Arduino verwenden, kannst ja ein "#define main setup" reinwursteln. Aber nur Teile von Arduino-Libraries aus dem Ökosystem herauszureißen und stand-alone einzusetzen klappt meist nicht ohne Änderungen. -> schau dir vielleicht platformio an. (nur die Commandline-Tools, die atom-IDE brauchst du nicht zwingend) das installiert dir das Arduino-Framework in allen Geschmacksrichtungen, aber du kannst ohne die schreckliche Arduino-IDE arbeiten. https://platformio.org/
Atmel Studio kann doch Arduino .ino importieren, damit werden auch die Arduino Libraries in das Projekt geholt. Im AS7 bei New Project 'Create project from Arduino sketch' auswählen.
Vielen Dank für eure Antworten :) Ich werde den Vorschlag von Ernst versuchen umzusetzen.
Johannes S. schrieb: > Ich werde den Vorschlag von Ernst versuchen umzusetzen. das ist ok, wobei printf durch die vielen Formatoptionen relativ viel Speicher braucht, deshalb ist im Arduino core die abgespeckte Serial Klasse drin. Das main() gibt es im Arduino Code auch, wenn man ein .ino mit AS7 importiert sieht man das auch im Projektbaum. Ich mag den Arduino core aber auch nicht besonders und die Nutzung von C Standards ist sicher besser. Eine Hilfe zu printf findet sich hier: https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Die_Nutzung_von_sprintf_und_printf
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.