User manual

AREXX Engineering & JM3 Engineering
Version: 1.20 Apr. 20, 2014 Seite: 10
2 SW Package für das RP6_Sensor&I/O und RP6WIFI Bord
2.1 C++ und C-Source Code wird unterstützt
Mit dem RP6_Sensor&I/O Bord wird gleichzeitig die Tür zur C++ Welt für den RP6 Roboter
geöffnet und das auf einfache Art und Weise keine Angst!
Die C++ Programmiersprache ist eine Weiterentwicklung von ‘C’ oder auch eine Erweiterung der
C Sprache, aber verbesserten Befehlen und besser strukturiert. Nicht zu vergessen sind die
deutlich verbesserten Compiler Überprüfungen.
All das führt zu einem besser lesbaren Code und einem besseren Schutz vor Seiteneffekten für ihr
SW Design (z.B. enums und die Benutzung von name space‘ Definitionen für die Variablen der
verschiedenen Softwaremodule anstelle von endlosen #defines) - und natürlich kann man C++,
C- und Assembler-Code kombinieren.
Ein spezieller Vorteil von C++ ist das man mehrere Instanzen eines Code-Teiles haben kann z.B.
Device Treiber wie einen UART das spart Speicherplatz und erhöht die Softwarequalität.
Außerdem kann der C++ Code leichter portiert werden.
Der verwendete Extended Embedded C++ Ansatz verbietet mit Absicht folgende C++ Features, da
diese auf einem kleinen Embedded System keinen Sinn machen:
1.) RTTI
2.) Exceptions
Weitere Info: http://www.iar.com/Products/IAR-Embedded-Workbench/Technology/Language-standards/
Das Makefile (für GCC), um den existierenden C-Code, die Libs vom RP6V2 oder RP6WIFI Bord
und den C++ Code des Sensor & I/O Bord zu kompilieren ist mit Beispielen vorhanden.
Die Software kann mit Visual Studio 2010 Express (Source Code Editor; kostenfreier Download
von Microsoft) und dem beigestellten makefile erstellt werden. Andere Editor Programme gehen
natürlich auch.
Andere Source-Code Editoren und Compiler sind auch möglich bei Verwendung eines anderen
Compilers muss jedoch das eigene makefile angepasst werden.