AVR SPI a viacero slave

Miroslav Šinko sinkomiro@gmail.com
Pondělí Leden 5 00:38:35 CET 2009


D¨ža 5.1.2009, Jan Waclawek <konfera@efton.sk> nap¨Şsal(a):
> > Nehnevaj sa, ale teraz vazne nerozumiem, kde mas problem. Ako sa neda
> > nastavit ako vystup? Neda sa do DDB4 zapisat 1, alebo ako to myslis?
> > Ak mas nastaveny slave rezim a merias na pine MISO, tak este zalezi na
> > SS. Ak je SS v 1, je vystup MISO v tretom stave.
>
> Ale to tam tak nie je napisane. Precitaj si to pozorne a nevkladaj tam slova, ktore tam nie su.

To je uz jalove hadanie sa. Je to napisane, len na viacerych miestach.
Dovolim si citovat Tvoj citat z datasheetu:

A: str.125:
When configured as a Slave, the SPI interface will remain sleeping
with MISO tri-stated as long as the SS pin is driven high.

 > Je tam napisane, ze ak je SPI v Slave Mode a SS je 1, tak vsetky
piny co sa tykaju SPI su vstupy s vynimkou MISO, ktory moze uzivatel
nastavit na vystup.

Je vyraz "trojstavovy vystup" v poriadku, alebo je to oxymoron?

>Nie je tam napisane, ze ten ten pin je teraz tiez vstupom a vystupom bude buducnosti ak sa SS da na nulu. Nic take. Tvrdi sa, ze SS=1 a MISO _moze_ byt vystup. A to nie je pravda.

Ale to nik netvrdi ...nevkladaj slova... ked ho nastavis na vstup, je
vstup. Ked ho nastavis na vystup, je vystup - z kontextu SPI je to
trojstavovy vystup dalej riadeny signalom SS. bleeee, uz sa opakujem.

> > ?? Ved si napisal, ze osciloskop ukazal, ze SS riadi vystup. To je
> > predsa v sulade s datasheetom. Pre viac slave SPI zariadeni mas viac
> > samostatnych SS signalov riadenych masterom a len 1 SS moze byt v
> > rovnakom case aktivny, ale o funkcii chip selectu Ti asi nemusim pisat
> > :-)
>
> Ale to takto v datasheete nikde explicitne napisane nie je. Opakujem, su tam rozporuplne udaje. Skus si to precitat BEZ toho aby si *predpokladal*, ze to funguje tak ako ma. Skus to citat s vedomim, ze v tych AVRkach skutocne SU veci ktore nefunguju (vid multimaster I2C, pardon, TWI).

Co nie je napisane? Ze SS je slave select?

str 59
SS/OC1B ¨C Port B, Bit 2
SS: Slave Select input. When the SPI is enabled as a Slave, this pin
is configured as an input regardless of the setting of DDB2.

A kde kade inde... napr. na stranach od 124 je popisana cinnost mastra
aj slave, vratane SS. Ano, explicitne nie je napisane, ze prave jedno
slave zariadenie na zbernici moze byt v rovnakom case aktivne, ale tu
je asi namieste *predpokladat*, ze kedze SELECT signal aktivuje SPI
interface slave zariadenia (a to napisane je), tak zbernica je
vyhradena prave a len jemu na komunikaciu s mastrom. A ked nemienime
nic *predpokladat*, tak hladame na webe Atmelu v sekcii appnotes, kde
najdeme http://www.atmel.com/dyn/resources/prod_documents/doc2585.pdf
, kde je na str. 4 krasny obrazok a text:
The ability to connect several devices to the same SPI-bus is based on
the fact that only one master and only one slave is active at the same
time.

miro

PS: kto chce norskeho studenta bit, palicu si najde...

>
>
> >
> > > No nic, to nie je prvy raz, a zrejme ani posledny. Akurat som tym, aby som si to overil, ako to presne je, stratil dalsieho pol dna.
> >
> > Ber to pozitivne, niet nad to, vyskusat si cokolvek sam.
>
> No, viem si predstavit aj inak stravenu nedelu nez nadavanim na nedovareny datasheet, a este potom vysvetlovanim, ze preco je nedovareny.
>
> A, uprmine, este stale som sa nezbavil pochybnosti. Ja totiz nepatrim medzi tych, ktori skonstatuju "zafungovalo to" a su spokojni. Ja viem, "zle ale rychlo" je vitazna strategia....
>
> wek


Další informace o konferenci Hw-list