-
Data: 2012-12-23 15:42:06
Temat: Re: Brak komunikacji między Atmegą a modułem GSM po rs232
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]BTW mam jeszcze jedno pytanie o obsługę bufora odbiorczego.
Mianowicie jak uniknąć sytuacji, kiedy jakiś błąd transmisji (np.
przeinaczony znak) uniemożliwi jego normalne wyczyszczenie? Normalnie w
tym przypadku mamy do czynienia z dwiema sytuacjami:
1. Wysyłanie polecenia do modułu i oczekiwanie na odpowiedź. Tutaj mogę
wyczyścić bufor przed rozpoczęciem tej procedury i przed jej
zakończeniem (bez względu na to, czy wynik będzie pozytywny czy nie).
2. Bardziej kłopotliwa jest jednak druga sytuacja, mianowicie
oczekiwanie na konkretną wiadomość, wysłaną przez moduł w przypadku
konkretnego zdarzenia (np. "RING\r\n\r\n" przy połączeniu przychodzącym)
tutaj bufor mogę wyczyścić dopiero w przypadku rozpoznania właściwej
komendy. A co, jeśli do bufora przyjdzie coś innego? Wtedy po prostu
kolejny komunikat zostanie do niego doklejony...
Poprzednio, gdy analizowałem komunikaty linijka po linijce, przepisując
je do innej tablicy ten problem nie występował - przyjście kolejnej
linijki czyściło bufor z jego poprzedniej zawartości.
Czy istnieje jakiś sposób na nauczenie programu rozróżniania
poszczególnych komunikatów jako odrębnych całości, nawet jeśli składają
się z kilku linii? Jedyne rozwiązanie jakie w tej chwili przychodzi mi
do głowy, to zastosowanie timera, który cyklicznie czyściłby bufor,
zapobiegając "sklejeniu" dwóch komunikatów.
Następne wpisy z tego wątku
- 23.12.12 23:45 Marek
- 23.12.12 23:50 Marek
- 24.12.12 11:39 J.F.
- 24.12.12 16:41 Marek
- 26.12.12 11:24 Atlantis
- 09.01.13 20:16 Atlantis
- 09.01.13 23:45 Grzegorz Niemirowski
- 10.01.13 19:02 Atlantis
- 10.01.13 19:09 Grzegorz Niemirowski
- 10.01.13 20:56 Atlantis
- 10.01.13 21:17 Grzegorz Niemirowski
- 10.01.13 21:45 Atlantis
- 10.01.13 21:58 Grzegorz Niemirowski
- 11.01.13 10:40 Piotr Gałka
- 11.01.13 18:43 Atlantis
Najnowsze wątki z tej grupy
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
Najnowsze wątki
- 2025-07-17 Policjanci katowali niewinnego człowieka, ale są niewinni
- 2025-07-17 Warszawa => Senior IT Recruitment Consultant <=
- 2025-07-17 Warszawa => IT Hardware Specialist - Wsparcie i Konfiguracja <=
- 2025-07-17 Warszawa => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-07-16 deltaT w pompie ciepla
- 2025-07-16 dron na granicy polsko niemieckiej
- 2025-07-16 Warszawa => Senior IT Recruitment Consultant <=
- 2025-07-16 Gdańsk => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-16 Gdańsk => Delphi Programmer <=
- 2025-07-16 Warszawa => BI Developer <=
- 2025-07-16 Gdańsk => Programista Delphi <=
- 2025-07-16 chroń PESEL dziecka
- 2025-07-16 Rzeszów => Spedytor Międzynarodowy <=
- 2025-07-16 Gdańsk => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-07-16 Kraków => Kotlin Developer <=