<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=2245&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-02-02T16:52:40+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=2245&amp;mode</id>
<entry>
<author><name><![CDATA[marecki]]></name></author>
<updated>2013-02-02T16:52:40+01:00</updated>
<published>2013-02-02T16:52:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2245&amp;p=26620#p26620</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2245&amp;p=26620#p26620"/>
<title type="html"><![CDATA[Odczyt danych z linii RxD układu FT232RL]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2245&amp;p=26620#p26620"><![CDATA[
Witam,<br />Chcę uzyskać odczyt ramki danych z linii RxD w układzie FT232RL. Wykonałem połączenie pinów TxD i RxD więc to co nadam powienienem odebrać. Skonfigurowałem baud rate i format ramki danych chociaż w tym przypadku nie jest to konieczne. Wykonałem wysył jednej ramki danych. Zapaliły się diody led podłączone do CBUS0 i CBUS1 w odpowiedzi na wykonany wysył i odczyt. Odczyt danych podejrzewam że nastąpił (tzn coś zostało podane na RxD więc zapaliła sie LED) ale nie oznacza to że zostały one gdzieś zapisane? (lub zostały ale nie wiem gdzie i jak je wydobyć?).<br />Proszę o wskazówkę jak odbywa się odczyt stanu na linii RxD. Czy w momencie wykrycia podawania danych, są one lokowane w buforze odbiornika a następnie można je odczytać za pomocą funkcji FT_Read? Lub być może w momencie odbierania musi być wywołana jakaś funkcja? W moim przypadku nic nie jest odczytywane i zapisywane bo RxBytes = 0 <br />Poniżej mój kod:<br /><br />[syntax=c] <br />void Write (void)<br />{<br />FT_STATUS ftStatus = 2;<br />DWORD BytesWritten;<br />char TxBuffer[1] = {0}; // Contains data to write to device<br />int do_wysylu = 7;// Dane do wysyłu<br />TxBuffer[0] = (char) do_wysylu;<br /><br /><br />DWORD EventDWord;<br />DWORD TxBytes;<br />DWORD RxBytes;<br />DWORD BytesReceived;<br />char RxBuffer[256] = {0};<br /><br /><br />// WYsłanie ramki danych<br />ftStatus = FT_Write(ftHandle, TxBuffer, sizeof(TxBuffer), &amp;BytesWritten); <br />if (ftStatus == FT_OK)<br />{<br />cout &lt;&lt; &quot;Dane wyslano&quot; &lt;&lt; endl;<br />}<br />else<br />{<br />cout &lt;&lt; &quot;Nieprawidlowa wartosc zwrocona przez funkcje&quot; &lt;&lt; endl;<br />cout &lt;&lt; &quot;Status urzadzenia po odpaleniu fukcji FT_Write = &quot; &lt;&lt; ftStatus &lt;&lt; &quot; - &quot; &lt;&lt; f_ftStatus(ftStatus) &lt;&lt; endl;<br />}<br /><br /><br />FT_GetStatus(ftHandle,&amp;RxBytes,&amp;TxBytes,&amp;EventDWord);<br /><br />if (RxBytes &gt; 0)<br />{<br />ftStatus = FT_Read(ftHandle,RxBuffer,RxBytes,&amp;BytesReceived);<br />if (ftStatus == FT_OK)<br />{<br />cout &lt;&lt; &quot;Odczytano dane&quot; &lt;&lt; endl;<br />cout &lt;&lt; &quot;zawartosc buforu odbiornika ==&gt; &quot; &lt;&lt; (int) RxBuffer[0] &lt;&lt; endl;<br />}<br />else<br />{<br />cout &lt;&lt; &quot;Danych nie odczytano&quot; &lt;&lt; endl;<br />}<br />}<br />getchar();<br />getchar();<br />}<br />[/syntax]<br /><br /><span style="color: #FF0000">Kod umieszczamy w znacznikach [syntax=c] - Zielony J.</span><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=848">marecki</a> — 2 lut 2013, o 16:52</p><hr />
]]></content>
</entry>
</feed>