Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 23 kwi 2024, o 11:21


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 10 lis 2017, o 22:11 
Offline
Nowy

Dołączył(a): 04 maja 2014
Posty: 7
Pomógł: 0

Dzień dobry.
Chciałem sterowac przez serial monitor kilkoma silnikami. Np wpisuje w serial monitor silnik1 200 i ustawia mi arduino silnik pierwszy z pwm 200 jak napiszę silnik2 100 to ustawi silnik 2 na PWM100. A jak wpiszę Silnik1 lewo to pojedzie w lewo.

Teraz Dane odczytuje przez
if(Serial.available() > 0)
dane = Serial.readStringUntil('\n');

Jak mogę spowodować że Arduino znajdzie spację i podzieli mi słowa na
Dane1=pierwszy wyraz
Dane2=drugi wyraz po spacji

Wtedy mógłbym porównywac w programie słowa i wpisywac dane w odpowiednie miejsce programu. I tylko tego podziału nie umiem zrobić.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 lis 2017, o 21:30 
Offline
Nowy

Dołączył(a): 04 maja 2014
Posty: 7
Pomógł: 0

Czyli jak rozwiązałem problem w pętli programu użyłem takiego oto skryptu
if (Serial.available() > 0) //odczyt bufora i wrzucenie danych do tablicy
{
char c = (char)Serial.read();
if (c == '\n') {
cmd[cmdIndex] = 0;
exeCmd();
cmdIndex = 0;
} else {
cmd[cmdIndex] = c;
if (cmdIndex < 99) cmdIndex++;
}
}

oraz poza pętlą główną programu
void exeCmd() {

if (cmd[0] == 's') // prędkosć
{ dane = atof(cmd + 2);
v= int(dane);
}

Jest pewien problem funkcja działą poprawnie ale jeśli Dane są zapisane jako string, a ja bymchciał mieć tą wartosć jako int. Wysyłam s 200 i wychwytuje mi prędkosć 200 ale nie moge liczby wrzucić w zmienną int musi być string żeby na serial monitorze arduino mi wysłało to co wysłałem do niego. Teraz pytanie jak mogę przekonwertować zapisaną liczbę 200 jako string na int.

Podane v=int (dane) nie działa



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 lis 2017, o 22:29 
Offline
Nowy

Dołączył(a): 04 maja 2014
Posty: 7
Pomógł: 0

Dzięki wielki za pomoc. Naprawdę mega mi pomogłeś. Z tamtych pierwszych skryptów nie skożystałem bo jakoś nie dokońca mogłem je ogarnąć a ten mój wydaje mi się mega prostu do obróbki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO