Hej

Mam pytanie odnośnie bufora NADAWCZEGO w obsłudze RS'a
Dokładnie to odnośnie jego 'użyteczności i przydatności'
Na wstępnie dodam, że bufor odbiorczy to naprawdę świetna sprawa, ale chyba nie do końca rozumiem bufor nadawczy.
załóżmy, że chcemy wysłać stringa
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
No i teraz to wg. mojego rozumowania wysyłany jest do bufora jest dodawany 1 char i OD RAZU leci przerwanie
ISR( USART_UDRE_vect), które wysyła ten znak.
Generalnie chodzi mi o to, że chyba NIE DA SIĘ zapełnić bufora nadawczego, bo niby w jaki sposób, skoro od razu po ustawieniu tej flagi: UCSRB |= (1<<UDRIE); realizowana jest obsługa przerwania..
Generalnie czym się różni obsługa wysłania znaku przez przerwanie od zwykłego chamskiego wysłania np. bez procedury przerwania.
Mamy taką funkcję:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
////////////////////////////////////////////////////////////////////
Popatrzmy na funkcje do wyslania stringa.
Czym się różni,
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
od
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Wg.mnie oba przypadki będą działały tak samo, a nawet ta bez obsługi przerwań SZYBCIEJ!
Powiecie.. ta bez obsługi przerwań, blokuje program główny.. no tak, ale ta z przerwaniami też, bo przecież od razu ustawia maskę przerwania i bierze się za obłsugę przerwania.
Chodzi mi o to, że bufor ODBIORCZY, to rzeczywiście ma SENS, ale nie potrafię sie doszukać sensu użycia bufora nadawczego.