&gt;k čemu je pak budete potřebovat?<br />
ze by k tomu, aby mohl nasledne spocitat CRC celeho telegramu?<br />
<br />
&gt;Podle mě by se dalo spokojit i s jednodu&scaron;&scaron;&iacute; kontrolou než CRC16<br />
jj , ale tazatel pise, ze ma Cygnal procesory, to je dnes Silab a rada jejich procesoru ma hw jednotku pro vypocet CRC16, 32 takze osobne take na techto MCU pouzivam CRC16 prednostne.<br />
<br />
Souhlasim i s printf, pokud mate frontu je logickou volbou nasypat data do fronty, pak nahodit TI a frontu vysypat na port, pokud mate sbernici master slave tak MCU&nbsp;vysila jen jako odpoved na dotaz tak&nbsp;by nemel hrozit prijem noveho paketu pri zapisu&nbsp;paketu pro vysilani.<br />
SNAP&nbsp;obcas take pouzivam,&nbsp;ma sve kouzlo, je&nbsp;jednoduchy a pokud si clovek vybere jen to co potrebuje da se takove rozhrani napsat za hodku, dve.<br />
Na druhou stranu,&nbsp;protokol se nikam nesune,&nbsp;nemyslim ani tak nove verze, ale to, ze nikdo neaktualizuje, nastroje, knihovny pro PC a i vzorove implementace jsou jen v nejakem basicu, ci co to je.<br />
Alternativou muze byt MODBUS, ale jelikoz nevim o vzorove implementaci pro x52 tak zde nevidim&nbsp;jednoznacny duvod proc pouzit jeden nebo druhy protokol, krome toho , ze MODBUS je defakto prumyslovy standard.<br />
Osobne bych se asi rozhodoval podle&nbsp;dostupnosti nastroju a pro SNAP je snad jen <a href="http://www.hth.com/snap/snaptest.htm">http://www.hth.com/snap/snaptest.htm</a>&nbsp;a <a href="http://www.hth.com/snap/snaplab.htm">http://www.hth.com/snap/snaplab.htm</a>&nbsp;u MODBUS ani nevim<br />
<br />
PN<br />
&nbsp;<br />
&nbsp;<br />
<br />
_____________________________________________________________<br />
&gt; Od: "Ladislav Vaiz" &lt;spam@nagano.cz&gt;<br />
&gt; Komu: HW-news &lt;hw-list@list.hw.cz&gt;<br />
&gt; Datum: 13.06.2010 22:54<br />
&gt; Předmět: Re: Implementace protokolu pro RS-485?<br />
&gt;<br />
<br />
Zdravim,<br />
&gt;<br />
&gt; Na predstava.<br />
&gt; Komunikace je asynchronni, je tedy nutne ji v MCU zpracovavat v preruseni.<br />
<br />
Ano, hlavn&iacute; program by musel m&iacute;t definovanou a n&iacute;zkou latenci. L&eacute;pe je <br />
zpracovat přijat&yacute; paket v přeru&scaron;en&iacute;. Co s n&iacute;m d&aacute;l, z&aacute;vis&iacute; na v&aacute;s. Buď <br />
můžete nastvit př&iacute;znak a zpracov&aacute;vat v hlavn&iacute; smyčce. Nebo v hlavn&iacute; <br />
smyčce měřit a v paměti udržovat aktu&aacute;ln&iacute; teplotu. V přeru&scaron;en&iacute; pak <br />
můžete po přijet&iacute; posledn&iacute;ho znaku zakl&iacute;čovat budič a hned vys&iacute;lat. <br />
Z&aacute;lež&iacute; na konkr&eacute;tn&iacute;m př&iacute;padě, co je vhodněj&scaron;&iacute;.<br />
<br />
&gt; V preruseni se vyhodnoti zda je prijaty byte byten synchronizacnim <br />
&gt; pokud ano, tak se zjisti zda druhy byte odpovida adrese daneho MCU, <br />
&gt; pokud ano tak se tyto dva <br />
<br />
k čemu je pak budete potřebovat? Podle mě už k ničemu. Možn&aacute; adresu, <br />
abyste po přijet&iacute; cel&eacute;ho paketu věděl, zda odpov&iacute;dat. Ale to se d&aacute; <br />
nahradit jedn&iacute;m př&iacute;znakem.<br />
<br />
&gt; a vsechny nasledujci prijate byty nacpou do fronty v XRAM. Nasledne se <br />
&gt; overi zda jsou data autenticka (CRC-16), pokud ano muze dalsi funkce <br />
&gt; felegram vyhodnotit.<br />
<br />
Podle mě by se dalo spokojit i s jednodu&scaron;&scaron;&iacute; kontrolou než CRC16, ale <br />
rozhodně to ničemu nevad&iacute; a pokud ji již m&aacute;te napsanou, tak proč ne.<br />
<br />
&gt; Nebo je to cele bldost a dela se to jinak?<br />
&gt;<br />
&gt; Vysilani nevim zda resit take pres frontu v XRAM nebo felegram <br />
&gt; seskladat primo ve vysilaci funkci treba pomoci printf?<br />
<br />
J&aacute; m&aacute;m k printf v jednočipech nedůvěru, protože netu&scaron;&iacute;m, co se děje <br />
uvnitř. Raději pos&iacute;l&aacute;m data bin&aacute;rně ve form&aacute;tu nativn&iacute;m pro jednočip. PC <br />
si s t&iacute;m už porad&iacute;, l&eacute;pe se to p&iacute;&scaron;e a lad&iacute;.<br />
Pokud mus&iacute; jednočip něco dělat během odesl&aacute;n&iacute; paketu, tak bych si paket <br />
připravil v RAM a odeslal v přeru&scaron;en&iacute;. Tady si asi vystač&iacute;te s pos&iacute;l&aacute;n&iacute;m <br />
v hlavn&iacute; smyčce a ček&aacute;n&iacute; na př&iacute;znak odesl&aacute;n&iacute; (TI). Firmware tak bude <br />
jednodu&scaron;&scaron;&iacute;.<br />
Pro posl&aacute;n&iacute; p&aacute;r bytů si vystač&iacute;te s intern&iacute; RAM.<br />
<br />
L&aacute;ďa<br />
_______________________________________________<br />
HW-list mailing list &nbsp;- &nbsp;sponsored by www.HW.cz<br />
Hw-list@list.hw.cz<br />
<a href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a><br />