Cześć!
Pracuję nad programem do obsługi dwóch serw z zewnętrznego programu za pomocą UART. Wysyłam komendy w postaci znaków ASCII w formacie: kąt1;kąt2; . Za zamianę kąta w zakresie 0-180 stopni odpowiada funkcja angle(), która korzysta z funkcji map(), którą wykorzystałem z arduino. Do wysyłania danych z komputera na razie wykorzystuję program RealTerm. Mam taki problem, że wysyłając te dwa kąty, po jakimś czasie zdarzy się, że te kątą zmienią swoją kolejność. Aby zobaczyć dlatego tak się dzieje zacząłem wysyłać do terminala, to co jest "wrzucane" na PWM, czyli zamieniony kąt na szerokość impulsu (dla kąta 0 jest to 500 i dla kąta 180 jest to 2400) i wtedy kiedy się za szybko klika się na wysyłanie komendy pojawia się liczba 690. Wygląda to tak:

Jak temu zapobiec, żeby kąty się nie przestawiały i cały czas były odczytywane w dobrej kolejności?
Pozdrawiam i proszę o pomoc
Poniżej kod programu:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
]