INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
serielle Datenübertragung
16.09.2014, 17:25
Beitrag #1
serielle Datenübertragung
Hallo,
ich möchte Schrittmotoren seriell ansteuern. Mit dem folgenden Sketch und dem seriellen Monitor habe ich die Übertragung getestet:
Code:
int zaehler =0;
void setup() {
  Serial.begin(9600);
}

void loop() {
  if (Serial.available()) {
    Serial.write(Serial.read());
    zaehler++;
    Serial.println(zaehler);
  }
}

Wenn ich 50 Zeichen im seriellen Monitor eingebe und an den Arduino sende, kommen auch 50 Zeichen zum seriellen Monitor zurück. Aber gebe ich z.B. 200 Einsen ein, so kommen nur 118 wieder zum seriellen Monitor zurück.
Ich habe Zeitverzögerungen eingefügt, Baudraten verändert und die Codezeile
Code:
while (!(Serial.available())){}
an verschiedenen Stellen eingefügt - ohne Erfolg.

Kann mir jemand helfen, die verlorenen Bytes zu finden?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.09.2014, 18:18
Beitrag #2
RE: serielle Datenübertragung
Hi,
ich kann mir folgendes vorstellen: Der Puffer der seriellen Schnittstelle ist 64 Byte groß. 50 Byte empfangen ist also nie ein Problem. Wenn Du jetzt allerdings mehr Zeichen schickst und zwischendurch die Schnittstelle noch zum Schreiben benutzt, dann kann ich mir vorstellen, dass der Puffer überläuft.
Versuch mal die empfangenen Daten in ein eigenes Array zu schreiben und nur Zeichen rauszuschieben, wenn gerade kein Zeichen available ist.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.09.2014, 19:54
Beitrag #3
RE: serielle Datenübertragung
vielen Dank für die schnelle Antwort,
ich habe, statt die Daten zur Kontrolle an den Monitor zurück zu schicken, für jedes ankommende Zeichen einen Schrittmotor einen Schritt laufen lassen. Der Laufweg des Motors ist viel zu kurz. Es kommen also nicht alle Daten im Arduino an.
Die Motoren sollen einen heißen Draht einer Styroporschneidemaschine bewegen. Die Daten müssen also kontinuierlich fließen.
Gruß
Thimo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.09.2014, 21:45
Beitrag #4
RE: serielle Datenübertragung
(16.09.2014 19:54)Soma schrieb:  ich habe, statt die Daten zur Kontrolle an den Monitor zurück zu schicken, für jedes ankommende Zeichen einen Schrittmotor einen Schritt laufen lassen. Der Laufweg des Motors ist viel zu kurz. Es kommen also nicht alle Daten im Arduino an.
Hast Du da vielleicht irgendwelche delays drin? Ich Tippe auch hier auf einen Pufferüberlauf.
Zitat:Die Motoren sollen einen heißen Draht einer Styroporschneidemaschine bewegen. Die Daten müssen also kontinuierlich fließen.
Warum schickst Du dann nicht einfach die Anzahl der zu machenden Schritte? Dann brauchst Du nur ein oder zwei Bytes.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  2 Befehle über Serielle Schnittstelle interpretieren phischmi 14 340 04.12.2017 08:52
Letzter Beitrag: phischmi
  Fragen :serielle eingabe und Externe Interrupts Treeshort 7 536 02.06.2017 16:52
Letzter Beitrag: MicroBahner
  2 Arduinos Serielle Übertragung mit SPI RFID Kit OE5AMP 18 1.207 05.05.2017 20:46
Letzter Beitrag: OE5AMP
  JSON Format für Datenübertragung renid55 5 380 10.02.2017 15:02
Letzter Beitrag: Tommy56
  Arduino Serielle Schnittstelle auslesen mit Visual Basic Obermuda 1 677 29.01.2017 17:02
Letzter Beitrag: hotsystems
  Datenübertragung vom Arduino Mega 2560 zu Hterm Datatom 1 549 13.11.2016 23:08
Letzter Beitrag: hotsystems
  Serielle Schnittstelle - Daten empfangen Datatom 8 1.985 22.05.2016 18:10
Letzter Beitrag: avoid
  "WORT" über die serielle Schnittstelle auslesen hannes77 1 1.256 08.03.2016 12:13
Letzter Beitrag: Binatone
  I2c Datenübertragung diode1990 1 970 15.11.2015 22:57
Letzter Beitrag: hotsystems
  Serielle Ausgabe, Reset ? Mathias 1 1.114 12.11.2015 18:12
Letzter Beitrag: hotsystems

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste