[elektro] SPI sor

Horvath Janos winnerbt at fibermail.hu
Sun Jun 21 07:42:57 CEST 2015


Szia!
Igen, valami ilyesmi lesz a megoldás, sajnos a leírás elég szűkszavú
a kommunikációt illetően. Szóval egyenként, egész láncot írva/olvasva/
ki-NOP-olva kell kezelnem, főleg, hogy nem vagyok olyan okos, hogy
olyan programot írjak, ami egyben lekezelne mondjuk:
2. egység olvasás (3byte-ot ad vissza)
5. egység olvasás (1 byte-ot ad vissza)
Majd fussuk a sokbites köröket...
Na, majd kiderül, hogyan gondolkodtak az orosz mérnökök.
Köszönöm!
JAni

> 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]
>
> -----------------------------------------
>            elektro[-flame|-etc]
>



More information about the Elektro mailing list