• 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
Monitor szeregowy.
#1
       
Witam mam problem odnośnie sposobu wyświetlania w monitorze. wiadomości wyświetlają się jedna po drugiej w pierwszej linijce, a nie jedna pod druga jak bym sobie tego życzył. Na dolnym pasku monitora mam ustawiona opcje od nowej linii. Czemu nie działa???
 
Odpowiedź
#2
Mam jeszcze jeden problem.
Wpisałem program do mnożenia:

Kod:
int number;
void setup() {
Serial.begin(9600);

}

void loop() {
number=0;
Serial.flush();

while(Serial.available()==0){
 
}

while(Serial.available()>0){
  number=Serial.read()-'0';
}

Serial.print("Wpisana liczba: ");
Serial.print(number);
Serial.print("pomnozenie przez 2 równa się");
Serial.print(number);
}

I znowu problem pojawił się w monitorze szeregowym, wyświetla się coś takiego:

Wpisana liczba: 2pomnozenie przez 2 rĂłwna siÄ2Wpisana liczba: -38pomnozenie przez 2 rĂłwna siÄ-38

Czy może to być spowodowane tym że mam klona Arduino UNO??? Proszę o odpowiedz bo nie mam pojęcia o co chodzi.
 
Odpowiedź
#3
Kod:
int number;
void setup() {
Serial.begin(9600);

}

void loop() {
number=0;
Serial.flush();

while(Serial.available()==0){

}

while(Serial.available()>0){
number=Serial.read()-'0';
}

Serial.println("Wpisana liczba: ");
Serial.println(number);
Serial.println("pomnozenie przez 2 równa się");
Serial.println(number);
}
Serial.println służy do pisania w kolejnej Lini właściwie końcówka "ln".
Serial.print drukuje jedno po drugim.
[Obrazek: banerelektronika.jpg]



Jeśli pomogłem podziękuj punktem reputacji Wink
 
Odpowiedź
#4
Dzięki, pomogło ale nie do końca. Napisałem identyczny program jak ten i w monitorze wyświetla się inaczej niż powinno. Wziąłem to z książki: Arduino 65 praktyczny projektów.


Załączone pliki Miniatury
           
 
Odpowiedź
#5
Zrobiłem mały test, o którym nie mam pojęcia co sądzić.


Załączone pliki Miniatury
   
 
Odpowiedź
#6
Brak atrybutu "ln" wpisz
Kod:
Serial.println("123435678");
.

i napisz mi jak chcesz aby ci drukowali to ci pomoge.
[Obrazek: banerelektronika.jpg]



Jeśli pomogłem podziękuj punktem reputacji Wink
 
Odpowiedź
#7
Jak dopisałem 'ln' to wywala błąd, a bez 'ln' w jednej linii wyświetla 123412341234- a nie raz.


Załączone pliki Miniatury
   
 
Odpowiedź
#8
Serial.println("122345"); tak ma być dokładnie przepisuj
[Obrazek: banerelektronika.jpg]



Jeśli pomogłem podziękuj punktem reputacji Wink
 
Odpowiedź
#9
Siemanko, dzięki za pomoc. Mam jeszcze jedno pytanie. Robiłem program, który wyświetla mi na wyświetlaczu 7 segmentowym cyfry i litery po przez wpisanie żądanej litery, cyfry w monitorze szeregowym. Da się tylko wpisywać pojedyncze znaki a nie np. liczbę 10 i wyświetlić ją na dwóch wyświetlaczach. Jak to zrobić???
Tu jest cześć programu który wyświetla tylko pojedyncze znaki.


Załączone pliki Miniatury
   
 
Odpowiedź
#10
Da sie ale jak to ci nie powiem musiał bym zacząć go pisać ale jak bym zrobił to tak:
-zrobił bym tablice jedo wymiarowa- int segment[8];
-w pętli głównej odczyt z serial i wyświetlanie
-w setup dać ustalone stany początkowe dla segment0-8
-w pętli odczytu serial dać switch z znakami z cyframi i literami "jeśli 1 to taka konfiguracja segment
ja zrobił bym to tak ale pewnie można to inaczej a pamiętaj z serial odczytuje ASCII wiec 1 to nie 1 tylko 49 chyba itd. (albo jako string właściwie już nie pamiętam zobaczysz w praniu)
[Obrazek: banerelektronika.jpg]



Jeśli pomogłem podziękuj punktem reputacji Wink
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości