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
wieder mal serielle Kommunikation
14.10.2014, 19:04
Beitrag #1
wieder mal serielle Kommunikation
Hallo und einen schönen Abend,

zuerst möchte ich mal ein großes Lob an Euch aussprechen. Ich lese schon seit geraumer Zeit hier mit und habe schon den einen oder anderen Tipp bekommen.
Heute habe ich mich dann doch angemeldet, um mal eine Lösung in einem von mir angegangen Problem zu finden. In Sachen ARDUINO bin ich absolute Anfängerin und hänge jetzt etwas durch. Deshalb wäre ich echt froh, einen Denkanstoß zu bekommen.

Wir haben vor unserem Haus eine Zisterne um das Regenwasser zu sammeln. Darin hängt eine Schaltung von http://www.icplan.de die im Technikraum den Wasserstand digital anzeigt. Die Schaltung selbst misst per Ultraschall die Laufzeit zur Wasseroberfläche und ist mit einer seriellen Schnittstelle - mit dem MAX232 - versehen.

Ich versuche jetzt, mit einem Arduino die serielle Schnittstelle auszulesen. Immer wenn diese sendet, werden auf dem Display kryptische Zeichen angezeigt.

Die Schnittstelle sendet mit 9600 Baud und diese sind auch im Arduino eingestellt.

Selbstredend habe ich die Suche schon bemüht. Aber ich kann nichts finden, was mir weiterhilft.

Vielleicht kann mir jemand einen kleinen Denkanstoß liefern. Dafür wäre ich sehr dankbar. Den Code hänge ich mal an. Bitte nicht auslachen. ;-)

LG
Nadine

Code:
#include <LiquidCrystal.h>

int laenge=64;
char Daten[64];
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

void setup()
{
Serial.begin(9600);

lcd.begin(16, 2);
lcd.setCursor(0,0);
lcd.print("warte auf Daten");
}

void loop()
{
int i=0;
if (Serial.available())
  {
    while (Serial.available())
    {
      Daten[i++] = Serial.read();
      lcd.clear();
      lcd.print("gelesene Daten:");
      lcd.setCursor(0,2);
      lcd.print(Daten);
      delay(2);
    }
  }
//    clear.array();
{
  for (int x=0; x<laenge; x++)
  {
    Daten[x]=NULL;
  }
  }
   lcd.setCursor(10,2);
   lcd.print(millis()/1000);
   {
   }
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.10.2014, 19:58
Beitrag #2
RE: wieder mal serielle Kommunikation
(14.10.2014 19:04)Rettungsmaus schrieb:  Hallo und einen schönen Abend,

zuerst möchte ich mal ein großes Lob an Euch aussprechen. Ich lese schon seit geraumer Zeit hier mit und habe schon den einen oder anderen Tipp bekommen.
Heute habe ich mich dann doch angemeldet, um mal eine Lösung in einem von mir angegangen Problem zu finden. In Sachen ARDUINO bin ich absolute Anfängerin und hänge jetzt etwas durch. Deshalb wäre ich echt froh, einen Denkanstoß zu bekommen.

Wir haben vor unserem Haus eine Zisterne um das Regenwasser zu sammeln. Darin hängt eine Schaltung von http://www.icplan.de die im Technikraum den Wasserstand digital anzeigt. Die Schaltung selbst misst per Ultraschall die Laufzeit zur Wasseroberfläche und ist mit einer seriellen Schnittstelle - mit dem MAX232 - versehen.

Ich versuche jetzt, mit einem Arduino die serielle Schnittstelle auszulesen. Immer wenn diese sendet, werden auf dem Display kryptische Zeichen angezeigt.

Die Schnittstelle sendet mit 9600 Baud und diese sind auch im Arduino eingestellt.

Selbstredend habe ich die Suche schon bemüht. Aber ich kann nichts finden, was mir weiterhilft.

Vielleicht kann mir jemand einen kleinen Denkanstoß liefern. Dafür wäre ich sehr dankbar. Den Code hänge ich mal an. Bitte nicht auslachen. ;-)

LG
Nadine
...

Hallo Nadine,
nun da fallen mir gleich mal 3 Dinge ein.
1.) brauchst du zwischen der Seriellen Leitung und dem Arduino auch einen RS232 Treiber/Empfänger z.B. den MAX232 um den Pegel wieder auf TTL Pegel zu kriegen.
2.) Die Daten wo gesendet werden sind keine ASCII Zeichen sondern sind Binär oder Hexadezimal oder evtl. gar als Dezimale Nibbles im Byte kodiert. Alles ist da möglich. Also einfach mal die empfangenen Zeichen als Hexadezimalen Wert aufs Display bringen....die Serielle ist ja wohl belegt...es sei denn du hast einen Mega2560 dann kannst es auch auf dem PC in der IDE anzeigen lassen wenn du für den Sensor ne andere Serielle nimmst.
3.) Die Schnittstelle verwendet ein etwas ausgefalleneres Protokoll was du HIER nachlesen kannst.

Denn mal gutes gelingen.
lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.10.2014, 20:07
Beitrag #3
RE: wieder mal serielle Kommunikation
Hallo und guten Abend, Bitklopfer...

Danke für Deine Tipps.
1.) Jetzt wo Du es sagst. Ist ja eigentlich logisch.
2.) Ich habe damit gerechnet, dass ich ASCII-Zeichen empfange. Es ist ein UNO und ich habe direkt Rx & Tx angeschlossen.
3.) ich werde mir den Link mal zu Gemüte führen.

Vielen Dank & LG
Nadine
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.10.2014, 20:32
Beitrag #4
RE: wieder mal serielle Kommunikation
(14.10.2014 20:07)Rettungsmaus schrieb:  Hallo und guten Abend, Bitklopfer...

Danke für Deine Tipps.
1.) Jetzt wo Du es sagst. Ist ja eigentlich logisch.
2.) Ich habe damit gerechnet, dass ich ASCII-Zeichen empfange. Es ist ein UNO und ich habe direkt Rx & Tx angeschlossen.
3.) ich werde mir den Link mal zu Gemüte führen.

Vielen Dank & LG
Nadine

ein UNO...autsch...dann mußt dir was einfallen lassen das nur ein Telegramm auf deim Display ablesbar ist.... der UNO hat eben nur eine Serielle....wobei du ...ne geht net beim UNO....der USB.... doch probier doch mal auf der Seriellen zu senden ob das in der IDE ankommt wenn der Sensor am RX hängt...wäre ein Versuch Wert.Idea

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.10.2014, 20:54 (Dieser Beitrag wurde zuletzt bearbeitet: 14.10.2014 21:04 von Rettungsmaus.)
Beitrag #5
RE: wieder mal serielle Kommunikation
Verstehe ich Dich richtig, dass der UNO da nicht unbedingt die sinnvollste Wahl ist?
Ich bin bisher davon ausgegangen, dass er eben auch eine serielle Schnittstelle besitzt und die ich verwendbar ist.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.10.2014, 21:03
Beitrag #6
RE: wieder mal serielle Kommunikation
(14.10.2014 20:54)Rettungsmaus schrieb:  Verstehe ich Dich richtig, dass der UNO da nicht unbedingt die sinnvollste Wahl ist?
Ich bin bisher davon ausgegangen, dass er eben auch eine serielle Schnittstelle besitzt und die ich verwendbar ist.

...nur zum austesten wäre der Mega eben den Vorteil weil er eben 4 UART's hat und der UNO nur Eine.
Auf dem Terminal hat man es eben einfacher sich Daten anzeigen zu lassen.

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.10.2014, 21:05
Beitrag #7
RE: wieder mal serielle Kommunikation
Ich werde mir sowieso mal einen MEGA zulegen. Da kann ich das auch gleich tun...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
15.10.2014, 08:48
Beitrag #8
RE: wieder mal serielle Kommunikation
da fällt mir doch ein anderes Thema ein, das ich gestartet habe: der Leonardo! Das wäre jetzt eine sinnvolle Aufgabe für ihn, denn die 50 Binärports sind ja hier völlig unnötig. Smile

Gruß, Stefan . . . . . . //Wo mein Kölbchen dampft, da bin ich unverkrampft.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Serielle Eingabe zur Steuerung einer RGB-LED Tommy56 5 610 22.07.2016 18:32
Letzter Beitrag: Tommy56
  Kettenoeler = EEPROM, serielle Kommunikation, externer Interrupt anwo 0 717 19.01.2016 12:21
Letzter Beitrag: anwo
  2 LEDs über serielle Schnittstelle steuern Bill 0 1.018 13.08.2015 16:04
Letzter Beitrag: Bill
Brick Kommunikation zwischen zwei Arduinos Neuwirth 7 4.092 05.12.2013 10:03
Letzter Beitrag: NoPeanut09

Gehe zu:


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