mercredi 4 mars 2015

ARDUINO UNO mit C/C++ Programmieren

Das Blink-Beispiel konnte ich nun auch in C/C++ kompilieren und über die USB-Verbindung auf das UNO-Board laden.



mit MS Visual Studio 2013 (Professional- oder Community-Edition)



Verwendet habe ich hier MS Visual Studio 2013 Professional mit Visual Micro ( in der gratis-Version).

1. Arduino IDE 1.6 installeren



2. MS Visual Studio 2013 (die Profssional oder Community-Edition) installieren



3. Visual Micro installieren (wird als Addin zu Visual Studio installiert)



4. Visual Micro konfigurieren :

im >Hauptmenü von Visual Studio | Tools | Visual Micro (Arduino 1.6)| Configure IDE Location | Enter the ide folder location<

den Pfad zu obiger Arduino IDE 1.6 (konkret zu: arduino.exe) eingeben



6. Einstellen des verwendeten (zu programmierenden) Arduino Boards

entweder im Visual-Studio - Toolbar "Arduino-Boards" den Namen des Boards ("Arduino Uno") in der Drop-Down-Box auswählen oder über das Menü

>Hauptmenü von Visual Studio | Tools | Visual Micro (Arduino 1.6)| Boards< ein Häkchen bei "Arduino Uno" setzen.



7. Seriellen Kommunikationsport zum Arduino-Board (über USB-Anschluß des PC ) prüfen/setzen :

bei mir steht hier COM7 - dieser Port wird bei Installation des USB-Treibers für ARDUINO während der Arduino-IDE Installation eingerichtet.

Der konkrete Wert ist im Geräte-Manager unter "Anschlüsse(COM & LPT)" in der Klammer neben den Eintrag "Arduino Uno" zu finden.



8. Prüfen der Programmierer-Einstellung (für das Programmieren des ATMEL-Chips im Arduino UNO)

in der Visual-Studio Toolbar "Arduino Serial Commnications" : in meinem Fall muss dort "COM7" stehen

es darf kein Häkchen gesetzt sein bei >Hauptmenü von Visual Studio| Tools | Visual Micro (Arduino 1.6)| Upload Using Programmer<



9.

a) Beispielsketch laden :

>Hauptmenü von Visual Studio | Tools | Visual Micro (Arduino 1.6)| Platform Explorer | Examples | 01.Basics | Blink <

durch Einfach-Klick auf Blink ( wichtig : nicht auf Blink.ino in der Zeile unmittelbar darunter klicken! )

erscheint ein Popup-Fenster folgenden Buttons :

Open Copy -- Open Original -- Browse Souce -- Cancel

auf Open Copy klicken : es wird dann ein neues Sketch-Projekt mit dem kopierten Sourcecode aus diesem Beispiel angelegt



b) oder eigenes neues Sketch-Projekt anlegen :

>Hauptmenü von Visual Studio | File | New | Sketch Project< - Eingabe des Namens des neuen Sketch-Projektes >NNNN<

Das Standard-Sketch Gerüst mit den beiden leeren Funktuionen setup() und loop() wird automatisch unter dem Namen NNNN.ino angelegt.

Diesen Sourccode dann entsprechend den Erfordernissen des eigenen Projektes erweitern.



10. Kompilieren des Sourcetextes

>Hauptmenü von Visual Studio | Build | Build Solution

es sollten beim Kompilieren keine Fehler angezeigt werden ( die Error-List sollet leer bleiben )

im Output-Fenster wird wird Größe in Byte des erfolgreich kompilierten Sketches-Codes

und der Prozentsatz des damit im ATMEL Chip belegten Speichers angezeigt

wenn Fehler aufgetreten sind, sollte derSourcecode entsprechend verbessert und anschließend neuerlich kompiliert weren



11. Laden des kompilierten Programmes über die USB-Verbindung auf das ARDUINO UNO Board

>Hauptmenü von Visual Studio | Project | Upload Last Sketch Build



12. das soeben erstellte Programm am Arduino Bord wird (ohne weitere manuelle Eingriffe) gestartet.

der Code des Sketch-Programmes wird nach Klick auf "Upload Last Sketch Build" (in Punkt 11) geladen es blinken die Leuchtdioden am Board während des Ladevorganges

unmittelbar nach dem Ladevorgang wird sofort das soeben erstellte Programm am Arduino Bord (ohne weitere manuelle Eingriffe) gestartet.



Das Programm bleibt bis zur nächsten Re-Programmierung (auch ohne Spannungsversorgung) geladen.

Laut Datenblatt bleibt der programmierte Speicherinhalt zumindest 20 Jahre (ohne angelegter Betriebsspannung) erhalten.



Beim nächsten Anlegen der Betriebspannung ( z.B. über den USB-Anschluss ) wird der im ATMEL-Chip einprogrammierte Code wieder gestartet und kann durch Wiederholen der hier oben dargestellten Vorgänge 9 - 12 ( mit z.B. anderem Source-Code ) reprogrammiert werden.



Der Code wird in einem Flash-Speicher ( im UNO mit 32x kB , in diesem Bereich befindet sich auch der Boot-Loader) abgelegt, diese Flash-Speicher kann laut Datenblatt zumindest 10.000 mal wieder beschrieben werden.





mit ATMEL Studio 6.2



Nachdem die Installation von ATMEL Studio 6.2 auf MS Visual Studio 10 aufbaut, gelten die Schritte für MS Visula Studio auch für ATMEL Studio 6.2

Statt MS Visual Studio wird lediglich ATMEL STudio 6.2 installiert - in diesem Installationsverlauf wird dann auch ("automatisch") MS Visual Studio 10 installiert - alle anderen Schritte (inklusive Visual Micro -Installation) sind genauso, wie für die Installation mit Visual-Studio durchzuführen.

Der Unterschied zu Visual Studio 13 besteht in erster Linie in verschiedenen Zusatzools, die allerdings nicht für den im Arduino UNO verbauten ATMEGA238 P

verfügbar sein dürften und vor allem in der ATMEL spezifischen Online-Hile über die die technische Dokumentation des aktuellen ATMEL Chips direkt verfügbar sind und einige technische Detaildaten zum aktuellen Chip (ATMEGA238-P) unmittelbar angezeigt werden können.



Einen kompletten "Entwicklungsdurchlauf" eines Beispielprojektes (z.B. Blink) habe ich aber derzeit noch nicht durchgeführt.





mit Ecclipse-luna



Ich habe soeben ein Nightly Build gefunden des Arduino-Plugins http://ift.tt/18OrUIp gefunden , das die aktuelle Arduino IDE 1.6 unterstützen soll.

Das muß ich mir erst anschauen.

Mit älteren Plugins war ich bisher noch nicht erfolgreich - beim Kompilieren kam zumeist die Fehlermeldung (wegen fehlender Unterstützung der Arduino IDE 1.6 ?) , dass ein Entrypoint in cygwin1.dll nicht gefunden werden konnte.



Informationen zu Arduine-Eclipse gibt's hier : http://ift.tt/1zuHT8J



Ich konnte mit Eclipse (luna) allerdings bisher noch keine einziges Beispiel-Sketch erfolgreich kompilieren und auf das Arduino-Uno Board laden.





ARDUINO UNO mit C/C++ Programmieren

Aucun commentaire:

Enregistrer un commentaire