<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[CSerial einen Hexwert senden]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein Problem, ich steuere mit mit einer Seriellen-Klasse ein Microprozessor an. Über den ComPort 2.<br />
Wenn ich folgenden Code nehme funktioniert das alles einwandfrei:</p>
<pre><code class="language-cpp">char	cBuffer[2] = &quot;a&quot;; 
	CSerial myserial;
	myserial.Open(2,9600);
	myserial.SendData(cBuffer,1);
	myserial.Close();
</code></pre>
<p>Die Klasse ist von <a href="http://Codeprojekt.com" rel="nofollow">Codeprojekt.com</a></p>
<p>Nun muß ich aber Steuerbefehle senden und zwar als Hexadezimal Code zum Beispiel 0x03 als Befehl zum Display löschen.</p>
<p>Nun zu meiner Frage wie wandle ich den Hexwert in einen CharBuffer.</p>
<p>Ich habe folgendes versucht:</p>
<pre><code class="language-cpp">int b = 0x03;
char cBuffer[5];
itoa(b,cBuffer,16);

CSerial myserial;
	myserial.Open(2,9600);
	myserial.SendData(cBuffer,4);
	myserial.Close();
</code></pre>
<p>Erstellt wird das Programm, aber der Microcontroller sagt es käme nur die Zahl 3 an, welches ein NULLCommand ist(liegt aber am Microcontroller Programm).</p>
<p>Kann mir vielleicht jemand weiter helfen?<br />
Danke, schon mal im vorraus. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>Mfg<br />
Anlen</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/195856/cserial-einen-hexwert-senden</link><generator>RSS for Node</generator><lastBuildDate>Thu, 09 Apr 2026 13:24:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/195856.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 22 Oct 2007 17:21:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CSerial einen Hexwert senden on Mon, 22 Oct 2007 17:21:07 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe ein Problem, ich steuere mit mit einer Seriellen-Klasse ein Microprozessor an. Über den ComPort 2.<br />
Wenn ich folgenden Code nehme funktioniert das alles einwandfrei:</p>
<pre><code class="language-cpp">char	cBuffer[2] = &quot;a&quot;; 
	CSerial myserial;
	myserial.Open(2,9600);
	myserial.SendData(cBuffer,1);
	myserial.Close();
</code></pre>
<p>Die Klasse ist von <a href="http://Codeprojekt.com" rel="nofollow">Codeprojekt.com</a></p>
<p>Nun muß ich aber Steuerbefehle senden und zwar als Hexadezimal Code zum Beispiel 0x03 als Befehl zum Display löschen.</p>
<p>Nun zu meiner Frage wie wandle ich den Hexwert in einen CharBuffer.</p>
<p>Ich habe folgendes versucht:</p>
<pre><code class="language-cpp">int b = 0x03;
char cBuffer[5];
itoa(b,cBuffer,16);

CSerial myserial;
	myserial.Open(2,9600);
	myserial.SendData(cBuffer,4);
	myserial.Close();
</code></pre>
<p>Erstellt wird das Programm, aber der Microcontroller sagt es käme nur die Zahl 3 an, welches ein NULLCommand ist(liegt aber am Microcontroller Programm).</p>
<p>Kann mir vielleicht jemand weiter helfen?<br />
Danke, schon mal im vorraus. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>Mfg<br />
Anlen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1390126</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1390126</guid><dc:creator><![CDATA[anlen]]></dc:creator><pubDate>Mon, 22 Oct 2007 17:21:07 GMT</pubDate></item><item><title><![CDATA[Reply to CSerial einen Hexwert senden on Mon, 22 Oct 2007 18:38:25 GMT]]></title><description><![CDATA[<p>itoa wandelt zahlen in einen String um also wird zum Beispiel 5 zu &quot;5&quot; (entspricht 0x53 und nicht 0x05)</p>
<p>Wie ich das sehe willst du wies aussieht mehrere Steuerbefehle mit einmal senden, die dann nacheinander abgearbeitet werden.<br />
Probier mal</p>
<pre><code class="language-cpp">char acBuffer[]={0x03};//Für andere Befehle {0x03,0x09}, damit bleibt das variabel

CSerial myserial;
myserial.Open(2,9600);

for(int i=0;i&lt;sizeof(acBuffer);i++) //Nacheinander Befehle senden
    myserial.SendData(acBuffer,1);

myserial.Close();
</code></pre>
<p>So bleibt das Variabel und wird als HEX übertragen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1390173</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1390173</guid><dc:creator><![CDATA[Vox 3D]]></dc:creator><pubDate>Mon, 22 Oct 2007 18:38:25 GMT</pubDate></item><item><title><![CDATA[Reply to CSerial einen Hexwert senden on Mon, 22 Oct 2007 19:30:34 GMT]]></title><description><![CDATA[<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1390200</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1390200</guid><dc:creator><![CDATA[anlen]]></dc:creator><pubDate>Mon, 22 Oct 2007 19:30:34 GMT</pubDate></item></channel></rss>