Da es mein erstes Programm im LabVIEW wird hab ich einige Probleme. Ich will ein Rechteck (mit variabler Frequenz und Amplitude) erstellen und dieses dann über die RS232 mit einer bestimmten Baudrate übertragen.
Das Rechteck erstellen und die Amplitude zu ändern weiß ich wies geht, jedoch hab ich probleme mit der Frequenz. wie kann ich überprüfen ob wirklich dann später beim testen über die serielle schnitstelle die richtige Frequenz rauskommt?
noch eine wichtige frage hab ich: wovon hängt es ab, wie schnell eine while schleife einmal durchläuft?? kann ich das vielleicht irgendwie so lösen, indem ich z.b.: bei einer baudrate von 57600 (in meinem Fall Bits/s) die schleife ebenfalls 57600 mal die sekunde durchlaufen lasse??
würde mich freuen wenn mir jemand ratschlege geben kann, danke
Ich verstehe nicht warum über die serielle Schnittstelle und wie es gehen soll?
Was hat Baudrate 57600 mit dem Rechtecksignal zu tun?
Bitte erklären.
Danke, Eugen
LabVIEW hat die minimale Zeiteinheit von 1ms, ausgenommen du hast RT-Modul und dazubenötigte Hardware.
So kannst du die While-Schleife maximal mit 1000Hz=1Khz durchlaufen lassen.
Eugen
eugen graf schrieb:LabVIEW hat die minimale Zeiteinheit von 1ms, ausgenommen du hast RT-Modul und dazubenötigte Hardware.
So kannst du die While-Schleife maximal mit 1000Hz=1Khz durchlaufen lassen.
Eugen
NICHT GANZ! eine while(for Schleife OHNE "Wait until next ms multiple" (=Metronom) oder "Wait (ms)" läuft so schnell sie kann, zieht dabei alle verfügbaren System-Ressourcen an sich und kann dadurch den Eindruck erwecken, das Programm wäre abgestürzt. Wenn man dann noch eine falsche Abbruch-Bedingung programmiert hat (bei der While-Schleife), dann ist es wirklich abgestürzt ;-) Dies gilt auch für das RT-Modul!
Also: entweder IMMER ein Timing in die Schleife einbauen, oder dafür sorgen, dass sie schnell beendet ist
Was Rufio machen will versteh ich allerdings auch nicht. Rechteck erstellen? über RS232 senden? HÄ? <blondguck>
der rechteck soll natürlich digital und synchron übertragen werden und zwar mit einer bestimmten baudrate. und der negative takt soll dabei immer 0 sein.
ich will mit diesem programm nur ein anderes programm testen. das 2. programm wird eine anzeige des rechtecksignals. nun will ich mit dem ersten programm dieses signal erzeugen und per serielle schnittstelle digital übertragen und auf dem 2. pc dann schaun ob es funktioniert.
HÄ?
du hast keinen einfluss auf die Signale, die aus der seriellen Schnittstelle rauskommen. Das macht der UART. Du kannst ein Zeichen über RS232 senden, das vom UART in entsprechende digitale Signale umgewandelt und beim Empfänger wieder rückgewandelt wird.
ich glaub ich steh ein wenig daneben :?.
möglich ...
beschreib deinen Test-Aufbau mal etwas genauer, vielleicht kommt ich dann drauf, was du machen willst ...
ok:
also es werden 2 PCs mittels seriellem kabel verbunden. auf dem 1. pc soll eben dieses rechteckprogramm laufen und auf dem 2. das programm, dass den kurvenverlauf in einem "waveform chart" darstellen soll. es soll in diesem waveform chart dann eben dieser rechteck erkennbar sein, wessen amplitude (negativer takt soll immer 0V betragen) und frequenz man mit dem 1. programm einstellen kann.
Ich glaube Parallelport (LPT) wäre die richtige Lösung.
Gruss, Eugen