<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Array mit 6144 Werten in I2C-Devis schreiben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/8e5f2c6f5c/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/8e5f2c6f5c/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/8e5f2c6f5c/</id><updated>2022-08-24T08:45:55.220000Z</updated><subtitle>Recent posts to Array mit 6144 Werten in I2C-Devis schreiben</subtitle><entry><title>Array mit 6144 Werten in I2C-Devis schreiben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/8e5f2c6f5c/?limit=25#968a" rel="alternate"/><published>2022-08-24T08:45:55.220000Z</published><updated>2022-08-24T08:45:55.220000Z</updated><author><name>andrax</name><uri>https://forge.codesys.com/u/andrax/</uri></author><id>https://forge.codesys.comf7a3ad1f329dabf4e1b6428b3602826091f3324a</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo zusammen,&lt;/p&gt;
&lt;p&gt;ich konnte das Problem lösen und der Sensor läuft jetzt.&lt;br/&gt;
Ich erreiche zwar nur eine Samplingrate von 250Hz, aber immerhin.&lt;/p&gt;
&lt;p&gt;Grüße&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Array mit 6144 Werten in I2C-Devis schreiben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/8e5f2c6f5c/?limit=25#dbb7" rel="alternate"/><published>2022-08-24T08:45:48.107000Z</published><updated>2022-08-24T08:45:48.107000Z</updated><author><name>andrax</name><uri>https://forge.codesys.com/u/andrax/</uri></author><id>https://forge.codesys.com5a4cbdf30d9d16aa17b5d16511b83e35a61ad370</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo zusammen,&lt;/p&gt;
&lt;p&gt;ich konnte das Problem lösen und der Sensor läuft jetzt.&lt;br/&gt;
Ich erreiche zwar nur eine Samplingrate von 250Hz, aber immerhin.&lt;/p&gt;
&lt;p&gt;Grüße&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Array mit 6144 Werten in I2C-Devis schreiben</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/8e5f2c6f5c/?limit=25#2895" rel="alternate"/><published>2022-08-11T10:39:14.454000Z</published><updated>2022-08-11T10:39:14.454000Z</updated><author><name>andrax</name><uri>https://forge.codesys.com/u/andrax/</uri></author><id>https://forge.codesys.comcd80375124d5d575bfb7e7f027869a9faf64cc52</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo Leute,&lt;/p&gt;
&lt;p&gt;ich muss ein Array mit 6144 Config-daten in mein I2c Device schreiben.&lt;br/&gt;
Dazu benutze ich die Funktion _pMaster^.write&lt;/p&gt;
&lt;p&gt;Ich habe mir hierzu eine Funktion geschrieben:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;METHOD&lt;/span&gt; &lt;span class="nt"&gt;checkwriteregister&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;INT&lt;/span&gt;
&lt;span class="nt"&gt;VAR_INPUT&lt;/span&gt;
    &lt;span class="nt"&gt;usiRegister&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;USINT&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;pbyBuffer&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;POINTER&lt;/span&gt; &lt;span class="nt"&gt;TO&lt;/span&gt; &lt;span class="nt"&gt;BYTE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;nBufferLen&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;UDINT&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;
&lt;span class="nt"&gt;VAR&lt;/span&gt;
    &lt;span class="nt"&gt;byteswrite&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nd"&gt;DINT&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;

&lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;_pMaster&lt;/span&gt;&lt;span class="o"&gt;^&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;write&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;usiRegister&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pbyBuffer&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;nBufferLen&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;UDINT_TO_DINT&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;nBufferLen&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="nt"&gt;AND&lt;/span&gt; &lt;span class="nt"&gt;NOT&lt;/span&gt; &lt;span class="nt"&gt;debugSlave&lt;/span&gt;  &lt;span class="nt"&gt;THEN&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;write&lt;/span&gt; &lt;span class="nt"&gt;not&lt;/span&gt; &lt;span class="nt"&gt;suchsseccfull&lt;/span&gt;
    &lt;span class="nt"&gt;goError&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;ReadWrite&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;checkwriteregister&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;ERROR_RET_VAL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;ELSE&lt;/span&gt;
    &lt;span class="nt"&gt;checkwriteregister&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;READ_SUCCSESSFULL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Aufrufen tue ich die Funktion wie folgt:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;Case _devicestatus OF&lt;/span&gt;
&lt;span class="err"&gt;...&lt;/span&gt;
&lt;span class="err"&gt;    50:&lt;/span&gt;
&lt;span class="err"&gt;        IF checkwriteregister(16#5E, ADR(bma456_config),6144) &amp;lt; 0 THEN&lt;/span&gt;
&lt;span class="err"&gt;            RETURN;&lt;/span&gt;
&lt;span class="err"&gt;        ELSE&lt;/span&gt;
&lt;span class="err"&gt;            _devicestatus:=60;&lt;/span&gt;
&lt;span class="err"&gt;        END_IF&lt;/span&gt;
&lt;span class="err"&gt;    60:&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Leider werden die Daten aus irgendeinem Grund nicht geschrieben und ich komme nicht in den Schritt 60:&lt;/p&gt;
&lt;p&gt;Kann jemand helfen?&lt;/p&gt;
&lt;p&gt;Gruß&lt;/p&gt;
&lt;p&gt;Andre&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>