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
Datenempfang von Decoderchip
16.01.2015, 20:17 (Dieser Beitrag wurde zuletzt bearbeitet: 16.01.2015 20:21 von Andi89.)
Beitrag #9
RE: Datenempfang von Decoderchip
Arduino und DCF-RS1 sowie die angeschlossene Antenne werden momentan über USB an 5V betrieben.
Beide liegen am gleichen GND und habe den Arduino Uno (ATMEGA328P-PU).
Ich werde morgen mal versuchen den 27kOhm auch bei den TX Pin zu verwenden und schauen ob sich am Ergebnis was ändert.

ps: sry für die fehlenden Infos Big Grin! Kenne leider das Problem das ist manchmal echt nervig und dann passierts einem selber
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.01.2015, 21:06
Beitrag #10
RE: Datenempfang von Decoderchip
Lese bitte nochmal den letzten Satz von Scherheinz aus Beitrag #2.

ExclamationMit zunehmender Anzahl qualifizierter Informationen bei einer Problemstellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.Exclamation
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2015, 11:51
Beitrag #11
RE: Datenempfang von Decoderchip
also auf dem Display wird nur ein komisches Symbol angezeigt was er empfangen hat. Leider kann ich nicht genau sagen was das darstellen soll das gleiche kommt auch wenn ich Text/Binär ausgabe aktiviert habe. Ansonsten Arduino geht noch habs ausprobiert. Der wird nur zum Programmändern auf die Standardplatine umgebaut und danach wieder aufs Breadboard gesteckt
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2015, 17:51
Beitrag #12
RE: Datenempfang von Decoderchip
Hallo,

so wie das Programm jetzt geschrieben ist kommt auch nicht mehr wie ein "komisches Symbol".
Sinn und Zweck des Programms war nur zu sehen ob überhaupt etwas an mit Serial.read(); empfangen wird.
Das empfangene Zeichen wird ausgegeben und sofort wieder wegen lcd.home(); überschrieben.

An der Stelle kannst du nun ansetzen und das Programm so umschreiben dass das lcd.home(); erst wieder Ausgeführt wird wenn eine komplette Zeichenkette empfangen wurde und nicht ein einzelnes Zeichen.

Also z.B. ein Array anlegen in das die ganze Zeichenkette passt, dieses Array über Serial.read(); füllen bis das Endzeichen empfangen wurde und dann das ganze Array (formatiert) ausgeben.
Und kein delay() in der Schleife für Serial.read(); verwenden.ExclamationExclamation

Viel Spaß dabei. Wink

ExclamationMit zunehmender Anzahl qualifizierter Informationen bei einer Problemstellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.Exclamation
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2015, 18:41
Beitrag #13
RE: Datenempfang von Decoderchip
werde ich mal machen!

Habe heute Nachmittag mal ein Oszi (kein Hightech Gerät) angeschlossen und erkennen können das über den TX Ausgang aufjedenfall durchgehend 5V anliegen und dann unregelmäßig mehrere Veränderungen auf 0V vorkommen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2015, 19:16
Beitrag #14
RE: Datenempfang von Decoderchip
Ständig 5V und dann wenn Daten kommen Flanken gen 0V. Das sieht gut aus.

Jetzt nur noch geschickt erst das ganze Telegramm einlesen und dann erst ausgeben.
Ich finde dass geschickter als wenn man gleich versucht ohne Zwischenspeicherung auszugeben.

ExclamationMit zunehmender Anzahl qualifizierter Informationen bei einer Problemstellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.Exclamation
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.01.2015, 20:09
Beitrag #15
RE: Datenempfang von Decoderchip
ok werde mich hier nochmal melden falls ich auf irgendwelche Probleme stoßen sollte Smile
trotzdem schonmal danke für die großartige Hilfe !!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.01.2015, 11:54 (Dieser Beitrag wurde zuletzt bearbeitet: 19.01.2015 13:08 von Andi89.)
Beitrag #16
RE: Datenempfang von Decoderchip
So nun ist es schon soweit! Habe mal versucht den Tag/Monat/Jahr auszuwerten. Laut Datenblatt werden bei binärer Ausgabe 12 Bytes ausgegeben angefangen mit: "126" "Tag" "Monat" "Jahr" .... . Die Werte sind mit der Zahl 65 addiert d.h. ich muss diese im Programm wieder abziehen. Leider werden aber auf meinem Display jede Minute lauter neue unterschiedliche Werte angezeigt von Minuszahlen bis an ~600. Daher ziehe ich folgende Schlussfolgerung das die Eingangsdaten nicht richtig im Array drinliegen da er niemals auf eine Minuszahl kommen dürfte und auch keine Zahl größer ~165 ( da ja immer 65 abgezogen werden müssen und die größte Zahl müsste 99 sein beim Jahr). Ich habe einfach das Array im Byteformat erstellt (dies wird auch im beigelegten Bascom Programm so gemacht). Oder liege ich ganz falsch mit dem Datentyp auch war ich mir nicht sicher ob ich für die Variablen wie Tag, Monat usw. int funktioniert wenn ich von einem Byte 65 abziehe und der Variablen zuweise (laut kleinem Test sollte Typ byte und int beides funktionieren siehe nachfolgenden Text). Ich habe zum Test aber mal ein kleines Programm geschrieben bei dem ich einer Bytevariablen bei jedem einlesen auf den Wert 126 abfrage und dann über eine "if-Abfrage" am Display ausgebe wenn dies zutrifft (126 = Start siehe Datenblatt DCF-RS1). Dies hat auch funktioniert habe dann noch zusätzlich nach der IF Frage nochmal den Befehl Serial.read() auf eine neue Variable abgelegt (einmal Typ byte und einmal int beides funktioniert) und davon 65 abgezogen dann kam sogar der richtige Tag raus aber füge ich dann noch weitere Abfragen hinzu stimmt wieder nichts mehr bei Monat Jahr die Werte ändern sich nach jeder Abfrage nur der Tag bleibt konstant bei 19 stehen!!! Aber sobald ich ein Bytearray erstelle geht nichts mehr Sad


#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F,16,2);
byte Z[12] = {}; //Array mit Zeitwerten laut Datenblatt jeweils 12 Byte bei Binärausgabe
int Tag;
int Monat;
int Jahr;

void setup()
{
Serial.begin(2400);
lcd.init();
lcd.init();
lcd.backlight();
lcd.home();
}

void loop()
{

while (Serial.available() >0)
{
for (int n=0;n<12;n++)
{ Z[n]= Serial.read();} //Z0 = START , Z1 = Tag, Z2 = Monat, Z3 = Jahr, .....



Tag = Z[1] - 65;
Monat = Z[2] - 65;
Jahr = Z[3] - 65;
lcd.setCursor(0,0);
lcd.print(Tag);
lcd.setCursor(9,0);
lcd.print(Monat);
lcd.setCursor(0,1);
lcd.print(Jahr);
}
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:


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