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 

C-dll einbinden: LabVIEW hängt



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!

08.12.2010, 14:09
Beitrag #6

eug Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Oct 2010

Developer Suite 2010
-
de


Deutschland
C-dll einbinden: LabVIEW hängt
' schrieb:Das sieht schlecht aus! Solange die DLL Funktion nicht zurückkehrt kann LabVIEW mit den Werten im Buffer rein gar nichts tun. Das "do while" construct ist also ein ganz böser Killer hier und gelinde gesagt ist das sowieso eine Hackfunktion in dieser Weise. Das funktioniert in keiner einzigen modernen Programmierumgebung sinnvoll, ausser man macht ein dumbes 3 Zeiler Konsolenprogramm in C.

Ohne diese Funktion grundsätzlich zu modernisieren sehe ich da keine sinnvolle Möglichkeit um das auf eine gute Art in LabVIEW zu integrieren.

Da die ganze Kommunikation eh seriel ist denke ich aber das die Implementation dieser Funktion ganz in LabVIEW mittels VISA Funktionen 120% sicher die viel einfachere und bessere Lösung ist.

Hier ist Ablauflogik für diese Funktion:

test.c

struct XY //2300 Bytes
{
………
};
BOOL* D_Abbruch = false;

short D_Thread_ReceiveCont(void * puf, BOOL * abbruch)
{
.
.
XY *buffer = (XY *)puf;
bool dat_ok = false;
D_Abbruch = abbruch;
.
.
do
{
while( DatenLesen1() )
{
if(D_Abbruch == true)
{ return 6;} // Abbruchcode
.
.
dat_ok = true;
}
}
while(!dat_ok)

}
return 0;

Also, die Fuktion hat keine endloseschleife:
mit abbruch kann man zwangsweise Funktion abbrechen;
mit dat_ok das passiert automatisch wenn, DatenLesen1() ist gut gelaufen (Messwerte gelesen).

Die Funktion liest nur ein Messwert und dann return.
Frage:l
Soll ich subVI organisieren für einzige Messwert und dann "in LW" subVi in while kapseln?

Vielen Dank

eug
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Nachrichten in diesem Thema
C-dll einbinden: LabVIEW hängt - eug - 07.12.2010, 11:07
C-dll einbinden: LabVIEW hängt - rolfk - 08.12.2010, 02:28
C-dll einbinden: LabVIEW hängt - eug - 08.12.2010, 11:21
C-dll einbinden: LabVIEW hängt - rolfk - 08.12.2010, 12:16
C-dll einbinden: LabVIEW hängt - eug - 08.12.2010 14:09
C-dll einbinden: LabVIEW hängt - rolfk - 08.12.2010, 22:39
C-dll einbinden: LabVIEW hängt - eug - 21.12.2010, 17:13
C-dll einbinden: LabVIEW hängt - rolfk - 21.12.2010, 21:51
C-dll einbinden: LabVIEW hängt - Y-P - 22.12.2010, 08:21
C-dll einbinden: LabVIEW hängt - rolfk - 22.12.2010, 09:01
C-dll einbinden: LabVIEW hängt - eug - 22.12.2010, 14:44
C-dll einbinden: LabVIEW hängt - eug - 23.12.2010, 09:37
C-dll einbinden: LabVIEW hängt - jg - 23.12.2010, 09:43
C-dll einbinden: LabVIEW hängt - eug - 27.12.2010, 02:34

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  C++ Dll in Labview einbinden galilio 12 22.881 08.03.2014 01:56
Letzter Beitrag: rolfk
  LabView DLL in C# einbinden beginner85 2 8.598 27.04.2012 19:48
Letzter Beitrag: rolfk
  c# DLL in LabVIEW einbinden TSC 3 13.148 07.10.2008 08:13
Letzter Beitrag: TSC
  Visual Basic DLL in LabVIEW einbinden jacket12 2 9.732 10.06.2008 09:54
Letzter Beitrag: jacket12
  DLL in LabVIEW einbinden verflixxt 15 40.788 21.02.2008 21:11
Letzter Beitrag: IchSelbst
  Unrar.dll in LabVIEW einbinden xtro 1 5.075 13.02.2008 09:34
Letzter Beitrag: rolfk

Gehe zu: