Forum: Compiler & IDEs Arduino library im Atmel Studio


von Johannes S. (Firma: Privat) (bitschieber123)


Lesenswert?

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.

von Εrnst B. (ernst)


Lesenswert?

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/

von Johannes S. (Gast)


Lesenswert?

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.

von Johannes S. (Firma: Privat) (bitschieber123)


Lesenswert?

Vielen Dank für eure Antworten :)
Ich werde den Vorschlag von Ernst versuchen umzusetzen.

von Johannes S. (Gast)


Lesenswert?

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

von N. M. (mani)


Lesenswert?

Auch noch eine Option wenn man Eclipse mag:
http://eclipse.baeyens.it

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
Noch kein Account? Hier anmelden.