<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Na SPI se chain běžně používá u některých "chytrých" LEDek. Je jich
    pak třeba několik set za sebou. Obvykle mají i clock recovery, takže
    CLK a data jsou průchozí a pak je tam jeden signál strobe, nebo
    reset. A každej použije data, co jsou v něm srovna nascrollovaný v
    tom strobe okamžiku.<br>
    <br>
    PH<br>
    <br>
    <div class="moz-cite-prefix">Dne 12.05.2023 v 9:25 Jaroslav Buchta
      napsal(a):<br>
    </div>
    <blockquote type="cite"
      cite="mid:05f4f7c6-050f-b659-9d62-8c279254f27c@hascomp.cz">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <div class="moz-cite-prefix">Jestli to dobre chapu, tak mam neco
        podobneho s UART na BMS, kazdy clanek ma soji monitorovaci
        jednotku a par bajtu v obihajicim retezci, prvni byte se pak v
        kazde jednotce inkrementuje takze podle propojeni kazda vi, kde
        ma data bez dalsi konfigurace. Probiha to se zposzdenim cca 1
        byte na kazdou jednotku, prubezne se aktualizuje i CRC.<br>
      </div>
      <div class="moz-cite-prefix">S SPI by to melo jit taky, ale nevim,
        jestli bych radsi pouzil 2 rozhrani nebo spolecne hodiny pro
        vsechno...</div>
      <div class="moz-cite-prefix"><br>
      </div>
      <div class="moz-cite-prefix">Dne 12.05.2023 v 9:03 Vojtěch
        Petrucha napsal(a):<br>
      </div>
      <blockquote type="cite"
        cite="mid:20230512090315.3D570A1A@volny.cz">
        <meta http-equiv="content-type" content="text/html;
          charset=UTF-8">
        <p style="padding:0 0 0 0; margin:0 0 0 0;">mozna jako Figure 1
          zde</p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;"><a
            class="moz-txt-link-freetext"
            href="https://www.ti.com/lit/an/slaa296/slaa296.pdf?ts=1683836913829"
            moz-do-not-send="true">https://www.ti.com/lit/an/slaa296/slaa296.pdf?ts=1683836913829</a></p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;"> </p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;">akorat mi neni
          jasne, jestli by to bylo 8 byte "prikaz" pro kazdy slave
          ruznych nebo stejnych pro vsechny.., </p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;">kazdopadne jak to
          udelat v ramci slave univerzalne, aby pruzne reagoval na sve
          umisteni v chainu a tedy ruzny pruchozi pocet byte netusim...</p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;"> </p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;">v.</p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;"> </p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;"> </p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;"> </p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;"> </p>
        <p style="padding:0 0 0 0; margin:0 0 0 0;">______________________________________________________________<br>
          > Od: "Petr Labaj" <a class="moz-txt-link-rfc2396E"
            href="mailto:labaj@volny.cz" moz-do-not-send="true"><labaj@volny.cz></a><br>
          > Komu: <a class="moz-txt-link-abbreviated
            moz-txt-link-freetext" href="mailto:hw-list@list.hw.cz"
            moz-do-not-send="true">hw-list@list.hw.cz</a><br>
          > Datum: 11.05.2023 21:23<br>
          > Předmět: Re: STM32, SPI daisy chain<br>
          ></p>
        Jak je to myšleno?<br>
        SPI má z pohledu mastera 2 výstupní signály (SCK, MOSI) a 1
        vstupní (MISO).<br>
        Se kterým slave se mluví určuje CS.<br>
        Takže všechny slave mají 3 signály společné, a pak jeden pro
        každý slave <br>
        zvlášť.<br>
        Kde v tom je nebo by měl být nějaký chain? A v čem by byla
        výhoda?<br>
        <br>
        Naprogramovat DMA na přenos 8 byte je snadné.<br>
        Udělat přerušení od konce přenosu je taky snadné.<br>
        V tom přerušení posunout ukazatel na buffer další periferie a <br>
        naadresovat CS té další periferie je pár instrukcí.<br>
        A z hlediska nějakého nadřízeného programu se to bude chovat,
        jako by ty <br>
        periferie cpaly svá data do těch bufferu samy.<br>
        Ale to je obyčejné přízemní řešení, bez nějakého chainu.<br>
        <br>
        PL<br>
        <br>
        ********************<br>
        <br>
        Dne 11.5.2023 v 20:03 Petr Stehlik napsal(a):<br>
        > Chtěl bych několik STM32... zapojit do daisy chain. Jeden
        master a <br>
        > několik slave, vyčítal bych z každého slave 8 bajtu a 8
        bajtu <br>
        > zapisoval, nejlépe pomocí DMA. Že bych to prostě spustil a
        až by DMA <br>
        > doběhlo tak bych vyzvedl data a naplnil bafr novými daty
        pro slave a <br>
        > tak pořád dokola.<br>
        ><br>
        > Je to realizovatelné? Provozujete někdo něco podobného na
        STM32? Nikde <br>
        > na netu jsem nenašel konkrétní aplikaci nebo náznak řešení,
        většinou <br>
        > jen zmínka že něco takového na SPI existuje a  dál nic. Tak
        bych chtěl <br>
        > mít jistotu že jsem si nevymyslel něco co nepújde
        zprovoznit.<br>
        ><br>
        > Chtěl bych si udělat měřící sestavu kde by se vedle sebe
        skládaly <br>
        > slave, které by měřily U,I,t... a předávali to mastru,
        slave by se <br>
        > skládaly vedle sebe podle potřeného počtu. Původně jsem
        uvažoval o <br>
        > RS485 a modbusu, ale tam bych musel nastavovat adresy, u
        toho daisy <br>
        > chain bych to mohl skládat podle potřeby.<br>
      </blockquote>
    </blockquote>
  </body>
</html>