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ę

pobieranie znaków w pętli nieskończonej

mikol
-
-
Posty:26
Rejestracja:6 lip 2011, o 14:22
pobieranie znaków w pętli nieskończonej

Postautor: mikol » 2 wrz 2011, o 07:57

Cześć,
Mam taki problem:
chcę pobrać trochę znaków z portu szeregowego i w tym celu czekam w pętli while na to aż pojawią się jakieś znaki na wejściu: PIR1bits.RC1IF.
Niestety oznacza to, że gdy na wejściu nie pojawiają się żadne znaki, program w praktyce się zawiesza - czeka w nieskończoność.
Jak zrobić, by gdy nie ma znaków układ przestał oczekiwać? I zrobić to tak, by nie tracić ich w przypadku gdyby nadchodziły?

Awatar użytkownika
Łukasz Krysiewicz
-
-
Posty:143
Rejestracja:8 cze 2011, o 20:03

Re: pobieranie znaków w pętli nieskończonej

Postautor: Łukasz Krysiewicz » 2 wrz 2011, o 08:15

użyj przerwań !
napisz procedurę obsługi przerwania danych przychodzących Rx układu UART,

pozdrawiam'

Awatar użytkownika
Jacek Bogusz
-
-
Posty:470
Rejestracja:12 maja 2010, o 17:37
Lokalizacja:Poznań
Kontaktowanie:

Re: pobieranie znaków w pętli nieskończonej

Postautor: Jacek Bogusz » 2 wrz 2011, o 09:49

Nic dodać, nic ująć. Czasami mam wrażenie, że osoby początkujące w programowaniu "boją się" przerwań i watchdog'a, i nie chcą ich używać :wink: A w opisywanej aplikacji wystarczyłby niewielki bufor w pamięci oraz obsługa przerwania od przychodzącej transmisji.

Wróć do „Pozostałe mikrokontrolery (PIC, MSP430, PSoC, 8051 ...)”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 13 gości