Czy kolega posiada pierwszą książkę naszego wydawnictwa ?
pt: "Mirkokontrolery AVR Język C Postawy programowania" ????
jeśli tak to proszę rzucić okiem na stronę nr: 294 i drugi akapit od góry:
Cytuj:
"Wiemy jednak, że w trakcie wysyłania następuje od razu odbiór bajtu, zatem możemy sobie
napisać funkcję, która wykona dla nas od razu te dwie operacje:"
Magistrala SPI charakteryzuje się tym, że jednocześnie podczas WYSYŁANIA bajtu jest ODBIERANY bajt z układu. Nie można więc sobie najpierw coś wysłać jak to robi kolega:
Kod:
SendSpi();
a potem próbować coś odebrać
Kod:
ReceiveSpi();
jeśli mamy komunikację dwustronną oczywiście. Bo jeśli jest jednostronna to pewnie że można coś wysłać i sprawa załatwiona.
Tymczasem kolega sobie robi
SEND i w tym czasie zostaje od razu odebrany bajt, który idzie w KOSMOS
a potem kolega robi
RECEIVE co polega znowu na wysłaniu jakiegoś pustego bajtu i odebraniu czegoś tam - hmm nie wiadomo czego.
Dlatego książka w łapkę i zapoznanie się z kolejną przykładową funkcją
TransferByteSpi() będzie konieczne
a pozwoli to przy okazji chyba lepiej zrozumieć jak działa to SPI
_________________
zapraszam na blog:
http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj
Kurs EAGLE ] [ mój kanał YT TV
www.youtube.com/mirekk36 ]