-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!plix.pl!newsfeed2.plix.pl!news.supermed
ia.pl!newsfeed2.atman.pl!newsfeed.atman.pl!newsfeed.neostrada.pl!unt-exc-01.new
s.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-
mail
From: Marek <f...@f...com>
Newsgroups: pl.misc.elektronika
Subject: Re: Brak komunikacji między Atmegą a modułem GSM po rs232
Date: Sat, 15 Dec 2012 20:04:14 +0100
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
In-Reply-To: <kaiaok$1d6$1@portraits.wsisiz.edu.pl>
References: <ka5cm1$mhd$1@portraits.wsisiz.edu.pl> <ka5e2c$lj0$1@node1.news.atman.pl>
<ka5hcc$o9i$1@portraits.wsisiz.edu.pl>
<ka5l1v$pp2$1@portraits.wsisiz.edu.pl> <ka5mfv$u2g$1@node1.news.atman.pl>
<ka5o4e$qus$1@portraits.wsisiz.edu.pl> <ka5rqv$u5p$1@mx1.internetia.pl>
<ka7vc3$1qf$1@portraits.wsisiz.edu.pl>
<g...@n...chmurka.net>
<kaansn$cp6$1@portraits.wsisiz.edu.pl>
<kadac0$ptr$1@portraits.wsisiz.edu.pl>
<50ca37de$0$26695$65785112@news.neostrada.pl>
<kade5t$rht$1@portraits.wsisiz.edu.pl>
<50ca5c8a$0$26694$65785112@news.neostrada.pl>
<kag17a$80e$1@portraits.wsisiz.edu.pl>
<a...@n...neostrada.pl>
<kag9ro$bbq$1@portraits.wsisiz.edu.pl>
<a...@n...neostrada.pl>
<kaiaok$1d6$1@portraits.wsisiz.edu.pl>
Message-ID: <a...@n...neostrada.pl>
User-Agent: Groundhog Newsreader for Android
Lines: 50
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.7.250.235
X-Trace: 1355598256 unt-rea-b-01.news.neostrada.pl 1232 83.7.250.235:39587
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.misc.elektronika:639212
[ ukryj nagłówki ]On Sat, 15 Dec 2012 18:07:13 +0100, Atlantis <m...@w...pl>
wrote:
> Niezależnie od tego stan wysoki na liniach rs232 wynosi 5V. W tej
chwili
Pisząc rs232 nasz na myśli usart mcu? Używasz jakieś przejściówki
usart<->rs232 czy usart<->usb w przypadku łączenia się z pc?
> Będę wtedy chyba potrzebował jakiegoś level shiftera?
jeśli atmega nie może na 3.3v, to owszem albo level shifter ale można
też obniżyć dzielnikami a podciagnac dioda + rez. osobiście używałem
ten drugi sposób z powodzeniem.
> Krótko rzecz ujmując używam dwóch tablic: rx_buffer[] i
last_line[]. Do
ja jestem zwolennikiem buforu odbiorczego typu ring, które wypełnia
przerwanie po odbiorze znaku + funkcje odczytu zawartosci bufora.
Algorytm to m.in. dwie funkcje (w psedokodzie):
wyslij("at&f\r\n");
czekajna("OK\r\n", 1000);
Pierwsza wysyła string polecenia, druga odczytuje bufor (nie będę
wnikał w obsługę bufora, sloty itp. ) czekając aż się pojawi
oczekiwany string w określonym czasie (timeout w ms), jeśli się nie
pojawi to funkcją zwraca błąd, który możemy obsłużyć. Bufor ring
bardzo ładnie jest opisany wraz z przykładami w nocie an2120 dla
m68hc08, polecam. Oczywiście ważne jest aby do funkcji oczekującej
podawać "cały koniec" oczekiwanego stringu (wraz z "\r\n") aby nie
doprowadzić do zbyt wczesnego nadania kolejnego polecenia.
> BTW jeszcze pytanie natury formalnej. Jak inteligentny jest
kompilator w
> zakresie makrodefinicji zastępujących wartości liczbowe? Jeśli np.
dam:
> #define WARTOSC 31
> a potem w programie dam:
> if (zmienna < (WARTOSC-1))
> To w którym momencie zostanie obliczona wartość? Podczas
kompilacji, czy
> też za każdym razem uC będzie sobie musiał odejmować jedynkę? ;)
Nie powinien przy włączonej optymalizacji (to się chyba nazywa
constant folding), po prostu sprawdzi czy,zmienna<30. Ale to zalezy
od kompilatora i włączonego poziomu optymalizacji.
--
Marek
Następne wpisy z tego wątku
- 15.12.12 20:37 Atlantis
- 15.12.12 22:17 Marek
- 16.12.12 02:33 Adam Wysocki
- 16.12.12 15:01 Atlantis
- 19.12.12 10:42 Atlantis
- 19.12.12 10:50 Atlantis
- 23.12.12 15:42 Atlantis
- 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
Najnowsze wątki z tej grupy
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
- AMS spalony szybkim zasilaczem USB
Najnowsze wątki
- 2025-02-14 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-14 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-02-14 Kraków => Technical Team Leader (Clojure, Java) <=
- 2025-02-14 Ściemniacze na parkingach
- 2025-02-13 kilka pytań o klimę
- 2025-02-13 genialny pomysł
- 2025-02-12 diesel z otwartą komorą
- 2025-02-14 60 mA dużo czy spoko?
- 2025-02-13 Jaka moc wi-fi ?
- 2025-02-12 Drabina rozsuwana
- 2025-02-13 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-13 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2025-02-13 Warszawa => Staż w dziale Sprzedaży B2B <=
- 2025-02-13 Warszawa => MENA New Buissnes Manager <=
- 2025-02-13 Łódź => NodeJS Developer <=