Komendy AT GSM.pdf

(203 KB) Pobierz
7498115 UNPDF
http://www.easy-soft.pl/
Opis komend AT telefonu GSM
Pierwotnie komendy AT służyły do sterowania pracą modemu analogowego. Zostały wprowadzone w
celu ujednolicenia sprzętu, z którym miał współpracować komputer. Po pojawieniu się technologii
GSM bardzo szybko zostały zaadoptowane do obsługi modemów wbudowanych w telefony
komórkowe. Współcześnie każdy aparat (terminal) GSM posiada wbudowany interpreter komend AT
i wykonuje je zgodnie z normą obowiązującą dla telefonów komórkowych GSM
Poszczególne implementacje komend AT mogą się różnić pomiędzy sobą drobnymi detalami. Na
przykład niektóre modele mogą wymagać aby parametry komendy podawane były w cudzysłowiu,
jeszcze innym może być zupełnie wszystko jedno, czy zostanie użyty cudzysłów, czy też nie a jeszcze
inne mogą zgłaszać błąd składni komendy. Nie mniej jednak każdy aparat telefoniczny GSM, bez
względu na to, czy ma wbudowany modem do transmisji danych, czy też nie realizuje komendy AT a
zarówno składnia komend jak i wynik ich realizacji jest znormalizowany. Oczywiście niektóre jedne
komendy będą realizowane a inne nie. Zależy to między innymi od funkcji, w które wyposażony jest
aparat. Często również możliwość realizacji zależy nie tylko od samego aparatu, ale również od tego,
czy operator udostępnia daną usługę.
Wprowadzanie komend
Istnieje kilka podstawowych zasad dotyczących sposobu wprowadzania komend do telefonu GSM.
Komendy mogą być pisane zarówno dużymi, jak i małymi literami. Aparat podczas interpretacji
komend zamienia małe litery na duże i utożsamia je. Nie mniej jednak większość producentów
aparatów zaleca, aby w linii polecenia nie mieszać ze sobą małych i dużych liter: używać wyłącznie
małych lub wyłącznie dużych .
Każda komenda rozpoczyna się od prefiksu AT za wyjątkiem komend: A/ oraz +++ i kończy znakiem
powrotu karetki ( Carriage Return , CR = 13). Komenda nie będzie realizowana dopóty, dopóki aparat
GSM nie odbierze znaku CR. Przyjęcie komendy do realizacji potwierdzane jest przez znak nowej linii
( Line Feed , LF = 10) przesyłany przez aparat. Uwaga: istnieją aparaty GSM, w których można zmienić
znak kończący linię (komenda ATS3) i potwierdzający przyjęcie jej do realizacji (komenda ATS4) na
inny!
Maksymalna długość linii komendy wynosi 128 znaków. Różne komendy mogą być ze sobą łączone w
pojedynczej linii, jednak nie jest to zalecane. Linie komend mogą zawierać znaki odstępu w celu
poprawy ich czytelności. W trakcie interpretacji polecenia, znaki odstępu są pomijane.
Jeśli komenda wymaga parametru a ten parametr zostanie pominięty, to interpreter komend
wstawia w to miejsce „0”. Przykładem może być komenda ATZ przesłana do aparatu GSM, który
zinterpretuje ją jako ATZ0.
J.Bogusz „Lista komend AT”
Strona 1 / 42
7498115.002.png
http://www.easy-soft.pl/
Linie tekstowe wprowadzane na przykład jako treść komunikatu SMS w trybie tekstowym kończone
są przez znak CTRL+Z. Wprowadzanie każdej komendy można przerwać wysyłając znak CTRL+X.
Zgodnie z normą GSM 07.07 komendy AT mają następującą postać:
· AT CXXX=?
Aparat GSM zwraca listę parametrów związanych z możliwymi nastawami konkretnej komendy.
Rezultat działania komendy jest ściśle uzależniony od możliwości aparatu telefonicznego i usług
udostępnianych przez operatora.
· AT CXXX?
Aparat GSM zwraca nastawę związanego z komendą parametru, na przykład prędkości
transmisji, sposobu powiadamiania o połączeniu czy komunikatach SMS itp.
· AT CXXX=<…>
Aparat GSM umożliwia nastawę parametru na wartość podaną w <…>. Nawias oznaczać może
zarówno pojedynczy parametr, jak też ich listę. Parametry najczęściej podawane są w postaci
numerycznej, jednak dopuszcza się również podawanie niektórych parametrów w postaci słów
kluczowych (np. 115k dla nastawy prędkości transmisji interfejsu lokalnego 115200 bitów /
sekundę).
· AT CXXX
Rezultat realizacji komendy zależny jest od nastaw domyślnych i implementacji oprogramowania
konkretnego modelu aparatu. Może być różny, dla różnych modeli aparatów (terminali) GSM.
AT to prefiks komendy, CXXX to komenda a znak odstępu najczęściej jest zastępowany przez jeden ze
znaków: + , % , ^ .
Komendy AT na podstawie normy GSM 07.07 oraz
materiałów firmy SIEMENS.
Niżej podano skróconą i uproszczoną listę komend AT opracowanych na podstawie materiałów firmy
SIEMENS oraz normy GSM 07.07. Komendy realizowane są przez większość popularnych aparatów
telefonicznych, jak na przykład używany bardzo chętnie w wielu aplikacjach ze względu na niską cenę
na rynku wtórnym oraz prostotę wykonania interfejsu fizycznie łączącego z mikrokontrolerem oraz
łączącego za pomocą komend AT, aparat telefoniczny z serii SIEMENS C/S/M 35 (również C/S/M 45).
Poprawne ich stosowanie wymaga jednak nie tylko znajomości samych komend, ale również funkcji
realizowanych przez sieć, protokołów komunikacyjnych i ich nastaw, sposobów kodowania
parametrów i komunikatów oraz wielu innych zmiennych i stałych parametrów sieci.
J.Bogusz „Lista komend AT”
Strona 2 / 42
7498115.003.png
http://www.easy-soft.pl/
KONTROLA WYWOŁANIA
ATA
Odpowiedz na przychodzące wywołania (np. odbierz połączenie głosowe). Poprawna
realizacja komendy kończy się odesłaniem przez aparat komunikatu CONNECT. Za nim, w
przypadku połączeń danych, może się pojawić liczba oznaczająca prędkość transmisji (np.
CONNECT 9600). Jeśli po komunikacie brak jest liczby, to zestawione połączenie jest
połączeniem głosowym. Po poprawnym zakończeniu połączenia, aparat przesyła komunikat
OK. Jeśli nie zostanie nawiązane połączenie danych, to aparat przesyła komunikat NO
CARRIER. W przypadku zajętości abonenta pojawi się komunikat BUSY. Komendy
umieszczone w tej samej linii, co ATA są ignorowane
ATD
Wywołanie numeru abonenta lub usługi. Po komendzie ATD zawsze musi pojawić się numer
abonenta lub kod usługi (np. ATD 601123123). Jeśli komendę zakończy znak średniówki (np.
ATD 601123123;), to aparat będzie zestawiał połączenie głosowe. Brak średniówki powoduje
próbę zestawienia połączenia danych. Możliwe komunikaty aparatu to:
- CONNECT <szybkość transmisji> (poprawnie zestawiono połączenie danych)
- OK (poprawnie zestawiono połączenie głosowe)
- +CME ERROR: <kod błędu> (aparat lub sieć nie obsługują tego typu wywołania lub błąd
składni polecenia)
- NO DIALTONE lub BUSY (abonent wywoływany jest zajęty)
- NO CARRIER (niepomyślna próba zestawienia połączenia danych)
ATD> <MEM><N>[;]
Próba zestawienie połączenie z abonentem zapisanym w pamięci telefonu typu MEM pod
adresem (numerem lokalizacji) N. Na przykład ATD>SM5 powoduje próbę zestawienia
połączenie z abonentem, którego numer znajduje się na 5-tej pozycji w pamięci karty SIM.
Znak średniówki jest opcjonalny, zgodnie z uwagami dla komendy ATD. Zwracane przez
aparat komunikaty identyczne jak w przypadku komendy ATD.
Symbole rodzajów pamięci (parametr MEM):
- FD (pamięć numerów stałych na karcie SIM)
- LD (pamięć ostatnio wybranych numerów na karcie SIM)
- RC (pamięć aparatu – ostatnio odebrane połączenia)
- MC (pamięć aparatu – nie odebrane połączenia)
- SM (książka telefoniczna na karcie SIM)
J.Bogusz „Lista komend AT”
Strona 3 / 42
7498115.004.png
http://www.easy-soft.pl/
- ON (własne numery karty SIM lub aparatu – lista MSISDN)
- ME (książka telefoniczna aparatu)
- MT (połączenie książek telefonicznych aparatu i karty SIM)
-
ATD><N>;
Próba zestawienia połączenie z abonentem zapisanym w pamięci telefonu pod adresem N. W
odróżnienie od komendy ATD><MEM><N> komenda nie umożliwia wyboru rodzaju pamięci,
z której pobrany będzie numer: zostanie on odczytany z pamięci ustawionej jako domyślna.
ATD><STR>[;]
Próba zestawienia połączenia z abonentem, którego numer zapisany jest w pamięci i nadano
mu identyfikator STR. Podczas realizacji komendy aparat będzie szukał w książce telefonicznej
znajdującej się w wybranej, bieżącej lokalizacji nazwy identycznej z łańcuchem STR i w
przypadku jej odnalezienia, wybierze skojarzony z nią numer. Poza tą różnicą, polecenie
funkcjonuje tak samo, jak polecenie ATD.
ATDL[;]
Ponowne wybranie ostatnio wywoływanego numeru. Zasady i komunikaty aparatu: takie
same, jak w przypadku komendy ATD.
ATDS=<N>[;]
Próba zestawienia połączenia z numerem zapamiętanym w książce telefonicznej aparatu
(rodzaj pamięci - ME) pod adresem <N>. Funkcjonalność komendy jest identyczna, jak
ATD>ME<N> (na przykład ATDS=10; jest równoważne wywołaniu ATD>ME10). Komunikaty
zwracane przez aparat są identyczne, jak w przypadku komendy ATD.
ATH
Przerwanie połączenia (odłożenie słuchawki). Po pomyślnej realizacji komendy przesyłany
jest komunikat OK.
AT+CHUP
Rozłączenie: wszystkie aktywne i zawieszone połączenia są rozłączane.
J.Bogusz „Lista komend AT”
Strona 4 / 42
7498115.005.png
http://www.easy-soft.pl/
ATP
Przełączenie do trybu wybierania impulsowego. Polecenie praktycznie nie używane i
zachowane tylko dla kompatybilności ze starszym oprogramowaniem.
ATS0=<N>
Ustawienie liczby dzwonków, po których nastąpi automatyczna odpowiedź aparatu. Parametr
N może mieć wartość od 0 do 255 z tym, że 1-255 ustawia liczbę dzwonków, natomiast 0
zabrania automatycznej odpowiedzi.
ATS0?
Wyświetlenie ustawionej liczby dzwonków dla funkcji automatycznej odpowiedzi na
przychodzące wywołanie.
ATS7=<N>
Ustawienie liczby sekund oczekiwania na zestawienie połączenia (timeout). Najczęściej
wartością domyślną jest 60 sekund. Parametr N ma rozmiar pojedynczego bajtu, więc musi
mieścić się w zakresie od 0 do 255.
ATS7?
Żądanie przesłania ustawionej liczby sekund oczekiwania na zestawienie połączenia.
ATS8=<N>
W telefonii analogowej, zwłaszcza w aparatach z wybieraniem impulsowym, stosowany był
znak przecinka umieszczany w obrębie wybieranego numeru (na przykład 0,202122)
wymuszający przerwę w wybieraniu numeru. Zapobiegało to komunikatom w rodzaju „NO
DIAL TONE” (brak sygnału wybierania) czy błędnemu wybieraniu numeru. Komenda ATS8
umożliwia ustawienie długości przerwy po napotkaniu przecinka. Została ona jednak
zaimplementowana tylko ze względu na kompatybilność, ponieważ w sieci GSM nie ma
zastosowania:
<N>
0 to czas przerwy równy 0 sekund (bez przerwy).
2 wartość domyślna (2 sekundy)
1…255 dopuszczalne nastawy czasu przerwy w sekundach
ATS8?
Żądanie przesłania ustawionej liczby sekund przerwy po napotkaniu znaku przecinka.
J.Bogusz „Lista komend AT”
Strona 5 / 42
7498115.001.png
Zgłoś jeśli naruszono regulamin