-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!go
blin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt
-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Date: Wed, 28 Jan 2015 10:52:52 +0100
From: Atlantis <m...@w...pl>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101
Thunderbird/31.4.0
MIME-Version: 1.0
Newsgroups: pl.misc.elektronika
Subject: Re: Stabilność ESP8266
References: <54c75516$0$2653$65785112@news.neostrada.pl>
<54c75516$0$2653$65785112@news.neostrada.pl>
<a...@n...neostrada.pl>
<54c88f4f$0$2653$65785112@news.neostrada.pl>
<a...@n...neostrada.pl>
<a...@n...neostrada.pl>
In-Reply-To: <a...@n...neostrada.pl>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Lines: 25
Message-ID: <54c8b171$0$2651$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.13.232.147
X-Trace: 1422438769 unt-rea-a-01.news.neostrada.pl 2651 83.13.232.147:32490
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.misc.elektronika:677554
[ ukryj nagłówki ]W dniu 2015-01-28 o 10:33, Marek pisze:
> A chyba już wiem, wysyłają polecenie AT, delay oczekując na odpowiedź,
> po czym sprawdzają bufor odbiorczy uarta... ależ to jest bardzo
> nieefektywne, zamiast delay procek mógłby robić w tym czasie coś innego.
No właśnie wiem. ;)
Dlatego gdybym ja się za to zabierał, to wszystko robiłbym na flagach i
zdarzeniach. Na przykład wysyłając dane ustawiamy odpowiednią flagę i
podajemy funkcji w pętli głównej wskaźnik do bufora. Dopóki flaga jest
ustawiona, nie możemy rozpocząć kolejnego wysyłania, a czyści się ją po
odebraniu "SEND OK".
Podobnie można postąpić z "ready" i innymi sygnałami kontrolnymi.
Sprawdzane byłoby też pojawienie się ">\r\n".
Oczywiście wszystkie odpowiedzi byłyby odbierane i parsowane "w tle",
przez funkcję w pętli głównej.
Nieco problematyczny jest tylko odbiór danych, które mogą się pojawić w
dowolnym momencie jako "+IDP,<soc>,<len>:<data>\r\n".
Sęk w tym, że ciąg danych może składać się z większej ilości linii, więc
odebranie "\r\n" nie musi oznaczać końca odbioru danych. Trzeba by dać
instrukcję warunkową, która sprawdza czy linijka po ":" zawiera mniej
znaków niż "len" - jeśli tak, trzeba by uruchomić specjalny tryb odbioru
danych, w którym kolejne napływające znaki nie są parsowane jako
komendy, ale doklejane do końca bufora, aż do pobrania zadanej ilości.
Następne wpisy z tego wątku
- 28.01.15 11:35 Atlantis
- 28.01.15 12:14 Marek
- 28.01.15 12:16 Marek
- 28.01.15 12:26 Atlantis
- 28.01.15 12:36 Andrzej W.
- 28.01.15 16:23 Marek
- 28.01.15 20:28 Atlantis
- 29.01.15 01:13 Grzegorz Niemirowski
- 29.01.15 08:36 Atlantis
- 29.01.15 14:13 Marek
- 29.01.15 17:55 Atlantis
- 29.01.15 18:27 Marek
- 29.01.15 18:37 Atlantis
- 30.01.15 09:33 Atlantis
- 30.01.15 11:22 Atlantis
Najnowsze wątki z tej grupy
- odzysk z panela PV
- tuner i silnik od rolety
- Przednia lampka rowerowa Basta / AXA pod dynamo w piaście
- Boję siię capa...
- Efekt gitarowy koda kd-30 trash metal
- Re: Efekt gitarowy koda kd-30 trash metal
- Wykrywanie przerwy w długim przewodzie zakopanym w ziemi.
- PT500
- supercap
- Procesor NMOS i karta CF
- Jak sprawdzic uC
- radyjko znalazłem
- Telewizor przestał widzieć sygnał z anteny
- LED
- System operacyjny dla 6800?
Najnowsze wątki
- 2024-05-31 Mały kogenerator gazowy
- 2024-05-30 Co to znaczy wer. eksportowa? Na przykładzie motoru Java 350 Perak
- 2024-05-31 Co to znaczy wer. eksportowa? Na przykładzie motoru Java 350 Perak
- 2024-06-01 karta SD po formacie odzyskiwanie zdjęć i filmów
- 2024-06-01 Modem LTE typu pendrive z agregacją pasm
- 2024-06-01 czy grad zbił wam szybę?
- 2024-06-01 odzysk z panela PV
- 2024-06-01 Sila sygnalu routera
- 2024-06-01 Warszawa => Spedytor międzynarodowy <=
- 2024-06-01 Warszawa => Senior Developer React Native <=
- 2024-06-01 Warszawa => Senior React Native Developer <=
- 2024-06-01 Warszawa => Interactive/Experience Designer <=
- 2024-06-01 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-06-01 Gdynia => Sales Executive <=
- 2024-06-01 Łódź => Salesperson - CRM Systems <=