Mam taki problem z ATMega8.
Wynik pewnych obliczeń w postaci zmiennej typu "long" chcę szeregowo wysłać bit po bicie do "pewnej kości".
Wymyśliłem sobie tak: za pomocą parametru "overlay" wyłuskam ze zmiennej cztery składające się na nią bajty. Następnie przechodzę do assemblera, za pomocą którego np. instrukcją ROR "obracam" każdy z bajtów "przez Carry" i to ca znajdę w "carry" wysyłam na pin. Inny pin pracuje przy tym jako "clock".
Początkowo myślałem użyć transmisji przez sprzętowy SPI, ale obawiam się że może wystąpić kolizja z programatorem gdy "kość" wisi na tych samych liniach.
Inny sposób to użycie programowego SPI na innych liniach.
Jaki sposób ma sens, jaki jest najszybszy (zależy mi na szybkości operacji)?
Pozdrawiam
Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięTransmisja szeregowa w AVR
Moderatorzy:Jacek Bogusz, robertw, k.pawliczak, Moderatorzy
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 35 gości