• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
sprawdzenie linii kodu
#1
Witem serdecznie,
Próbuję rozwiązać problem już spory kawałek czasu i nie wychodzi dlatego proszę doświadczone osoby o pomoc.
Układ to Arduino UNO + moduł GSM SIM800L, chodzi o wykonywanie połączenia na zdefiniowany numer telefonu.

W pętli głównej umieściłem komendę wykonania połączenia poleceniem:
Kod:
GSM.print("ATD+485048..282;\r");

Telefon dzwoni, wszystko jest ok. Dalej wskazałem numer na początku programu (przed pętlą setup) aby mieć wszystkie definicje w jednym miejscu:

Kod:
const char numer[]="\"+485048..282\"";

Wracam do pętli głównej, zmieniam zapis na poniższy i nie mogę nawiązać połączenia. Próbuję różnych kombinacji zapisu, żadna z nich nie udała się, poniżej jedna z nich (próbowałem też rozdzielać na dwie komendy, niestety bezskutecznie). 

Kod:
GSM.print("ATD\numer\";\r");

Dodam, że definicja numeru telefonu jest ok, bo w innej części pętli głównej programu, z użyciem tej definicji, poprawnie zostaje wysłany sms.
Proszę o wskazanie jak powinien wyglądać prawidłowy zapis ww. linii kodu. Z góry dziękuję.
 
Odpowiedź
#2
Na pewno mieszasz tekst, zmienne tekstowe i znaki specjalne. ATD\numer pewnie drukuje "ATD NL umer" - bez spacji. Poczytaj to: https://pl.wikibooks.org/wiki/C/Napisy .
Nie mam jak tego sprawdzić, na pewno tekst sklejony przed tą komendą i użyty jako całość zadziała, albo GSM.print("ATD"+numer+";\r"); .
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości