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 

RS232 Stringauswertung



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

27.12.2013, 12:13
Beitrag #1

adamo Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Dec 2013

13.0f2
2013
DE



RS232 Stringauswertung
Hallo LVF User,

versuche mit meiner VI aus einem Datenstring über RS232 zwei ADC Werte
auszugeben, erhalte aber eine Fehlermeldung, die ich nicht verstehe.
Danke für Eure Hilfe!


Angehängte Datei(en)
13.0 .vi  adc_mk2board.vi (Größe: 16,13 KB / Downloads: 237)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
27.12.2013, 12:45
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
RE: RS232 Stringauswertung
Was für eine Fehlermeldung?

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.12.2013, 13:39
Beitrag #3

adamo Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Dec 2013

13.0f2
2013
DE



RE: RS232 Stringauswertung
Hallo Markus,
die Fehlermeldung lautet:

"Fehler 1 bei In String suchen (arg1) in adc_mk2board.vi"

Gruß
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.12.2013, 13:55
Beitrag #4

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: RS232 Stringauswertung
Das heißt: Der Formatstring passt nicht zum String. Wie lautet denn der aus VisaRead herauskommende String genau?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.12.2013, 16:32
Beitrag #5

adamo Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Dec 2013

13.0f2
2013
DE



RE: RS232 Stringauswertung
Das Programmfragment für die Datensendung (ATMega8) lautet

if(count1>10) // Zykluszeit 10*10ms,Timersteuerung
{
count1=0;
adc_init(3); // Wandlerkanal an PC3
adc_value[0]=adc_single_conversion();
adc_init(4); // Wandlerkanal an PC3
adc_value[1]=adc_single_conversion();

sprintf(buffer_out,"%4d,%4d",adc_value[0],adc_value[1]);
lcd_gotoxy(0,0); // Kontrollanzeige mit LCD Einheit auf MC-Seite
lcd_puts(buffer_out);
uart_puts(buffer_out); // Wandlerwert Wert senden
uart_putc(0xa);
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.12.2013, 17:32
Beitrag #6

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: RS232 Stringauswertung
Ich hatte mir Deine Antwort eigentlich so vorgestellt, dass Du am String-Ausgang von Visa Read eine Anzeige anschließt und uns den Inhalt mal postest. Was ist schwierig daran?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
27.12.2013, 18:27 (Dieser Beitrag wurde zuletzt bearbeitet: 28.12.2013 00:12 von jg.)
Beitrag #7

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: RS232 Stringauswertung
Offtopic2
Fragen im Bereich Testforum werden im Normalfall ohne Vorwarnung gelöscht.
Such dir das nächste Mal bitte ein passendes Unterforum aus.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.12.2013, 21:17 (Dieser Beitrag wurde zuletzt bearbeitet: 27.12.2013 21:18 von GerdW.)
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: RS232 Stringauswertung
Hallo adamo,

dank
Zitat:sprintf(buffer_out,"%4d,%4d",adc_value[0],adc_value[1]);
uart_puts(buffer_out); // Wandlerwert Wert senden
uart_putc(0xa)
sieht der VISA-Readbuffer wohl (beispielhaft) so aus:
Code:
123, 456<LF>
Das sollte man mit "%d, %d" als Formatstring scannen können...

Wenn das bei dir nicht funktioniert, musst du einfach mal den empfangenen String kontrollieren!

Wurdest du schon mal gebeten, den String im Readbuffer hier zu zeigen?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.12.2013, 00:47
Beitrag #9

adamo Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Dec 2013

13.0f2
2013
DE



RE: RS232 Stringauswertung
Die Kommunikation funktioniert mit dem Terminalprogramm
Hterm dauerhaft!
Mit Labviewbricht erfolgt nach kurzer Zeit ein Abruch mit
Fehlermeldung (siehe Sendeprotokoll)


Angehängte Datei(en)
0.0 .docx  Sendeprotokoll.docx (Größe: 72,48 KB / Downloads: 206)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.12.2013, 08:35 (Dieser Beitrag wurde zuletzt bearbeitet: 28.12.2013 10:25 von Lucki.)
Beitrag #10

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: RS232 Stringauswertung
(28.12.2013 00:47 )adamo schrieb:  Die Kommunikation funktioniert mit dem Terminalprogramm
Hterm dauerhaft!
Also noch mal, damit Du kapierst: Fehlermeldung und Programmabbruch kommen von der Funktion "In String Suchen", und das hat mit den Visa-Funktionen überhaupt nichts zu tun - jedenfalls nicht direkt. Der VISA-Code innerhalb des Labview-Programms funktioniert fehlerfrei. Wenn Du also die nachfolgende String-Auswertung deaktivieren würdest, würde das Labview-Programm genaus so gut funktionieren wie das Terminalprogramm.

Aber immerhin kann man jetzt am Sondenüberwachungsfenster sehen, woran es liegt:
Die Steuerung mit Abschlusszeichen funktioniert entweder nicht (obwohl es richtig konfiguriert scheint), oder das Abschlußzeichen 0xA wird nicht mit gesendet.
Schau doch mal im Terminalprogramm nach: Wenn das Abschlußzeichen richtig gesendet wird, müßte nach je zwei gesendeten Werten ein neue Zeile geschrieben werden. Wenn das nicht der Fall ist, kann das Labview - Progamm so nicht funktionieren.

Nachtrag: Was sieht man im Sendpuffer-String?
Richtig wäre:
549161, 549161
Man sieht aber:
...... 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 549161, 54916
D.h eine quasi unendlich lange Folge von Werten ohne Zeilenwechsel. Vias Read hat den Puffer nicht ausgelesen, weil ein Zeilenendezeichen kam, sondern weil das programmierte Limit von 150 Zeichen erreicht war. Dieses Limit wurde - wie sollte es anders sein - mitten in einem Wert erreicht, so dass die letzte Zahl verstümmelt übertragen wurde (54916 statt 549161).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: