Fehler beim Bearbeiten eines SPS-Objekts im Editor

In diesem Abschnitt finden Sie jene Fehler, die beim Bearbeiten eines SPS-Objekts im Editor auftreten können.
Es ist allerdings möglich, dass Fehler/Warnungen für das SPS-Objekt auftreten, wie sie beim Erstellen des ST-Codes auftreten. In diesem Fall finden Sie diese Meldung und die entsprechende Lösung unter "Fehler und Warnungen in ST."

Meldungen zu den verbindlichen Elementen

  • Fehlendes IEC-Schlüsselwort oder IEC-Bezeichner

  • Unerwartetes Zeichen 'name'

  • Konnte die Referenz auf 'Name' nicht auflösen.

  • Unerwartetes Dateiende

  • Bezeichner 'Name' bereits deklariert

  • Wert außerhalb des gültigen Bereichs

  • Ungültiger Wert für ADDRESS

  • Ungültiger Wert für PORT

  • Plattform "Name" existiert nicht

  • Ungültige Taskpriorität (gültiger Bereich: 0 - 65535).

  • Ungültige Zykluszeit (maximal zulässig: TIME#20d)

  • Zykluszeit zu klein (minimal zulässig: Wert)
    Die minimale Zykluszeit entspricht dem Wert für die Standard-Timer-Auflösung. Diese Standard-Timer-Auflösung finden Sie in "Zielsystem-spezifische Eigenschaften und Einschränkungen" pro Zielsystem angeführt.

  • Kein Task für diese Ressource definiert.

  • Keine Programminstanz für diese Ressource definiert.

  • Kein Kommunikationskanal für diese Ressource definiert.

Als Lösung für diese Fehler gilt: Löschen Sie die fehlerhafte Zeichen/Zeilen oder ersetzen Sie diese durch die korrekte Syntax für das SPS-Objekt.
Allgemeine Empfehlung: Mit Hilfe der Schnellkorrektur und Inhaltshilfe können Sie den Code schneller korrigieren. Informieren Sie sich im Abschnitt "SPS-Vorgaben im Editor für SPS-Objekt", welche Punkte Sie beim Bearbeiten eines SPS-Objekts beachten müssen.

Die Zykluszeit ist nicht am Raster von "Zahl" ausgerichtet.
Zusätzliche Information: Ihre logi.CAD 3-Version wurde von einem Systemintegrator oder logi.cals so konfiguiert, dass nur bestimmte Zykluszeiten zulässig sind .
Lösung: Korrigieren Sie die Zykluszeit auf die genannte Zahl oder ein Vielfaches davon.

Für die Plattform "Name" ist es nicht möglich, eine Anwendung zu erstellen. Der Installationspfad ist möglicherweise zu lange. Verwenden Sie die Einstellung "substPluginsFolder", um den Pfad für den Compiler zu substituieren. (Compiler-Pfad}
Lösung: Siehe "Zu langer Installationspfad verhindert das Erstellen/Laden der Anwendung".

Die Kombination aus absolutem Projektpfad, Konfigurationsname und Ressourcename ist um Zahl Zeichen zu lange. oder
Die Kombination aus absolutem Projektpfad, Konfigurationsname, Ressourcename und Tasknamen ist um Zahl Zeichen zu lang.
oder
Die Kombination aus absolutem Projektpfad, Konfigurationsname, Ressourcename und Programminstanzname ist um Zahl Zeichen zu lang.
oder
Die Kombination aus absolutem Projektpfad, Konfigurationsname, Ressourcename und Programmtypname ist um Zahl Zeichen zu lang.
Eine Folge dieser Meldung ist, dass die Anwendung nicht erstellt und auf die SPS geladen werden kann.
Lösung für ein neu zu erstellendes Projekt: Kürzen Sie den Namen oder Pfad des Projekts, indem Sie einen kürzeren Namen/Pfad beim Erstellen eingeben/auswählen.
Lösung 1 für ein bestehendes Projekt: Kürzen Sie den Namen oder Pfad eines bereits bestehenden Projekts, indem Sie z.B. das Projekt entsprechend umbenennen oder verschieben.
Lösung 2 für ein bestehendes Projekt: Kürzen Sie den Namen für die erwähnten Elemente im SPS-Objekt; also für die →Konfiguration, die →Ressource, den →Programmtyp, die Programm→instanz oder den →Task . Da einige dieser Namen in die Kombination doppelt einfließen, ist es möglicherwiese ausreichend, wenn Sie die Namen um etwa die Hälfte der erwähnten Zeichen kürzen. Beispiel: Falls die Kombination um 9 Zeichen zu lange ist, ist es bereits ausreichend, den Namen für die Konfiguration um 5 Zeichen zu kürzen.
Lösung 3 für ein bestehendes Projekt: Kombinieren Sie Lösung 1 und 2 nach Belieben.

Die Zielsystem-Parameter sind zu lang (maximal Zahl Zeichen).
Lösung 1: Kürzen Sie die Einträge zwischen TARGET und END_TARGET so weit wie möglich.
Lösung 2: Kontaktieren Sie das Support-Team von logi.cals. Übermitteln Sie dabei Ihre Kontaktinformationen, die in logi.CAD 3 erfolgten Schritte und alle Meldungen, die

in der Sicht Fehlerprotokoll, der Sicht Fehler und/oder der Sicht SPS Logging angezeigt werden.

Anwendung kann aufgrund eines ungültigen Projektpfads nicht erstellt werden.
und
Projektpfad enthält ungültige Zeichen. Pfad: Name. Gültige Zeichen: A-Z, a-z, 0-9, '.', '_', '-'
Lösung: Stellen Sie sicher, dass keine Leerzeichen oder Sonderzeichen (wie Umlaute, z.B. ä, ö, ü) im Projektnamen und im Installationspfad vorhanden sind. Falls doch, wird logi.CAD 3 die Anwendung nicht auf die SPS laden können.
Für die Pfade bzw. Projektnamen sind Buchstaben A – Z bzw. a – z (ohne Umlaute), Ziffern 0 – 9, Punkte (Zeichen .), Unterstriche (Zeichen _) und Bindestriche (Zeichen -) zulässig. Beispiele für zulässige Projektnamen: mein.Projekt, mein-Projekt, mein_Projekt_01

Diese Plattform unterstützt keine Kommunikation via Gateway.
Lösung: Tragen Sie eine Plattform ein, für die Kommunikation via Gateway möglich ist. Beispiele für solche Plattformen: ControllinoMINI, ControllinoMAXI, ControllinoMEGA, ArduinoNanoV3

Fehlende Angaben für Kommunikation via Gateway
Lösung: Vervollständigen Sie die Angaben, wie diese für eine Kommunikation via Gateway benötigt werden (siehe "Korrekte Syntax für SPS-Objekt" für mehr Informationen).

C-Code für Metadaten konnte nicht erstellt werden. Stellen Sie sicher, dass das SPS-Objekt fehlerfrei ist.
Lösung: Korrigieren Sie alle Fehler im SPS-Objekt. Danach speichern Sie das SPS-Objekt, um den benötigten C-Code erstellen zu lassen.

Meldungen zu den optionalen Elementen

Einige Elemente im SPS-Objekt sind optional. Unter "Korrekte Syntax für SPS-Objekt" sind diese Elemente mit dem Kommentar // Optional... angeführt.

Zugriff auf einen IO-Provider

IO-Service "Name": Der Wert "Name" für den Parameter "GLOBALS" wird ignoriert. und
IO-Service "Name": Der Wert "Name" für den Parameter "PARAMS" wird ignoriert.
Lösung: Löschen Sie den angegebenen Parameter, falls der generische IO-Provider verwendet wird(siehe "Revolution Pi-Projekte oder Laufzeitsystem für Revolution Pi auf Verwendung des generischen IO-Providers umstellen" für ein Beispiel eines Code-Blocks)

.

Weitere Meldungen zum IO-Provider sind unter "Fehler beim Synchronisieren mit einem IO-Provider" zu finden.

Deklaration von Ressource- oder Konfigurations-globalen Variablen: VAR_GLOBAL ... END_GLOBAL

Beim Deklarieren von Ressource- oder Konfigurations-globalen Variablen können Fehler auftreten, wie sie beim Erstellen des ST-Codes auftreten. Informieren Sie sich unter "Fehler und Warnungen in ST" über die entsprechende Lösung.

Zusätzlich können die folgenden Fehler auftreten:

"Name" mehrmals inkludiert. "Name" ist auch in "Name2" inkludiert.
Zusätzliche Information: Es sind Duplikate von der gleichen INCLUDE_GLOBAL-Anweisung (= Anweisungen mit dem gleichen GLOBALS-Abschnitt) vorhanden, und zwar in einem Programm (in einem ST-Objekt) und in einer Ressource (in einem SPS-Objekt).
Lösung: Geben Sie unterschiedliche Namen in den INCLUDE_GLOBAL-Anweisungen an. Alternative: Löschen Sie eines der Duplikate. Informationen zur Verwendung finden Sie unter "Deklaration von globalen Variablen in Global-Objekt und deren Verwendung in ST".
Solution: Enter different names

Deklaration von zusätzlichen Tasks

Zahl Tasks ohne IO-Service für das Synchronisieren von IOs gefunden, aber nur einer unterstützt.
Lösung: Zeichnen Sie nur einen der Tasks als IO-Task aus. Weitere Informationen zu Tasks und IO-Tasks finden Sie unter "Mehrere Tasks im SPS-Objekt deklarieren".

Mehrere Tasks verwenden das IO-Service "Name" für das Synchronisieren von IOs. Nur ein Task darf jeweils ein IO-Service verwenden.
Lösung: Verwenden Sie unterschiedliche IO-Services pro IO-Task. Alternative, falls noch kein IO-Task ohne IO-Service spezifiziert ist: Löschen Sie das IO-Service für einen IO-Task.

IO-Service "Name" ist nicht definiert.
Lösung: Geben Sie ein bereits definiertes IO-Service an. Ein IO-Service wird z.B. bei der Angabe für IO_IMPORT definiert.

Mehr als Zahl Tasks sind nicht erlaubt.
Lösung: Reduzieren Sie die Anzahl an eingetragenen Tasks.
Siehe "Zielsystem-spezifische Eigenschaften und Einschränkungen" für Informationen, wie viele Tasks für die verwendete SPS möglich sind.

Der Task "Name" muss eine eindeutige Priorität haben, aber "Zahl" wird mehrmals verwendet.
Lösung: Korrigieren Sie die Priorität für den angegebenen Task. Kontaktieren Sie Ihren Systemintegrator, falls Sie mehr Informationen benötigen.

Deklaration von zusätzlichen Programminstanzen

Mehr als Zahl Programminstanzen sind nicht erlaubt.
Lösung: Reduzieren Sie die Anzahl an eingetragenen Programminstanzen. Siehe "Zielsystem-spezifische Eigenschaften und Einschränkungen" für Informationen, wie viele Programminstanzen für die verwendete SPS möglich sind.

Mehrere Instanzen eines Programms mit globalen Variablen sind nicht erlaubt.
Lösung: Löschen Sie die zusätzliche Programminstanz oder geben Sie ein anderes Programm dafür an, in dem Programm-→globalen Variablen deklariert sind und das noch nicht in der Ressource instanziiert ist. Grund: E
in Programm mit globalen Variablen kann nicht mehrmals in der Ressource instanziiert werden.

Instanzspezifische Zuweisungen des Speicherorts für symbolisch dargestellte Variablen

Zusätzlich zum nachfolgend angeführten Fehler können bei den instanzspezifischen Zuweisungen des Speicherorts für symbolisch dargestellte Variablen auch Fehler auftreten, wie sie beim Erstellen des ST-Codes auftreten. Informieren Sie sich unter "Fehler und Warnungen in ST" über die entsprechende Lösung, falls Sie einen Fehler nicht in diesem Abschnitt angeführt finden.

Element "Name" im VAR_CONFIG-Abschnitt ist mehrmals angegeben.
Lösung: Benennen Sie die überzähligen Elemente um, sodass nur mehr ein Element mit dem angegebenen Namen vorhanden ist.

Element "Name" im VAR_CONFIG-Abschnitt ist nicht eindeutig.
Lösung: Benennen Sie das entsprechende Element um, sodass es mit einem eindeutigen →IEC-Bezeichner als Namen deklariert ist. Alternative: Verwenden Sie den Präfix VAR_GLOBAL oder PROGRAM, um vorzugeben, ob es sich bei dem Element um eine globale Variable oder eine Programminstanz handelt. Siehe "VAR_CONFIG-Abschnitte im SPS-Objekt deklarieren" für Details über die Verwendung des Präfixes.

Element "Name" im VAR_CONFIG-Abschnitt kann nicht aufgelöst werden.
Lösung: Stellen Sie sicher, das das entsprechende Element deklariert ist. Siehe "VAR_CONFIG-Abschnitte im SPS-Objekt deklarieren" für Details, welche Elemente im VAR_CONFIG-Abschnitt möglich sind.

"Name" mehrmals inkludiert.
Lösung: Geben Sie einen anderen Namen bei der INCLUDE_VARCFG-Anweisung an. Siehe "VAR_CONFIG-Abschnitt im VarCfg-Objekt deklarieren" für Details zur Anweisung INCLUDE_VARCFG.

"Name" darf nur auf Ressourcenebene inkludiert werden.
Lösung: Verschieben Sie die INCLUDE_VARCFG-Anweisung in die Zwischenablage (= Befehl "Ausschneiden") und fügen Sie den Inhalt an der geeigneten Stelle für die Ressource im SPS-Objekt ein. Siehe "VAR_CONFIG-Abschnitt im VarCfg-Objekt deklarieren" für Details zur Anweisung INCLUDE_VARCFG.

"Name" darf nur auf Konfigurationsebene inkludiert werden.
Lösung: Verschieben Sie die INCLUDE_VARCFG-Anweisung in die Zwischenablage (= Befehl "Ausschneiden") und fügen Sie den Inhalt an der geeigneten Stelle für eine Konfiguration im SPS-Objekt ein. Siehe "VAR_CONFIG-Abschnitt im VarCfg-Objekt deklarieren" für Details zur Anweisung INCLUDE_VARCFG.

Bezeichner "Name" sowohl mit als auch ohne Präfix deklariert.
Lösung: Löschen Sie eines der Elemente oder vergeben Sie einen Präfix für das Element ohne Präfix. Siehe "VAR_CONFIG-Abschnitte im SPS-Objekt deklarieren" für Details, welche Präfixe in einem VAR_CONFIG-Abschnitt möglich sind.

Kann Element "Name" des qualifizierten Namens "Name1.Name2.Name3..." nicht finden.
Lösung: Stellen Sie sicher, dass das Element (z.B. ein Strukturelement) im angegebenen Namen vorhanden ist.

Zu tiefe Verschachtelung bei "Name : Datentyp".
Lösung: Reduzieren Sie die Verschachtelungen für den angegebenen Datentyp.

Element "Name des qualifizierten Namens "Name1.Name2.Name3..." ist nicht eindeutig.
Lösung: Benennen Sie das entsprechende Element um, sodass es mit einem eindeutigen →IEC-Bezeichner als Namen deklariert ist. Alternative: Verwenden Sie den Präfix VAR_GLOBAL oder PROGRAM, um vorzugeben, ob es sich bei dem Element um eine globale Variable oder eine Programminstanz handelt. Siehe "VAR_CONFIG-Abschnitte im SPS-Objekt deklarieren" für Details über die Verwendung des Präfixes.

Die IEC-Hardware-Adresse "Adresse" der Variable "Name" ist ungültig: fehlender Byte-Offset.
Zusatzinformation: Falls Sie einen
IO-Provider und/oder IO-Services verwenden (durch die Angabe für IO_IMPORT im SPS-Objekt), ist es zwingend erforderlich, einen Byte-Offset in IEC-Hardware-Adressen anzugeben. Das bedeutet, Sie müssen mindestens 2 Zahlen bei Hardware-Adressen angeben (z.B. %IB1.27 für Eingang, Byte am Byte-Offset 27 vom IO-Service 1). Hardware-Adressen mit einer Zahl (wie z.B. %IB1) sind ungültig , sofern im SPS-Objekt eine Angabe für IO_IMPORT vorhanden ist und die interne IO-Service-ID 1 verwendet wird(dies ist der Fall z.B. unter Windows EtherCAT, bei Revolution Pi der generische Service für die angeschlossenen IO-Module, bei Raspbian das PiFace-Modul).
Lösung 1, falls die Angabe für IO_IMPORT benötigt wird: Geben Sie mindestens 2 Zahlen für die Hardware-Adresse an (siehe "Erforderlicher Aufbau für physikalische Adresse" unter "Deklaration von globalen Variablen in ST", falls Sie Informationen zur Syntax benötigen).
Lösung 2, falls Sie das IO-Service nicht verwenden: Löschen Sie die Angabe für IO_IMPORT.

Das Element "Name" im VAR_CONFIG-Abschnitt darf nicht initialisiert werden. oder
Das Element "Name" im VAR_CONFIG-Abschnitt muss eine physikalische Adresse haben.
Lösung: Löschen Sie die fehlerhafte Zeichen oder ersetzen Sie diese durch die korrekte Syntax für das SPS-Objekt.

Korrekte Syntax für SPS-Objekt

logi.CAD 3 unterstützt folgende Syntax für das SPS-Objekt:

Syntax
{
    CHANNEL channel-name
// Angaben bei Kommunikation mit einem Zielsystem über TCP/IP, z.B. für die integrierte SPS
        TCP
            ADDRESS := address; // Beispiel: 127.0.0.1
            PORT := port; // Beispiele: 1534 (= Standard-Port für die integrierte SPS)
// 1535 (= Standard-Port für Kommunikation via Gateway)
 
        END_TCP
}
// Optional: Die Angaben 'TARGET ... END_TARGET' sind nur bei einer Kommunikation via Gateway erforderlich.
{
TARGET target-name
// Der Systemintegrator stellt die korrekten Kommunikationsparameter 'string' zur Verfügung.
PARAMS := 'string'; // Beispiel: siehe nachfolgendes "Beispiel für Kommunikation mit Gateway"
END_TARGET
}
CONFIGURATION configuration-name_1
// Optional: Deklaration von Konfigurations-globalen Variablen durch den Verweis auf ein Global-Objekt hinzufügen
{INCLUDE_GLOBALS name_1}
{INCLUDE_GLOBALS name_2}
...
// Optional: Deklaration Konfigurations-globaler Variablen; Davor ist eine USING-Namespace-Anweisung möglich.
VAR_GLOBAL (* optional_begin *) CONSTANT RETAIN NON_RETAIN {DMA := 'string'} (* optional_end *)
name_1, name_2, ..., name_n (* optional_begin *) {'key'} AT %address (* optional_end *) : data-type|FB-type := initial-value;
...
    RESOURCE resource-name_1 ON platform-name { [ON_CHANNEL := channel-name]|[ON_TARGET := target-name, VIA_CHANNEL := channel-name]}
// Die Angabe 'ON_CHANNEL' wird bei einer Kommunikation ohne Gateway benötigt (siehe Beispiel unten).
// Optionale Alternative: Angaben 'ON_TARGET ... VIA_CHANNEL' - Diese werden bei einer Kommunikation via Gateway benötigt (siehe Beispiel unten).
// Optional: Deklaration von Ressource-globalen Variablen durch den Verweis auf ein Global-Objekt hinzufügen
{INCLUDE_GLOBALS name_1}
{INCLUDE_GLOBALS name_2}
...
 
// Optional: Deklaration Ressource-globaler Variablen; Davor ist eine USING-Namespace-Anweisung möglich.
VAR_GLOBAL (* optional_begin *) CONSTANT RETAIN NON_RETAIN {DMA := 'string'} (* optional_end *)
name_1, name_2, ..., name_n (* optional_begin *) {'key'} AT %address (* optional_end *) : data-type|FB-type := initial-value;
...
END_VAR
        TASK task-name1(INTERVAL := TIME#numberms, PRIORITY := number);
// Optional: weitere Tasks, max. 32 Tasks.
// Ein Task kann für das Synchronisieren von IOs ausgezeichnet werden. Mehrere Tasks können ausgezeichnet werden, sofern zumindest ein IO-Service für die weiteren IO-Tasks spezifiziert wird.
{ IO } TASK task-name2(INTERVAL := TIME#numberms, PRIORITY := number);
{ IO := IO-Service-name} TASK task-name2(INTERVAL := TIME#numberms, PRIORITY := number);
...
TASK task-name32(INTERVAL := TIME#numberms, PRIORITY := number);
        PROGRAM instance-name_1 WITH task-name1 :
            program-type-name_1;
// Optional: weitere Programminstanzen, die dem gleichen oder einem anderen Task zugeordnet sind
PROGRAM instance-name_2 WITH task-name1 :
program-type-name_2;
...
PROGRAM instance-name_n WITH task-name32 :
program-type-name_n;
// Optional für Ressource: instanzspezifische Zuweisungen des Speicherorts für symbolisch dargestellte Variablen durch Verweis hinzufügen
{INCLUDE_VAR_CFG name}
// Optional für Ressource: instanzspezifische Zuweisungen des Speicherorts für symbolisch dargestellte Variablen direkt in Ressource einfügen
VAR_CONFIG
name AT %address (* optional_begin *) {SIZE := value} (* optional_end *);
...
END_VAR
    END_RESOURCE
 
RESOURCE resource-name_2 ON ...
...
END_RESOURCE
...
RESOURCE resource-name_n ON ...
...
END_RESOURCE
 
// Optional für Konfiguration: instanzspezifische Zuweisungen des Speicherorts für symbolisch dargestellte Variablen durch Verweis hinzufügen
{INCLUDE_VAR_CFG name} 
// Optional für Konfiguration: instanzspezifische Zuweisungen des Speicherorts für symbolisch dargestellte Variablen direkt in Konfiguration einfügen
VAR_CONFIG
name AT %address (* optional_begin *) {SIZE := value} (* optional_end *);
...
END_VAR
END_CONFIGURATION
 
CONFIGURATION configuration-name_2
...
END_CONFIGURATION
...
CONFIGURATION configuration-name_n
...
END_CONFIGURATION

Mit Hilfe der folgenden optionalen Syntax ist es möglich, auf Hardware-IOs zuzugreifen:

    RESOURCE resource-name_1 ON platform-name {...}
// Optional: Zugriff auf einen IO-Provider
// Möglichkeit 1: Zugriff auf einen IO-Provider für EtherCAT-Feldbusse
// Die Deklaration der Ressource-globalen Variable erfolgt auf Basis einer Datei (durch das Attribut 'PARAMS').
// Aufgrund einer Synchronisation wird die Deklaration in einem Global-Objekt erstellt (durch das Attribut 'GLOBALS') .
{ IO_IMPORT PROVIDER := EtherCatProvider, SERVICE := EtherCAT, PARAMS := 'path/name_A.xml', GLOBALS := 'path/name_1' }
{ IO_IMPORT PROVIDER := EtherCatProvider, SERVICE := EtherCAT, PARAMS := 'path/name_B.xml', GLOBALS := 'path/name_2' } 
// Ohne dem optionalen Attribut 'GLOBALS' werden die Ressource-globalen Variable nicht automatisch deklariert. Dies ist sinnvoll,
// falls Sie z.B. instanzspezifischen Zuweisungen des Speicherorts in einem VAR_CONFIG-Abschnitt verwenden wollen (siehe unten).
{ IO_IMPORT PROVIDER := EtherCatProvider, SERVICE := EtherCAT, PARAMS := 'path/name_C.xml' }
// Möglichkeit 2: Zugriff auf einen generischen IO-Provider für Revolution Pi oder PiFace
{ IO_IMPORT PROVIDER := GenericProvider, SERVICE := RevolutionPi|PiFace }
... 

Mehr Informationen zu diesen Möglichkeiten finden Sie unter:

Beispiel für Kommunikation ohne Gateway

Nachdem Sie ein Projekt erstellt haben, hat das darin vorgegebene SPS-Objekt local folgenden Inhalt:

Beispiel
{
CHANNEL LocalChannel
TCP
ADDRESS := 127.0.0.1;
PORT := 1534;
END_TCP
END_CHANNEL
}
CONFIGURATION LocalConfiguration
RESOURCE local ON BuiltInPlc { ON_CHANNEL := LocalChannel }
TASK DefaultTask(INTERVAL := TIME#500ms, PRIORITY := 38229);
PROGRAM Program1 WITH DefaultTask :
Program1;
END_RESOURCE
END_CONFIGURATION

Beispiel für Kommunikation mit Gateway

Das folgende Beispiel zeigt die erforderlichen Einstellung, falls das Gateway über RS-232 mit dem Zielsystem kommuniziert.

Beispiel für Controllino Mini
{
CHANNEL ControllinoMINIChannel
TCP
ADDRESS := 127.0.0.1;
PORT := 1535;
END_TCP
END_CHANNEL
}
 
{
TARGET targetControllinoMINI
PARAMS := '{
"transport": {
"type": "RS232",
"parameters": {
"port": 3,
"baud": 115200
}
},
"infrastructure": {
"programmer": "AVRDUDE",
"parameters": {
"port": 3,
"baud": 115200,
"programmer": "arduino",
"processor": "atmega328p"
}
}
}';
END_TARGET
}
 
CONFIGURATION ControllinoMINIConfiguration
RESOURCE controllinoMINI ON ControllinoMINI { ON_TARGET := targetControllinoMINI, VIA_CHANNEL := ControllinoMINIChannel }
TASK DefaultTask ( INTERVAL := TIME#500ms , PRIORITY := 38229 );
PROGRAM Program1 WITH DefaultTask :
Program1;
END_RESOURCE
END_CONFIGURATION