16-10-2020, 17:04
1 rada: zrób sobie w programie kontrolne Serial.println ("1") ; potem 2 3 i tak dalej będziesz wiedział, gdzie program się ewentualnie zacina.
2 rada: używasz 2 SoftwareSerial a w danej chwili może działać tylko jeden, ten ostatnio uruchomiony czyli w Twoim przypadku sgps.begin(9600); a ten sgsm.begin(9600); nie działa. Trzeba je "beginować " bezpośrednio przed użyciem czyli w pętli LOOP a w SETUP niekoniecznie. Sprawdzone doświadczalnie i to z trzema SoftwareSerial.
Nie analizowałem Twojego programu, ale delay można stosować w zasadzie tylko w programach demo. Jak masz połączonych kilka "programów" musisz nauczyć się używać millis() .
Powodzenia w dalszych pracach.
2 rada: używasz 2 SoftwareSerial a w danej chwili może działać tylko jeden, ten ostatnio uruchomiony czyli w Twoim przypadku sgps.begin(9600); a ten sgsm.begin(9600); nie działa. Trzeba je "beginować " bezpośrednio przed użyciem czyli w pętli LOOP a w SETUP niekoniecznie. Sprawdzone doświadczalnie i to z trzema SoftwareSerial.
Nie analizowałem Twojego programu, ale delay można stosować w zasadzie tylko w programach demo. Jak masz połączonych kilka "programów" musisz nauczyć się używać millis() .
Powodzenia w dalszych pracach.