ATmega i SPI - pare niejasności

Witam!

Chciałbym sobie zrobić transmisję między dwoma kontrolerami po SPI. SPI dlatego, że jest i załatwia mi wiele problemów.

1) zgodnie z pdfem połączenie między master a slave odbywa się MOSI->MOSI oraz MISO->MISO. Troche to mnie dziwi, czy nie powinny być krosowane ? Chyba że ma to umożliwiać zmianę ze slave na mastera.

2) Master generuje sygnał zegarowy i slave wypycha bit po bicie cały bajt. Jak juz wypchnie, to zgłasza przerwanie, żeby nakarmić SPI następnym. Hmmm... czy mam rozumieć, że jeśli master taktuje bardzo szybko spi to slave w tym przerwaniu nie ma za bardzo czasu na podejmowanie decyzji ? Oczywiście zakładam, że przerwanie będzie pobierać dane z jakiegoś bufora w ram co powinno być szybkie, ale dalej zastanawia mnie, czy operacja wpisania następnej wartości do rejestru jest krytyczna czasowo (w końcu mówimy tutal o prędkościach max f/4 czyli 4 cykle zegarowe ?).

3) Data order - czy jest jakiś najczęsciej stosowany ?

4) Clock polarity - to samo, nie wiam jaki jest "popularny" ale zakładam, że ten który ma bit o wartości 0 (Leading Edge: Rising)

5) clock phase - to samo

Pytania 4,5 zapewne dotyczą trybu SPI (0,1,2,3) i chciałbym znać najczęsciej używany.

6) W jaki sposób master steruje /SS ? Czy on automagicznie jest aktywny gdy coś wpisuje do rejestru danych czy mam go ręcznie sterować (ale jeśli ręcznie to nie widze żadnego bitu w żadnym rejestrze) ?

Pytania 2 i 6 mogą nie mieć sensu jeśli da się przesyłać wyłącznie bajty a nie grupy bajtów (jednak pdf wyraźnie wspomina o "end of packet" co rozumiem jako grupę bajtów).

A może na sieci jest jakiś prosty turtorial z spi na atmega i nie tylko ?

Reply to
Sebastian Bialy
Loading thread data ...

No tu jest problem bo tego czasu faktycznie jest bardzo malo. Przy maksymalnej predkosci zdazysz jedynie zapisac/odczytac bufor do ramu i to wszystko.

Sebastor

Reply to
Sebastor

...nie powinno Cie dziwic :)

MOSI czyli MasterOutputSlaveInput.

Innymi slowy to tryb pracy wynusza: jesli master to output, jesli slave to input.

Pozdrawiam AA

Reply to
Andrzej Augustynowicz

formatting link
W dziale avr jest obsluga kart mmc po spi - przeanalizuj to a wiele Ci wyjasni.

Pozdrawiam AA

Reply to
Andrzej Augustynowicz

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.