<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div class="moz-cite-prefix">Asi nepouzivate HAL API? Mozna by se
tam dalo inspirovat, pro SPi je tam tusim funkce TransmitDMA,
ReceiveDMA a TransmitReceiveDMA</div>
<div class="moz-cite-prefix">Ale ted jsem to nekonroloval.</div>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">Dne 23.06.2021 v 9:37 Martin Locker
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:dec7a5c6500ce5f2edd82428e6e7da42@vosrk.cz">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div class="iw_mail" dir="ltr" style="font-size: 13px;">
<div>Zdravím,</div>
<div><br>
</div>
<div>narazil jsem asi na moje nepochopení SPI s využitím DMA.</div>
<div><br>
</div>
<div>Mám následující úlohu:</div>
<div>1. ze zařízení, kde je STM32 (STM32F103) jako SPI slave
periodicky vyčítám data (64B),</div>
<div>z nadřízeného systému je vyžádání dat iniciované na jednom
pinu (vnější přerušení)</div>
<div>2. občas potřebuji poslat příkaz pro změnu chování (8B) do
slave</div>
<div><br>
</div>
<div>Protože to STM32 je docela zaměstnané, chtěl jsme využít
DMA pro SPI.</div>
<div>Pokud udělám jen to odesílání dat (DMA na TX, buffer 64B),
tak to funguje ok.</div>
<div>Pokud zapnu DMA na RX (buffer 8B) i TX, tak pokud jen
odesílám data - ok, pokud ale přijde příkaz shora, tj. přijmu
těch 8B, tak se odesílání posune od těch 8B - očekávaný stav
(zatím jsem to vyřešil tím, že přijímám také 64B, ale to je
plýtvání časem).</div>
<div><br>
</div>
<div>Další pokus byl mít zapnuto DMA jen na příjem, pokud přijde
požadavek na data, tak vypnu DMA na přijmu a nastavím DMA na
vysílání (po odeslání to vrátím). Pokud pouze posílám data,
tak ok. Jakmile však něco přijmu, tak se to nějak posune a
první vysílaný znak je 0 a pak teprve následuje obsah tx
bufferu.</div>
<div><br>
</div>
<div>Asi se tam do odesílacího registru dostane při tom zapnutí
něco z toho přijmu. </div>
<div>Jak toto řešit? Díky za připomínky.</div>
<div><br>
</div>
<div class="iw-signature">
<div>S přáním pevného zdraví</div>
<div>Martin Locker</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
<p><br>
</p>
</body>
</html>