Komunikacja AVR z siemensem S35

Feb 01, 2006 7 Replies

Witam Planuje sobie zbudowac, system oparty na Atmega8 wspó³pracuj±cy z Siemensem S35. Obecnie sprawa wyglada mniej wiecej tak: podlaczylem tel do procka, napisalem, prosty programik w bascom, ktory wysyla komende do telefonu i dupa. Zero zycia. Najgorsze jest to , ze nie mam pojecia co moze byc zle. Normalnie zalamka, bo jak lacze tel z pc przez kabelek to wszystko gra. Jesli ktos sie orientuje troche w temacie to prossze o jakas podpowiedz, ewentualnie opis w jaki sposob podlaczyc telefon z prockiem (poprawnie), oraz co wysylac do telefonu (najlepiej jakis prosty programik, ktory pokaze ze to jednak bedzie ¿y³o) ? Czy moze byc taka sytuacja ze atmega8 nie wyrabia z predkoscia przesylu



19200, przy ustawieniach fabrycznych wew. generatora RC (1MHz)?? Pzdrawiam TsfJacek

Rozumiem ze transmisja leci przez RS232. Moze sprawdz jak AVR przesyla dane do PC. Musisz uruchomic na PC jakas aplikacje która nasluchiwalaby Port RS232 i wtedy zrobic próbe AVR-a.

Zalezy jak program napisales, ale _cokolwiek_ powinienes odebrac. Obejrzales oscyloskopem co sie tam dzieje ?

Jeszcze drobny niuans - jak polaczyles jedno z drugim - tam polaryzacja jest odwrotna niz na RS-232. A skrzyzowales linie TxD i RxD ? A atmelek z PC dziala ?

J.

Tak jeszcze BTW .. jak podpioles Mege z telefonem ? Jak laczysz PC <> TEL to potrzebny jest MAX232 jak laczysz uC z TEL to tego maxa tam ma NIE byc

Na jakiej podstawie twierdzisz, ¿e oscylator w twoim procesorze generuje dok³adnie 1 MHz ?

Pawe³

Dzieki za odpowiedzi. Faktycznie nie ma pewnosci co do stabilnosci generatora RC w atmega. sprobuje podlaczyc zewnetrzny kwarc, tylko czy aby przypadkiem nie bedzie jakis problemow z spi?? Juz jednego procka zdazylem zablokowac bawiac sie fuse bitami i prawde mowiac nie mam ochoty na kolejnego. Jaki kwarc radzicie zastosowac??,jeden cykl zegarowy w atmega to 1us, przy kwarcu 8MHz bedzie 0,125us - wystarczy?? A pozatym jakos chyba robiono lacza szeregowe na Mcs-51 (at89c51 itd), gdzie czestotliwosc kwarca jest dzielona przez 12 (przy zalozeniu ze Q=12MHz), co odpowiada 1MHz w Atmega. Czy faktycznie stabilnosci tego generatora miala by az takie znaczenie przy taktowaniu transmisji szeregowej?

Programik ktory napisalem wyglada w skrocie tak(najprostsza wersja): $baud=19200 print "AT D501123456" end Komenda ta powinna powodowac , ze telefon zacznie dzwonic pod w/w numer.Wydaje mi sie ze jest to najprostrzy sposob na stwierdzenie czy komenda zostala odebrana czy nie. Oczywiscie ustawiam w bascom, ze kwarc ma 1MHZ, i ze jest to atmega8. Na PC dzia³a, przy laczeniu przez terminal.

Kolejna sprawa to taka ze siemensy serii x35 uznaja tylko predkosc transmisji 19200 i wszelkie inne predkosci odpadaja z definicji.

Skrzy¿owalem linie RX i TX, nawet sprawdzalem po kilka razy czy aby napewno. Niestety nie laczylem atmegi z PC, bo nie chcialo mi sie maxa podlaczac. Telefon polaczylem z prockiem przez dzielnik zrobiony z diody zenera

3,3V i opornika 1k wlaczony miedzy wyjscie procka i mase.

Jak mam rozumiec ponizszy tekst - tzn ze sygnal jest zanegowany i mam odwrocic polaryzacje?? Jeszcze drobny niuans - jak polaczyles jedno z drugim - tam polaryzacja jest odwrotna niz na RS-232.

TsfJacek

Siemens c35 wymaga Baud=19200 przy wewnetrznym generatorze 1MHz nie ruszy. Musisz uzyc rezonatora kwarcowego 7,3728Mhz i bedzie smigac. Jesli uzywasz do kominikacji kabla ktory kupiles jako "PC <>C35" musisz uzyc przy uP MAX232. Jesli podlaczasz C35 bezposrenio do uP nie ma problemu. Ja osobiscie polecam pierwsze rozwiazanie, poniewaz czasem jak cos mi nie dzialalo. Odpalalem Terminal na PC i sprawdzalem recznie komendy czy dzialaja. Tu masz przyklad procedury jakiej uzywalem w swoim programie:

$regfile = "m32def.dat" $crystal = 7372800 $baud = 19200 ... Print "at+cpin=2222" wait 10 Print "at+clip=1"

Micha³

W Bascomie masz kalkulator, którym mo¿esz wyliczyæ jaki kwarc nale¿y u¿yæ do taktowania, aby zminimalizowaæ b³±d transmisji - podawany jest w % odchy³ki prêdko¶ci od zadanej.

Jacek "Plumpi"

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required