<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Datentyp Problem</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/5111def949/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/5111def949/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/5111def949/</id><updated>2020-02-28T04:44:06.838000Z</updated><subtitle>Recent posts to Datentyp Problem</subtitle><entry><title>Datentyp Problem</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/5111def949/?limit=25#e1df" rel="alternate"/><published>2020-02-28T04:44:06.838000Z</published><updated>2020-02-28T04:44:06.838000Z</updated><author><name>Uwe</name><uri>https://forge.codesys.com/u/uwe/</uri></author><id>https://forge.codesys.com77b80629b36fdf7565f6aafdd484c9f2167311ff</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Versuch mal folgende Funktion  &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;Public&lt;/span&gt; &lt;span class="nv"&gt;Declare&lt;/span&gt; &lt;span class="nv"&gt;Sub&lt;/span&gt; &lt;span class="nv"&gt;memcpy&lt;/span&gt; &lt;span class="nv"&gt;Lib&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;kernel32&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="nv"&gt;Alias&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;RtlMoveMemory&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;ByRef&lt;/span&gt; &lt;span class="nv"&gt;Destination&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Any&lt;/span&gt;, &lt;span class="nv"&gt;ByRef&lt;/span&gt; &lt;span class="nv"&gt;Source&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Any&lt;/span&gt;, &lt;span class="nv"&gt;ByVal&lt;/span&gt; &lt;span class="nv"&gt;Length&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Long&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="nv"&gt;Function&lt;/span&gt; &lt;span class="nv"&gt;ConvertToSingle&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;D0&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Byte&lt;/span&gt;, &lt;span class="nv"&gt;D1&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Byte&lt;/span&gt;, &lt;span class="nv"&gt;D2&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Byte&lt;/span&gt;, &lt;span class="nv"&gt;D3&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Byte&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Single&lt;/span&gt;
    &lt;span class="nv"&gt;Dim&lt;/span&gt; &lt;span class="nv"&gt;dword&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Long&lt;/span&gt;
    
    &lt;span class="nv"&gt;dword&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;D2&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nv"&gt;H1000000&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;Or&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;D3&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nv"&gt;H10000&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;Or&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;D0&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nv"&gt;H100&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;Or&lt;/span&gt; &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;D1&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
    &lt;span class="nv"&gt;memcpy&lt;/span&gt; &lt;span class="nv"&gt;ConvertToSingle&lt;/span&gt;, &lt;span class="nv"&gt;dword&lt;/span&gt;, &lt;span class="mi"&gt;4&lt;/span&gt;
&lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="nv"&gt;Function&lt;/span&gt;
&lt;span class="nv"&gt;Sub&lt;/span&gt; &lt;span class="nv"&gt;Example&lt;/span&gt;&lt;span class="ss"&gt;()&lt;/span&gt;
    &lt;span class="nv"&gt;Dim&lt;/span&gt; &lt;span class="nb"&gt;result&lt;/span&gt; &lt;span class="nv"&gt;As&lt;/span&gt; &lt;span class="nv"&gt;Single&lt;/span&gt;
    
    &lt;span class="nv"&gt;Rem&lt;/span&gt; &lt;span class="nv"&gt;convert&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="sc"&gt;#1234&lt;/span&gt;&lt;span class="nv"&gt;_3FC0&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;Single&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;.&lt;span class="mi"&gt;500556&lt;/span&gt;
    &lt;span class="nb"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;ConvertToSingle&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nv"&gt;H12&lt;/span&gt;, &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nv"&gt;H34&lt;/span&gt;, &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nv"&gt;H3F&lt;/span&gt;, &lt;span class="o"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nv"&gt;HC0&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
    
&lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="nv"&gt;Sub&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Uwe&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Datentyp Problem</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/5111def949/?limit=25#6ee9" rel="alternate"/><published>2020-02-28T04:44:04.641000Z</published><updated>2020-02-28T04:44:04.641000Z</updated><author><name>Jazz11</name><uri>https://forge.codesys.com/u/jazz11/</uri></author><id>https://forge.codesys.com6f697cdf4e37485f629d975764f271af9f8f58e3</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;ich möchte aus einem SPS Programm (CoDeSys) Variablen über Modbus nach EXCEL auslesen, die Übertragung ist kein Problem sondern die Aufbereitung der ausgelesenen Werte! Bei SPS Variablen des Datetyps INT oder DINT funktioniert die Nachbereitung auch bestens wenn ich in VBA folgende umrechnung mit den empfangenen Daten durchführe:&lt;/p&gt;
&lt;p&gt;For i = 0 To f_ReadCount - 1&lt;/p&gt;
&lt;p&gt;f_WordData(i) = (CSng(f_ReadBuffer(i * 2 + 0)) * 256) Or _&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;                    &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;CSng&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;f_ReadBuffer&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;i&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Next i&lt;/p&gt;
&lt;p&gt;Diese Konvertierung von BigEndian nach LittleEndian funktioniert allerdings nicht für SPS Variablen des Datentyps REAL!&lt;/p&gt;
&lt;p&gt;Kann mir vielleicht jemand sagen wie bei REAL Variablen diese Konvertierung funktioniert?&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>