<?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=61&amp;t=10832&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-02-26T22:21:39+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=61&amp;t=10832&amp;mode</id>
<entry>
<author><name><![CDATA[karl]]></name></author>
<updated>2015-02-26T22:21:39+01:00</updated>
<published>2015-02-26T22:21:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121119#p121119</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121119#p121119"/>
<title type="html"><![CDATA[Re: Nadajnik RFM12 firmy HOPERF]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121119#p121119"><![CDATA[
Wiem jak działa spi.<br />Możemy w jednym czasie transmitować i odbierać dane w swojej książce napisałes że stan lini sdo określa kiedy możemy transmitować lub odbierać.Do tego dochodzi jeszcze taktowanie za pomocą 2 taktów zegara.<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 7 minutach ]</span></strong><br /><br />Więc mówisz tak ,,Więc ret_val to dane które możemy odebrać za pomocą tej funkcji. Jeśli nie są potrzebne w jakiejś tam sytuacji to je ignorujemy i tyle a czasem wysyłając coś otrzymujemy odpowiedzi za jednym zamachem&quot;<br /><br />Czyli jak chcę coś odebrać co to wtedy sprawdzam czy można było wtedy coś transmitować lub odbierać.Ale jak jak to działa<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 17 minutach ]</span></strong><br /><br />Dobra więc załóżmy taki przykład<br />ret_val=0b1111111111111100<br /><br />Oznacza to że moduł szybko uporał się z wysłaniem tego co chcieliśmy i teraz ponownie możemy wysyłać.<br />Jednak w 2 przypadkach modół sobie jeszcze nie poradził z transmisją tego co ostatnio chciałem.<br />No ale jak co to mi pomoże przy odbiorze danych że wtedy można było transmitować a wtedy nie???<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8685">karl</a> — 26 lut 2015, o 22:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-02-26T22:11:46+01:00</updated>
<published>2015-02-26T22:11:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121116#p121116</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121116#p121116"/>
<title type="html"><![CDATA[Re: Nadajnik RFM12 firmy HOPERF]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121116#p121116"><![CDATA[
Kolega musi może najpierw się zapoznać z magistralą SPI, to komunikacja dwustronna w jednym czasie, więc retval to dane które możemy odebrać za pomocą tej funkcji. Jeśli nie są potrzebne w jakiejś tam sytuacji to je ignorujemy i tyle a czasem wysyłając coś otrzymujemy odpowiedzi za jednym zamachem ... jeszcze raz mówię - poczyta kolega podstawy o tym jak działa SPI<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 26 lut 2015, o 22:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[karl]]></name></author>
<updated>2015-02-26T22:02:04+01:00</updated>
<published>2015-02-26T22:02:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121114#p121114</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121114#p121114"/>
<title type="html"><![CDATA[Nadajnik RFM12 firmy HOPERF]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10832&amp;p=121114#p121114"><![CDATA[
Cześć<br /><br />Czy dobrze kumam tą funkcje z zielonej książki mirka.<br /><br />[syntax=c]/*! Transmisja słowa do i z modułu RFM12 */<br />uint16_t rf12_trans(uint16_t val)<br />{<br />uint16_t ret_val = 0;<br />uint8_t i;<br /><br />RF_PORT &amp;= ~(1&lt;&lt;CS);<br />for (i=0; i&lt;16; i++)<br />{<br />if (val &amp; 0x8000) RF_PORT |= (1&lt;&lt;SDI);<br />else RF_PORT &amp;= ~(1&lt;&lt;SDI);<br /><br />ret_val &lt;&lt;= 1;<br />if (RF_PIN&amp;(1&lt;&lt;SDO)) ret_val |= 1;<br />RF_PORT |= (1&lt;&lt;SCK);<br />val &lt;&lt;= 1;<br />asm(&quot;nop&quot;);<br />asm(&quot;nop&quot;);<br />RF_PORT &amp;= ~(1&lt;&lt;SCK);<br />}<br />RF_PORT |= (1&lt;&lt;CS);<br /><br />return ret_val;<br />}[/syntax]<br /><br />1.Przy wywoływaniu funkcji podajemy komendę.<br />2.W pętli sprawdzamy najstarszy bit i w zależności od niego ustawiamy stan wysoki lub niski na lini SDI. <br />3.Powołujemy sobie jeszcze zmienną ret_val i sprawdzamy czy odczytana wartość z PORTB na pinie SDO jest rówana 1.<br />4.Cyklicznie przesuwamy obie zmienne.<br />5.Taktujemy nasz RFM12 dzięki 2 nopom.<br />6.Zwracamy ret_val<br /><br />Mam takie pytanie po co kombinacje z tą zmienną ret_val.<br />Rozumiem że sprawdzamy czy moduł coś nadal transmituję.<br />Jeśli na pinie SDO będzie panował stan niski to wtedy oznacza to że nie można transmitować i odbierać.<br />Stan wysoki oznacza że możemy transmitować i odbierać.<br /><br />Ale po co mam to sprawdzać,co mi to da że moduł wtedy coś transmitował a wtedy nie???????????????????????????????????????<br />O co chodzi z tą ret_val.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8685">karl</a> — 26 lut 2015, o 22:02</p><hr />
]]></content>
</entry>
</feed>