<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Refferencing MCP23s17 inputs/outputs in GVL</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/518bb79792/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Runtime/thread/518bb79792/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Runtime/thread/518bb79792/</id><updated>2020-02-27T16:52:59.104000Z</updated><subtitle>Recent posts to Refferencing MCP23s17 inputs/outputs in GVL</subtitle><entry><title>Refferencing MCP23s17 inputs/outputs in GVL</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/518bb79792/?limit=25#02c5" rel="alternate"/><published>2020-02-27T16:52:59.104000Z</published><updated>2020-02-27T16:52:59.104000Z</updated><author><name>mbruck</name><uri>https://forge.codesys.com/u/mbruck/</uri></author><id>https://forge.codesys.comfd74d5255266a44670bbf4a01633053ae2fe091f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;.....&lt;br/&gt;
My intention was to declare all inputs and outputs boolean variables in one (global) place, so I can use it on several POU's. &lt;br/&gt;
I know I can use this code MCP1.byOutputsA.0 := MCP1.byInputsA.0; but i'd like to use more meaningful input/output names. &lt;br/&gt;
However I still  don't know is this&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;VAR_GLOBAL&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;in1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;BOOL&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;MCP23S17&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;byInputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;out1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;BOOL&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;MCP23S17&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;byOutputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt; 
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;correct or not ?&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Refferencing MCP23s17 inputs/outputs in GVL</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/518bb79792/?limit=25#c840" rel="alternate"/><published>2020-02-27T16:52:56.450000Z</published><updated>2020-02-27T16:52:56.450000Z</updated><author><name>fixstuff555</name><uri>https://forge.codesys.com/u/fixstuff555/</uri></author><id>https://forge.codesys.com4a6d6401159c954d53f8a94b11339a7424073e31</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;If you want something that works, it may not be exactly what you want but I would just instantiate the device in the globals, like so:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;MCP1&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;MCP23S17&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;in1&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;out1&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;and then use in the ST code of the POU like this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;in1&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;MCP1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;byInputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;out1&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;in1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;MCP1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;byOutputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;out1&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;or this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;MCP1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;byOutputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;MCP1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;byInputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Not sure if you can define like you want to in the globals somehow, but I could be wrong..&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Refferencing MCP23s17 inputs/outputs in GVL</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/518bb79792/?limit=25#2027" rel="alternate"/><published>2020-02-27T16:52:55.490000Z</published><updated>2020-02-27T16:52:55.490000Z</updated><author><name>mbruck</name><uri>https://forge.codesys.com/u/mbruck/</uri></author><id>https://forge.codesys.com8982f1816112e1e829da6fb529f87479ebe7e5a7</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I want to create and map custom boolean variable list to point to MCP23S17 input/output pins. Only what I figure out is this.&lt;/p&gt;
&lt;p&gt;I have created global variable list like this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;VAR_GLOBAL&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;in1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;BOOL&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;MCP23S17&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;byInputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="nt"&gt;out1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;BOOL&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;MCP23S17&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;byOutputsA&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;0&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt;  &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Then in POU's ST code this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;out1&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;in1&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Is this syntax ok?  What is the "proper" way to create variable map list to mpc's pins ?&lt;/p&gt;
&lt;p&gt;Thank you !&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>