[elektro] SPI sor

Pataki István pataki.istvan at freemail.hu
Sun Jun 21 02:14:15 CEST 2015


Nem olvastam bele a doksiba, csak a képeket néztem:) A Daisy chain-nél 
(39/73.o.), van egy olyan idődiagram, ahol nem emeled föl a kiküldött 
bájtok között a CS-t! Ebből arra következtetek, hogy mindaddig, amíg 
lent van a CS, addig folynak be a bitek a vezérlőkbe, mint egy 
sorbakötött regiszterbe, aztán amikor mindegyikbe betöltődik a parancs, 
akkor fölemeled a CS-t, és elkezdik feldolgozni az éppen eltárolt 
parancsot, aztán a kovetkező aktív CS-re kishiftelik magukból a 
válaszukat. De megint nem emeled föl a CS-t, küldöd nekik a NOP-okat, 
amíg meg nem érkezett az összes válasz. Tehát számon kell tartanod, hány 
bájtot vársz. Ez csak egy feltételezés, mert ha a bejövő NOP nem üti 
agyon a kimenő adatot (hiszen nem szólítod föl CS fölemeléssel a 
parancsértelmezésre), akkor elsőre működőképesnek tűnik.
pi


----- Original Message ----- 
From: "Horvath Janos" <winnerbt at fibermail.hu>
To: <elektro at tesla.hu>
Sent: Saturday, June 20, 2015 5:33 PM
Subject: Re: [elektro] SPI sor


Annyit láttam, hogy parancs írásakor a kimenet 00-00-00-00.
Na, de regiszter olvasáskor, amikor az adat jön ki (és bemegy a
következőbe...) A következő meg csinál hülyeségeket (?).
Szerencsére van NOP (00) utasítás, lehet, az egész láncot
mindig kiléptetem úgy, hogy befelé megy egy vödörnyi NOP.
Szerencsére van még megszakítás is, már mint hogy egy
olvasási parancs utáni adatfolyamot újabb parancs meg tudja
szakítani. Egyre jobban oda vagyok érte :)
(különben nagyon okos IC és jól csinálja a dolgát, mondjuk nem
low-cost)

> Amint látom, nincsen kőbe vésve, hogy a MISO mikor aktív, tehát
> ismeretlen helyzetben úgy kell kalkulálni, hogy CS alatt mindig aktív,
> és arra sem láttam egységes szabályt, mikor mit ad ki, ezért az
> összeadás eredménye bármi lehet, elsősorban rövidzár:)
> pi
>
>
> ----- Original Message -----
> From: "Pataki István" <pataki.istvan at freemail.hu>
> To: <elektro at tesla.hu>
> Sent: Saturday, June 20, 2015 4:15 PM
> Subject: Re: [elektro] SPI sor
>
>
> Mi a konkrét darab? SPI-nél alapból a vevő oldal CS után értelmezi a
> parancsot. Ez a parancs tartalmazhat azonosítót is, akkor mindegyik
> megkaphatja ugyanazt, mert csak a megszólított fog válaszolni. A
> bájtonkénti CS megszakítás nekem nagyon egyedi implementációnak tűnik.
> Nem emlékszem, hogy találkoztam volna ilyennel amit írsz, inkább a
> JTAG-et juttatja eszembe.
> pi
>
>
>
> ----- Original Message -----
> From: "Horvath Janos" <winnerbt at fibermail.hu>
> To: <elektro at tesla.hu>
> Sent: Saturday, June 20, 2015 3:06 PM
> Subject: Re: [elektro] SPI sor
>
>
> Nem én terveztem a HW-t, bár igaz, a pdf szerint sorba
> lehet kötni ezeket a vackokat. Sajnos most csak 1db van
> itt, azzal nem tudom tesztelni az elgondolásukat.
> Talán még azt lehetne csinálni, hogy olvasáskor mindegyiknek
> adok olvasási parancsot és addig nem foglalkoznak az előző adatokkal.
> (gondolom én)
> Csak nem teljesen hülyék...
> Íráskor meg újraírom az egész láncot mindig.
> vagy valami ilyesmi.
>
> JAni
>
>> Biztos, hogy ezeket gyűrűbe jó kötni és nem csillagba?
>>
>>
>> Gábor
>>
>> 2015.06.20. 14:52 keltezéssel, Horvath Janos írta:
>>> Sziasztok Nagytudásúak!
>>>
>>> Van SPI eszközből sorbakötve egy tucat.
>>> Mindegyiknek van vagy 30 regisztere és 1-2-3-4byte-os
>>> parancsai.
>>> Amikor kiküldök egy regiszterolvasási parancsot
>>> mondjuk az 5-iknek, akkor az válaszol 3 byte-ot, akkor a következő
>>> egység honnan tudja, hogy neki azt nem kell bekapnia mint parancs?
>>> Ami furcsa nekem, minden byte kiadása után kell ChipSelect
>>> inaktivitás.
>>> (mert persze arra gondoltam, hogy ameddig nincs CS felfutó él, addig
>>> "átszalad" rajta...)
>>>
>>> JAni
>
> -----------------------------------------
>            elektro[-flame|-etc]
>
> -----------------------------------------
>            elektro[-flame|-etc]
>

-----------------------------------------
          elektro[-flame|-etc]



More information about the Elektro mailing list