<?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[RS-232 Schnittstelle]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich arbeite mit Visual C++ 6.0 und möchte auf die RS-232 Schnittstelle zugreifen! Als C++ Starter hab ich natürlich nicht gerade den Durchblick .. kann mir da jemand auf die Sprünge helfen? Evtl. gibt's ne Art DLL, die man einbinden kann?!?</p>
<p>Besten Dank!</p>
<p>Gruß<br />
daMike</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143761/rs-232-schnittstelle</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Jul 2026 16:19:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143761.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 11 Apr 2006 14:26:25 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to RS-232 Schnittstelle on Tue, 11 Apr 2006 14:26:25 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich arbeite mit Visual C++ 6.0 und möchte auf die RS-232 Schnittstelle zugreifen! Als C++ Starter hab ich natürlich nicht gerade den Durchblick .. kann mir da jemand auf die Sprünge helfen? Evtl. gibt's ne Art DLL, die man einbinden kann?!?</p>
<p>Besten Dank!</p>
<p>Gruß<br />
daMike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035296</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Tue, 11 Apr 2006 14:26:25 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Tue, 11 Apr 2006 15:34:36 GMT]]></title><description><![CDATA[<p>Da kriegst du Informationen über die RS232 Schnittstelle.</p>
<p><a href="http://www.codeproject.com/system/serial.asp" rel="nofollow">http://www.codeproject.com/system/serial.asp</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035363</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035363</guid><dc:creator><![CDATA[crolep]]></dc:creator><pubDate>Tue, 11 Apr 2006 15:34:36 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 19 Apr 2006 14:51:08 GMT]]></title><description><![CDATA[<p>Besten Dank! Der Link ist super! Hast Du die Files auch verwendet? Bis jetzt kann ich PORT auf/zu und Daten empfangen. Das schreiben liefert zwar keinen Fehler, aber das angsprochene Geärt reagiert darauf nicht?!? Sobald ich mit einem anderen Tool das Senden von Daten im Gerät aktiviere, kann ich mit meinem Programm Daten empfangen! Habe den Code bei einem Adapter (PIN2 auf PIN3) getestet, wobei alles super funktioniert hat. Jedes geschriebene Zeichen konnte auch wieder eingelesen werden.</p>
<p>Anbei mein Code für's schreiben! Ich verwende Visual C++ 6.0 MFC Applikation!</p>
<p>CSerial serial1; // Wurde Global definiert!</p>
<pre><code>// Kommando schicken	
	serial1.Write(TxD_Kommando);

	// Use 'non-blocking' reads, because we don't know how many bytes
    // will be received. This is normally the most convenient mode
    // (and also the default mode for reading data).
    serial1.SetupReadTimeouts(CSerial::EReadTimeoutNonblocking);	
	sleep(100);			//Wartezeit	oder mit &quot;wait(1);&quot;	
	//serial1.WaitEvent();

	// Read data, until there is nothing left
    DWORD dwBytesRead = 0;
    BYTE  abBuffer[20];

    do
    {
    // Read data from the COM-port
    serial1.Read(abBuffer,sizeof(abBuffer),&amp;dwBytesRead);

	    if (dwBytesRead &gt; 0)
        {	// Ausgabe auf Empfangsanzeige
			RxD_Daten = abBuffer;

			SetDlgItemText(IDC_Empfangen,RxD_Daten);				
		}

    }    
    while (dwBytesRead == sizeof(abBuffer));
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1040633</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1040633</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Wed, 19 Apr 2006 14:51:08 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 19 Apr 2006 15:38:04 GMT]]></title><description><![CDATA[<p>daMike schrieb:</p>
<blockquote>
<p>Besten Dank! Der Link ist super! Hast Du die Files auch verwendet? Bis jetzt kann ich PORT auf/zu und Daten empfangen. Das schreiben liefert zwar keinen Fehler, aber das angsprochene Geärt reagiert darauf nicht?!? Sobald ich mit einem anderen Tool das Senden von Daten im Gerät aktiviere, kann ich mit meinem Programm Daten empfangen! Habe den Code bei einem Adapter (PIN2 auf PIN3) getestet, wobei alles super funktioniert hat. Jedes geschriebene Zeichen konnte auch wieder eingelesen werden.</p>
</blockquote>
<p>Stimmen auch die Einstellungen für Anzahl der Datenbits, Anzahl der Stoppbits, Parität und Handshaking? Hatte damit auch schon so manches Problem damit. Ich finde das sehr kompliziert. Verwende doch die Klasse CSerialMFC und Du musst Dich nicht mit irgendwelchen Timeouts und Sleeps rumärgern. Liegen Daten am Port an wird eine Windows-Message geschickt, die Du dann nur in einer Routine behandeln musst. Weiß ja nicht was Du da gerade programmierst?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1040679</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1040679</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Wed, 19 Apr 2006 15:38:04 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Thu, 20 Apr 2006 15:07:14 GMT]]></title><description><![CDATA[<p>würde ja gerne die CSerialMFC benützen, jedoch weis ich nicht, wie ich den Port öffnen kann <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> ?!?! Kannst Du mir ein Beispiel für einen Aufruf dieser Methode zeigen? Wie nimmt man die Open Funktion her .. Übergabeparameter?!?</p>
<pre><code>LONG CSerialWnd::Open (LPCTSTR lpszDevice, HWND hwndDest, UINT nComMsg, LPARAM lParam, DWORD dwInQueue, DWORD dwOutQueue)
</code></pre>
<p>Weist Du, wie ich den Typ &quot;DWORD&quot; in einen &quot;double&quot; umwandeln kann???</p>
<p>Besten Dank!</p>
<p>Gruß<br />
daMike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041366</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041366</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Thu, 20 Apr 2006 15:07:14 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Thu, 20 Apr 2006 15:14:27 GMT]]></title><description><![CDATA[<p>Vielleicht kannst Du mir das mal zeigen, wie man ein Ereignis behandelt, das von der COM Schnittstelle ausgelöst wird .. bin noch C++ Barfussläufer <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Gruß<br />
daMike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041370</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Thu, 20 Apr 2006 15:14:27 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Thu, 20 Apr 2006 16:55:19 GMT]]></title><description><![CDATA[<p>Da sind doch Beispiele dabei, oder? Was willst Du denn noch für Beispiele?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041446</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041446</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Thu, 20 Apr 2006 16:55:19 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 21 Apr 2006 05:55:49 GMT]]></title><description><![CDATA[<p>Ja es sind Beispiele dabei. Selbst wenn man das nicht bis ins Detail versteht kann man das zumindest ableiten. Ich hab das mal nur zum Testen mit festen Einstellungen und manueller Initialisierung gemacht. Realisiert hab ich das so (hab es im View meiner Anwendung stehen):<br />
In der Header meines View:</p>
<pre><code class="language-cpp">public:
	CSerialMFC	m_serial;

....

public:
	LRESULT OnSerialMsg (WPARAM wParam, LPARAM lParam);
	afx_msg void OnSchnittstelleStart();
</code></pre>
<pre><code class="language-cpp">void CSerial2View::OnSchnittstelleStart()
{
	// TODO: Fügen Sie hier Ihren Befehlsbehandlungscode ein.
	m_serial.Open(_T(&quot;COM1&quot;),this,WM_NULL,0,0,0);
	m_serial.Setup(CSerialMFC::EBaud1200,CSerialMFC::EData7,CSerialMFC::EParNone,CSerialMFC::EStop2);
	m_serial.SetupHandshaking(CSerialMFC::EHandshakeHardware);
}
</code></pre>
<p>Anstatt des This-Zeigers kannst Du auch direkt den Zeiger des Fensters übergeben, in dem die Behandlung stattfinden soll. WM_NULL und die letzten drei Parameter kannst Du glaub ich auch weglassen.</p>
<p>Die Setupanweisung musst Du auf Deine Bedürfnisse zuschneiden. Dann muss noch die Nachrichtenbehandlung implementieren.</p>
<pre><code class="language-cpp">// CSerial2View

IMPLEMENT_DYNCREATE(CSerial2View, CView)

BEGIN_MESSAGE_MAP(CSerial2View, CView)
	// Standarddruckbefehle
	ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
	ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
	ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
	ON_WM_SERIAL(OnSerialMsg)		//Nachrichtenbehandlung der WM_NULL der Klasse CSerialMFC
	ON_COMMAND(ID_SCHNITTSTELLE_SENDD, OnSchnittstelleSendd)
	ON_COMMAND(ID_SCHNITTSTELLE_START, OnSchnittstelleStart)
END_MESSAGE_MAP()
</code></pre>
<pre><code class="language-cpp">LRESULT CSerial2View::OnSerialMsg (WPARAM wParam, LPARAM lParam)
{

	const CSerialMFC::EEvent eEvent = CSerialMFC::EEvent(LOWORD(wParam));
	const CSerialMFC::EError eError = CSerialMFC::EError(HIWORD(wParam));
//Behandlung der auftretenden Möglichkeiten

	if (eError)
		....

	if (eEvent &amp; CSerialMFC::EEventBreak)
		....

	if (eEvent &amp; CSerialMFC::EEventError)
		....

	if (eEvent &amp; CSerialMFC::EEventRcvEv)
		....

	if (eEvent &amp; CSerial::EEventRing)
		....

	if (eEvent &amp; CSerialMFC::EEventSend)
		....
	if (eEvent &amp; CSerialMFC::EEventCTS)
		....

	if (eEvent &amp; CSerialMFC::EEventDSR)
		....

	if (eEvent &amp; CSerialMFC::EEventRLSD)
		....

	if (eEvent &amp; CSerial::EEventRecv)
		...

	return 0;
}
</code></pre>
<p>Beim Beenden natürlich das hier nicht vergessen:</p>
<pre><code class="language-cpp">CSerial2View::~CSerial2View()
{
	if (m_serial.IsOpen())
	m_serial.Close();
}
</code></pre>
<p>Bei mir läuft das soweit ganz gut.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041644</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Fri, 21 Apr 2006 05:55:49 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 21 Apr 2006 08:44:01 GMT]]></title><description><![CDATA[<p>Es funktioniert!!!</p>
<p>Habe jetzt bei CSerialMFC::EEventRecv ein sleep(100) eingefügt, damit die komplette Message in meinen Buffer wandert. Kann man das besser manchen?</p>
<p>Besten Dank an alle!!</p>
<p>Gruß<br />
daMike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041751</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041751</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Fri, 21 Apr 2006 08:44:01 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 21 Apr 2006 09:03:14 GMT]]></title><description><![CDATA[<p>Ja! Du musst warten bis alle Daten da sind!!!<br />
I.d.R. hat das &quot;Protokoll&quot; entweder eine Ende-Marke oder die Länger ist sonstwie irgendwie implizit/explizit bekannt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041767</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041767</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Fri, 21 Apr 2006 09:03:14 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 21 Apr 2006 11:02:20 GMT]]></title><description><![CDATA[<p>Das mit dem Sleep finde ich nicht so gut. Jochen hat Recht: entweder Du weißt wie lang die Datenkette ist oder Du hast ein Ende-Zeichen was Du auswertest.<br />
<a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/5675">@Jochen</a>: ich hab momentan das Gefühl das die Daten sehr langsam rüberkommen. Kann das leider nicht quantifizieren, da ich es noch nicht gemessen habe. Woran kann das liegen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041865</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041865</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Fri, 21 Apr 2006 11:02:20 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 21 Apr 2006 13:30:12 GMT]]></title><description><![CDATA[<p>OK! Nun läuft es soweit ganz gut, NUR muss ich das ganze für insgesamt 4 COM Schnittstellen parallel laufen lassen! Kann ich dieses ...</p>
<pre><code>LRESULT OnSerialMsg (WPARAM wParam, LPARAM lParam);
</code></pre>
<p>COM-Portspezifisch definieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041974</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041974</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Fri, 21 Apr 2006 13:30:12 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 21 Apr 2006 13:57:08 GMT]]></title><description><![CDATA[<p>Das ist eine gute Frage. Habe bisher nur immer eine Schnittstelle bearbeitet. Habe dazu zwei Ideen ohne zu wissen ob die richtig sind oder funktionieren.</p>
<p>1. Unterschiedliche Windows-Messages<br />
Bei Initialiseren kann man doch als Parameter eine Message übergeben. Wenn man die unterschiedlich macht könnte man anhand der Message erfragen, woher der Event gerade kommt.</p>
<p>2. Verknüpfung der einzelnen Schnittstellen an eigene Views<br />
Für jede Schnittstelle wird ein eigenes Fenster (View) geschaffen. Jedes View hat ja eine eigene Messagemap in der dann die Events verarbeitet werden.</p>
<p>Kann mir gut vorstellen das letzteres funktioniert. Aber vielleicht liege ich ja auch total falsch.</p>
<p>Have a nice weekend....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1041995</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1041995</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Fri, 21 Apr 2006 13:57:08 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Tue, 25 Apr 2006 12:34:03 GMT]]></title><description><![CDATA[<p>Hallo, bin immer noch an der RS-232 dran .. habe auf der <a href="http://www.codeproject.com/system/serial.asp" rel="nofollow">http://www.codeproject.com/system/serial.asp</a> folgendes gefunden ..</p>
<blockquote>
<p>I am using 4 serial ports to receive and transmit to 4 devices.<br />
I have extended the CSerialEx class as my application is Win32<br />
Console application, running on Windows 98. I have masked the<br />
class the set an event of reception of an event character, 0x0a.<br />
The data from the devices comes in about every half a second and<br />
is about 100 to 150 bytes long.</p>
</blockquote>
<p>Könnt Ihr damit was anfangen?</p>
<p>Gruß<br />
daMike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1044778</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1044778</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Tue, 25 Apr 2006 12:34:03 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Tue, 25 Apr 2006 13:46:53 GMT]]></title><description><![CDATA[<p>Ist da irgendwo eine Frage darin versteckt? Das ist doch nur eine Aussage...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1044839</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1044839</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 25 Apr 2006 13:46:53 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Tue, 25 Apr 2006 14:08:26 GMT]]></title><description><![CDATA[<p>Indirekt schon <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Habe keine Ahnung was er meint, bzw. gemacht hat, damit er mehr als einen Port verwenden kann?!? Wie kann ich die Events der 4 RS-232 portselektiv gestalten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1044868</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1044868</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Tue, 25 Apr 2006 14:08:26 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Tue, 25 Apr 2006 14:34:54 GMT]]></title><description><![CDATA[<p>Du hättest mal zu Ende lesen sollen.</p>
<blockquote>
<p>I am using 4 serial ports to receive and transmit to 4 devices. I have extended the CSerialEx class as my application is Win32 Console application, running on Windows 98. I have masked the class the set an event of reception of an event character, 0x0a. The data from the devices comes in about every half a second and is about 100 to 150 bytes long.</p>
<p>The problem. Everything runs pretty good except that sometimes the data received from one port( device ) gets mapped to data from another port. For example, data supposedly from port 3, gets read in from port 4. It is as if, the ports are not unique and independent sometimes.</p>
<p>Does any one know how to resolve this?</p>
</blockquote>
<blockquote>
<p>Found the problem...in the demo app. where the data is read in(below), the array abBuffer is declared as static. The price you pay for just copyiong and pasting i guess</p>
<p>// Read data, until there is nothing left<br />
DWORD dwBytesRead = 0;<br />
BYTE abBuffer[100];<br />
do<br />
{<br />
// Read data from the COM-port<br />
serial.Read(abBuffer,sizeof(abBuffer),&amp;dwBytesRead);<br />
if (dwBytesRead &gt; 0)<br />
{<br />
// TODO: Process the data<br />
}<br />
}<br />
while (dwBytesRead == sizeof(abBuffer));</p>
</blockquote>
<p>Frage ist da auch keine drin versteckt. Ich denke aber, dass es Dein Problem trotzdem nicht löst. Hast Du das mal mit den verschiedenen Views ausprobiert?</p>
<p>Es steht ja jetzt immer noch die Frage im Raum ob man eine Nachrichtenbehandlungsroutine schreibt und in der dann rausfinden muss, von welcher Schnittstelle die Message kommt oder durch unterwschiedliche Messages verschiedene Routinen bedient werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1044878</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1044878</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Tue, 25 Apr 2006 14:34:54 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 26 Apr 2006 09:18:38 GMT]]></title><description><![CDATA[<p>Prinzipiell wäre es mir egal, von welchem Port die Daten kommen! Anhand der Message (header) kann ich den Port nachträglich identifizieren. Nun kann ich an alle COM-Ports senden, aber nur von COM1 empfangen, d.h. nur bei COM1 wird ein Event ausgelöst. Kann ich die anderen 3 Ports über die gleiche Schiene laufen lassen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1045487</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045487</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Wed, 26 Apr 2006 09:18:38 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 26 Apr 2006 09:41:01 GMT]]></title><description><![CDATA[<p>Warum nicht? Du musst einfach nur drei Instanzen der CSerialMFC erzeugen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1045507</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045507</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Wed, 26 Apr 2006 09:41:01 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 26 Apr 2006 09:58:22 GMT]]></title><description><![CDATA[<p>Sorry, habe nur von COM1 gelesen!! Mein Fehler! Was passiert eigentlich, wenn sich das Event von COM1 und COM2 überschneiden? Können Daten verloren gehen? Arbeite mit 115200Baud!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1045532</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045532</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Wed, 26 Apr 2006 09:58:22 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 26 Apr 2006 10:14:22 GMT]]></title><description><![CDATA[<p>Warum sollen da Daten verloren gehen? Die Events kommen ja bei Dir nacheinander an...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1045542</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045542</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Wed, 26 Apr 2006 10:14:22 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 26 Apr 2006 11:00:50 GMT]]></title><description><![CDATA[<p>Ich habe 2 GPS Empfänger mit jeweils 2 COM Ports! Auf jedem PORT gebe ich eine bestimmt Message (v, Position, etc.) aus, d.h. das alle 4 Ports im 10Hz/100Hz Takt Daten an mich schicken. Wenn ich mit RTS/CTS übertrage, sollte es keine Probleme geben, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1045577</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045577</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Wed, 26 Apr 2006 11:00:50 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Wed, 26 Apr 2006 11:20:36 GMT]]></title><description><![CDATA[<p>daMike schrieb:</p>
<blockquote>
<p>Wenn ich mit RTS/CTS übertrage, sollte es keine Probleme geben, oder?</p>
</blockquote>
<p>kommt drauf an. wenn deine datenquellen schneller senden als du's abholst ist flusskontrolle ein 'muss', wenn du schneller bist brauchste es nicht. windoofs puffert rs232 daten. die puffergrösse kannste einstellen mit 'SetupComm' und den momentanen füllstand bekommste mit 'ClearCommError'.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1045586</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1045586</guid><dc:creator><![CDATA[net 0]]></dc:creator><pubDate>Wed, 26 Apr 2006 11:20:36 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 16 Jun 2006 08:21:25 GMT]]></title><description><![CDATA[<p>Hey, nach längerer Zeit wieder eine Frage zur seriellen Schnittstelle ..</p>
<p>Daten empfangen und senden funktioniert .. sobald ich aber einen anderen Prozess anstoße, wird dieser durchgearbeitet und die Prozessorlast geht sofort auf 100%.<br />
Ich empfange Daten im 1Hz Takt mit einer Messagelänge von ca. 150Byte! Schätze mal, dass der Header der ankommenden Daten nach FIFO Prinzip unbearbeiten durch den Buffer geschoben wird und meine Event-Routine</p>
<blockquote>
<p>OnSerialMsg</p>
</blockquote>
<p>dann vergeblich versucht aus den restlichen Daten schlau zu werden! Manchmal fängt sich die Event-Routine wieder .. evtl. davon abhängig wo er nach der Berechnung datenmäßig einsteigt?!?</p>
<p>Kann man paralle Berechnungen mit &quot;niedriger Priorität&quot; versehen, dass immer die COM Schnittstellendaten sauber behandelt werden, d.h. nur wenn keine Daten ankommen die prallele Berechnung durchgeführt/vorgesetzt wird??</p>
<p>Gruß<br />
daMike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078684</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078684</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Fri, 16 Jun 2006 08:21:25 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 16 Jun 2006 08:25:52 GMT]]></title><description><![CDATA[<p>Ich verstehe Dein Problem nicht ganz...<br />
Du musst ja irgendwie erkennen, wann Deine Nachricht beginnt... die Daten kommen ja meistens nicht gemeinsam an, sondern in mehreren &quot;Happen&quot;...</p>
<p>Was das allerdings mit der Prozessorlast zu tun haben soll verstehe ich nicht ganz...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078687</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078687</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Fri, 16 Jun 2006 08:25:52 GMT</pubDate></item><item><title><![CDATA[Reply to RS-232 Schnittstelle on Fri, 16 Jun 2006 12:23:11 GMT]]></title><description><![CDATA[<p>Hi, also ...</p>
<p>normalerweise sollte je Message sowas kommen ..</p>
<blockquote>
<p><strong>PS</strong>007aödjfaksdfassdjfölasksd_<strong>GT</strong>009fölak_<strong>PV</strong>043ssjdföasdfsadffd</p>
</blockquote>
<p>also immer mit PS beginnend! Funktioniert auch, solange ich nichts anderes machen!<br />
Sobald ich jedoch einen anderen Prozess anstoße, z.B. Button drücken um eine Berechnung ausführen zu lassen, erhalte ich nur noch ein Fragment der Nachricht! Soll heißen, ich lese zwar 200Byte ein, aber der Inhalt spiegelt nicht mehr eine einzelne Message wieder sondern (vermutlich) zwei überlappende Messages! Manchmal bekomme ich auch nur sowas ..</p>
<blockquote>
<p>ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ....ÜÜÜÜÜÜÜÜ</p>
</blockquote>
<p>Wo das herkommt ...? Die Quelle spuckt immer die gleichen Messages aus!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1078844</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1078844</guid><dc:creator><![CDATA[daMike]]></dc:creator><pubDate>Fri, 16 Jun 2006 12:23:11 GMT</pubDate></item></channel></rss>