STM32, SPI daisy chain

Vojtěch Petrucha petrucha na volny.cz
Pátek Květen 12 09:03:15 CEST 2023


mozna jako Figure 1 zde
https://www.ti.com/lit/an/slaa296/slaa296.pdf?ts=1683836913829
 
akorat mi neni jasne, jestli by to bylo 8 byte "prikaz" pro kazdy slave ruznych nebo stejnych pro vsechny.., 
kazdopadne jak to udelat v ramci slave univerzalne, aby pruzne reagoval na sve umisteni v chainu a tedy ruzny pruchozi pocet byte netusim...
 
v.
 
 
 
 
______________________________________________________________
> Od: "Petr Labaj" <labaj na volny.cz>
> Komu: hw-list na list.hw.cz
> Datum: 11.05.2023 21:23
> Předmět: Re: STM32, SPI daisy chain
>
Jak je to myšleno?
 SPI má z pohledu mastera 2 výstupní signály (SCK, MOSI) a 1 vstupní (MISO).
 Se kterým slave se mluví určuje CS.
 Takže všechny slave mají 3 signály společné, a pak jeden pro každý slave 
 zvlášť.
 Kde v tom je nebo by měl být nějaký chain? A v čem by byla výhoda?
 
 Naprogramovat DMA na přenos 8 byte je snadné.
 Udělat přerušení od konce přenosu je taky snadné.
 V tom přerušení posunout ukazatel na buffer další periferie a 
 naadresovat CS té další periferie je pár instrukcí.
 A z hlediska nějakého nadřízeného programu se to bude chovat, jako by ty 
 periferie cpaly svá data do těch bufferu samy.
 Ale to je obyčejné přízemní řešení, bez nějakého chainu.
 
 PL
 
 ********************
 
 Dne 11.5.2023 v 20:03 Petr Stehlik napsal(a):
 > Chtěl bych několik STM32... zapojit do daisy chain. Jeden master a 
 > několik slave, vyčítal bych z každého slave 8 bajtu a 8 bajtu 
 > zapisoval, nejlépe pomocí DMA. Že bych to prostě spustil a až by DMA 
 > doběhlo tak bych vyzvedl data a naplnil bafr novými daty pro slave a 
 > tak pořád dokola.
 >
 > Je to realizovatelné? Provozujete někdo něco podobného na STM32? Nikde 
 > na netu jsem nenašel konkrétní aplikaci nebo náznak řešení, většinou 
 > jen zmínka že něco takového na SPI existuje a  dál nic. Tak bych chtěl 
 > mít jistotu že jsem si nevymyslel něco co nepújde zprovoznit.
 >
 > Chtěl bych si udělat měřící sestavu kde by se vedle sebe skládaly 
 > slave, které by měřily U,I,t... a předávali to mastru, slave by se 
 > skládaly vedle sebe podle potřeného počtu. Původně jsem uvažoval o 
 > RS485 a modbusu, ale tam bych musel nastavovat adresy, u toho daisy 
 > chain bych to mohl skládat podle potřeby.
 >
 > Díky za každé info.
 >
 > Petr
 
 _______________________________________________
 HW-list mailing list  -  sponsored by www.HW.cz
 Hw-list na list.hw.cz
 http://list.hw.cz/mailman/listinfo/hw-list <http://list.hw.cz/mailman/listinfo/hw-list>

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20230512/b66bef88/attachment.htm>


Další informace o konferenci Hw-list