Arduino Polska Forum
problem z kodem - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Programowanie w Arduino (https://forum.arduinopolska.pl/dzial-programowanie-w-arduino)
+--- Wątek: problem z kodem (/watek-problem-z-kodem--4490)



problem z kodem - BOLO512 - 27-09-2022

Siema,
Jestem całkiem świeży w środowisku Arduino i mam pytanie odnośnie mojego kodu:

Program pobiera liczbę od użytkownika i ją wypisuje, problem polega na tym, że jak np wpisuje liczbę 1 to w terminalu wypisuje dwie liczby: 49 oraz pod nią 10. Nie wiem na czym polega błąd prosiłbym o pomoc Smile

tutaj kodzik:
//zmienna liczbowa do przechowywania danych odebranych przez port szeregowy
int x = 0;
 
void setup()
{
   Serial.begin(9600);
}
 
void loop() {
 
        // sprawdzanie czy są dostępne nowe dane do odczytania
        if (Serial.available() > 0) {
                //przypisywanie do zmiennej odczytanego bajtu
                x = Serial.read();
 
                // wypipsywanie otrzymanych danych
                Serial.print("Otrzymano: ");
                //wypisanie przelanych danych
                Serial.println(x);
        }
}



RE: problem z kodem - kaczakat - 28-09-2022

Powinieneś umówić się z samym sobą na odbieranie linii tekstu, złożyć z niej napis i wydrukować. Poczytaj o kodach ASCII, ich odwzorowaniu w bajtach, co się stanie jeśli liczbę wielkości bajta zapiszesz do zmiennej int i wydrukujesz? Raczej nie będzie to literka. Literkę wysyłasz, odbierasz jako liczbę i wysyłasz z powrotem jako liczbę.
Tymczasem ten program robi dokładnie to co mu kazałeś.


RE: problem z kodem - MadMrQ - 29-09-2022

49 to w ASCII właśnie 1, a 10 to LF - line feed/nowa linia.