<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Pointer auf FBs bei Wago 750-841 -&gt; Fehler</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/a44357bb67/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/a44357bb67/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/a44357bb67/</id><updated>2020-02-28T05:40:52.180000Z</updated><subtitle>Recent posts to Pointer auf FBs bei Wago 750-841 -&gt; Fehler</subtitle><entry><title>Pointer auf FBs bei Wago 750-841 -&gt; Fehler</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/a44357bb67/?limit=25#4c18" rel="alternate"/><published>2020-02-28T05:40:52.180000Z</published><updated>2020-02-28T05:40:52.180000Z</updated><author><name>Fuchks</name><uri>https://forge.codesys.com/u/fuchks/</uri></author><id>https://forge.codesys.com4601e62eb42da63dde37ad6ad68df112d2230f69</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Danke, das war genau der richtige Hinweis!&lt;/p&gt;
&lt;p&gt;Interessant ist, dass es bei einer anderen For-Schleife mit einem Array mit Schleifenzähler n als USINT bei ähnlichem Aufbau - aber ohne Pointer - problemlos funktioniert!&lt;/p&gt;
&lt;p&gt;Wenn man schon mal sparsam coden will...&lt;/p&gt;
&lt;p&gt;Wie auch immer, es geht jetzt und ich bin dafür sehr dankbar!&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Pointer auf FBs bei Wago 750-841 -&gt; Fehler</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/a44357bb67/?limit=25#b18c" rel="alternate"/><published>2020-02-28T05:40:49.885000Z</published><updated>2020-02-28T05:40:49.885000Z</updated><author><name>hugo</name><uri>https://forge.codesys.com/u/hugo/</uri></author><id>https://forge.codesys.comdcebcdd70fcf9205c4458e37adcc25db6d06c3c1</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;meines erachtens muss der schleifenzähler n ein integer sein usint ist laut codesys hilfe dort nicht zulässig&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Pointer auf FBs bei Wago 750-841 -&gt; Fehler</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/a44357bb67/?limit=25#003f" rel="alternate"/><published>2020-02-28T05:40:47.721000Z</published><updated>2020-02-28T05:40:47.721000Z</updated><author><name>Fuchks</name><uri>https://forge.codesys.com/u/fuchks/</uri></author><id>https://forge.codesys.com9648178247463234e20c0baaddc18eccc85d4d68</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Kann das Problem zumindest jemand nachvollziehen?&lt;/p&gt;
&lt;p&gt;Oder hab ich da einen Gedankenfehler im Code?&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Pointer auf FBs bei Wago 750-841 -&gt; Fehler</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/a44357bb67/?limit=25#0f12" rel="alternate"/><published>2020-02-28T05:40:41.810000Z</published><updated>2020-02-28T05:40:41.810000Z</updated><author><name>Fuchks</name><uri>https://forge.codesys.com/u/fuchks/</uri></author><id>https://forge.codesys.com0ee780eef1993f5a33ddee3cb73afde324a557f0</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Vorgeschichte:&lt;/p&gt;
&lt;p&gt;Habe in der Visualisierung einige Rechtecke, die je nach einem Wert drei verschiedene Farben annehmen sollen. Dazu ist es notwendig die Rechtecke programmierfähig zu machen und einen Namen für jedes Element zu vergeben. Um bei Veränderung der Anzahl der Rechtecke möglichst flexibel zu bleiben, wollte ich die Namen zentral in einem Array von Pointern auf die Rechtecke verweisen lassen. Der Zugriff auf die Farbe erfolgt per .dwFillColor, allerdings stürtzt mir die Wago bei dem Versuch einer Zuweisung eines Wertes über die Dereferenzierung ab.&lt;/p&gt;
&lt;p&gt;Beispiel:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;Rechteck&lt;/span&gt; : &lt;span class="nv"&gt;Array&lt;/span&gt; [&lt;span class="mi"&gt;1&lt;/span&gt;..&lt;span class="nv"&gt;cAnzahlRechtecke&lt;/span&gt;] &lt;span class="nv"&gt;of&lt;/span&gt; &lt;span class="nv"&gt;Pointer&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;VisualObjectType&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;n&lt;/span&gt; : &lt;span class="nv"&gt;usint&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;cAnzahlRechtecke&lt;/span&gt; : &lt;span class="nv"&gt;USINT&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;Rechteck&lt;/span&gt;[&lt;span class="mi"&gt;1&lt;/span&gt;] :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;adr&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;Rechteck1&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;; (* Pointer auf das erste Rechteck *)&lt;/span&gt;
&lt;span class="nv"&gt;Rechteck&lt;/span&gt;[&lt;span class="mi"&gt;2&lt;/span&gt;] :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;adr&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;Rechteck2&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;; (* Pointer auf das zweite Rechteck *)&lt;/span&gt;
&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nv"&gt;n&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;cAnzahlRechtecke&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;
   &lt;span class="nv"&gt;Rechteck&lt;/span&gt;[&lt;span class="nv"&gt;n&lt;/span&gt;]&lt;span class="o"&gt;^&lt;/span&gt;.&lt;span class="nv"&gt;dwFillColor&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="sc"&gt;#000000&lt;/span&gt;&lt;span class="nv"&gt;FF&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;end_for&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Dabei verursacht die Wago eine Exception NONCONTINUABLE.&lt;/p&gt;
&lt;p&gt;Weise ich allerdings die Farbe direkt zu, dann geht alles Problemlos.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="n"&gt;Rechteck1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;dwFillColor&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="o"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;000000&lt;/span&gt;&lt;span class="n"&gt;FF&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="n"&gt;Rechteck2&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;dwFillColor&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="o"&gt;#&lt;/span&gt;&lt;span class="mi"&gt;000000&lt;/span&gt;&lt;span class="n"&gt;FF&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Auch ein Pointer direkt auf dwFillColor bricht mit demselben Fehler ab.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;Rechteck&lt;/span&gt; : &lt;span class="nv"&gt;Array&lt;/span&gt; [&lt;span class="mi"&gt;1&lt;/span&gt;..&lt;span class="nv"&gt;cAnzahlRechtecke&lt;/span&gt;] &lt;span class="nv"&gt;of&lt;/span&gt; &lt;span class="nv"&gt;Pointer&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;dword&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;n&lt;/span&gt; : &lt;span class="nv"&gt;usint&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;cAnzahlRechtecke&lt;/span&gt; : &lt;span class="nv"&gt;USINT&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;Rechteck&lt;/span&gt;[&lt;span class="mi"&gt;1&lt;/span&gt;] :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;adr&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;Rechteck1&lt;/span&gt;.&lt;span class="nv"&gt;dwFillColor&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;; (* Pointer auf das erste Rechteck *)&lt;/span&gt;
&lt;span class="nv"&gt;Rechteck&lt;/span&gt;[&lt;span class="mi"&gt;2&lt;/span&gt;] :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;adr&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;Rechteck2&lt;/span&gt;.&lt;span class="nv"&gt;dwFillColor&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;; (* Pointer auf das zweite Rechteck *)&lt;/span&gt;
&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nv"&gt;n&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;cAnzahlRechtecke&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt;
   &lt;span class="nv"&gt;Rechteck&lt;/span&gt;[&lt;span class="nv"&gt;n&lt;/span&gt;]&lt;span class="o"&gt;^&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="sc"&gt;#000000&lt;/span&gt;&lt;span class="nv"&gt;FF&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;end_for&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Im Onlinemodus wird die Dereferenzierung des Pointers auf die Rechtecke ja mit angegeben, dort scheint alles, so wie es sein soll: dwFillColor hat den Wert, den ich in der Vis vorher zugewiesen habe.&lt;/p&gt;
&lt;p&gt;Jemand eine Idee, woran das liegt, oder ist das so generell nicht möglich oder ist das ein Fehler der Wago?&lt;/p&gt;
&lt;p&gt;Über Hinweise, wie man herausfindet, wo genau das Problem liegt, wäre ich dankbar.&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>