Herunterladen Diese Seite drucken

Nanotec C5 Handbuch Seite 62

Feldbus: usb
Vorschau ausblenden Andere Handbücher für C5:

Werbung

2. der Funktion void user(){}
In der Funktion void user() lässt sich der auszuführende Code hinterlegen.
Die Dateinamen der Benutzerprogramme dürfen nicht länger als acht Zeichen sein und drei
Zeichen im Suffix enthalten, zum Beispiel ist der Dateiname "main.cpp" zulässig, hingegen
"einLangerDateiname.cpp" nicht.
Beispiel
Programmieren eines Rechtecksignals in das Objekt 2500
1. Kopieren Sie folgenden Text in den Editor von NanoJEasy und speichern Sie diese Datei unter dem
Namen "main.cpp" ab.
// file main.cpp
map S32 outputReg1 as inout 0x2500:1
#include "wrapper.h"
// user program
void user()
{
U16 counter = 0;
while( 1 )
{
++counter;
if( counter < 100 )
InOut.outputReg1 = 0;
else if( counter < 200 )
InOut.outputReg1 = 1;
else
counter = 0;
// yield() 5 times (delay 5ms)
for(U08 i = 0; i < 5; ++i )
yield();
}
}// eof
2. Wenn das Programm fehlerfrei übersetzt wurde:
Benennen Sie die Ausgabedatei "main.usr" um in "vmmcode.usr".
3. Kopieren Sie die Datei mittels USB auf die Steuerung (siehe Kapitel "USB-Anschluss"). Zum
Starten des Programms muss die Steuerung neu gestartet werden, lesen Sie dazu bitte das Kapitel
"NanoJ-Programm" ab Schritt 2.
10.5.3 Aufbau eines Mappings
Einleitung
Mit dieser Methode lässt sich eine Variable im VMM-Programm direkt mit einem Eintrag im
Objektverzeichnis verknüpfen. Das Anlegen des Mappings muss dabei am Anfang der Datei stehen -
noch vor der #include "wrapper.h"-Anweisung. Lediglich ein Kommentar oberhalb des Mappings
ist erlaubt.
Benutzen Sie das Mapping, falls Sie den Zugriff auf ein Objekt
Tipp
im Objektverzeichnis häufiger benötigen, wie beispielsweise das
Controllword 6040
Für den einzelnen Zugriff auf Objekte bieten sich eher die Funktionen
od_write() und od_read() an (siehe Abschnitt "Zugriff auf das
Objektverzeichnis")
Version 1.1.0 / 23.07.2014 / FIR-v1426
oder das Statusword 6041
h
10 Programmierung mit NanoJ
:01
h
h
.
h
Handbuch C5 (USB)
62

Werbung

loading