LabVIEW block in serial communication!

Hello.

I use pl2303HXA (usb to UART converter) in my design data and sending of microphone for pc in LabVIEW 2013 x 86.

When I tried in a terminal CODEVISION, everything is OK and each microphone send to a PC, Hypertermial or Terminal CODEVISION is received correctly.

but when I run LabVIEW, it works for a few seconds and Communication all of a sudden abrupt and LabVIEW crash. You can see in picture I capture from my Telechareger below. Why LabVIEW hang?

the image is the front of my VI.

every time it blocks, I have to restart LabVIEW and test again. in the meanwhile I have to said hang occur randomly.

Thank you.


Tags: NI Software

Similar Questions

  • Serial communication - ignore parity error

    I have a question about how LabVIEW opens a serial port for communication. I communicate with a device that uses a protocol owner. It sets and clears the parity bit to indicate the nature of the response. For example, the orders are sent with the parity bit higher while responses are sent with the weak parity bit (unless the answer is at the end of the transmission, in which case the device sets the parity bit high to indicate).

    My problem is the way that LabVIEW opens the serial port for communication. Using Portmon, that I captured the control indicators, that it sends to Windows to configure serial communication:

    IOCTL_SERIAL_SET_LINE_CONTROL   Serial0 SUCCESS StopBits: 1 Parity: MARK WordLength: 8IOCTL_SERIAL_SET_CHAR  Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:11 XOFF:13IOCTL_SERIAL_SET_HANDFLOW  Serial0 SUCCESS Shake:1 Replace:44 XonLimit:64 XoffLimit:64
    

    Note the values 'Shake' and 'replace '. In my view, they are originally bytes with parity errors is removed. A separate RS232 Comm Debug tool that I use with success looks like this:

    IOCTL_SERIAL_SET_LINE_CONTROL    Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8IOCTL_SERIAL_SET_CHAR  Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:11 XOFF:13IOCTL_SERIAL_SET_HANDFLOW  Serial0 SUCCESS Shake:0 Replace:80000000 XonLimit:128 XoffLimit:128
    

    Notice the difference in values. By using this tool, Windows does not packages with parity errors - that's what I want. Is there any way to change how LabVIEW opens the serial communication port to achieve?

    I tried to change the parity, where the ILO is defined differently, but I think that I am running in a race condition; LabVIEW can not run the code and change the mode of fast enough parity before the next byte of data is sent by the device.

    Ravens fan: the parity bit, in the proprietary protocol, that I use, is not used for parity checking. Basically, the protocol uses a 9-bit serial communication. The parity bit must be paid or compensated according to what byte do (if it is a command, if it is the end of transmission, etc.).

    I found an old post on this page which seems to answer my question (my apologies for not completely research before posting... I learn the right use/search phrases that I find more information). I download the 3.4.1 version of VISA now.

  • Programming of the digital I/o pins on the NOR myRIO-9100 for serial communication

    I use NEITHER myRIO for my robot and I want to use four reading of the distance sensors that communicate via the serial port. But the myRIO has only two UART ports on board so I was wondering if there is a way to program the digital pins use for serial communication. Any help appreciated.

    It is possible.  Here is an example that I could find.

    Example of reference to RS-232 for LabVIEW FPGA Interface

  • Serial communication error VISA with LUDL stage controller

    Hello

    I'm trying to control a micro-positionnement made by Ludl stage. The model is Ludl MAC2000. It seems that the RS232 comunnication is implemented because I can talk to the controller using HyperTerminal. However, when I want to do the same thing through Labview, I can't answer the controller at all. The vi is roughly the same as the visa basic read/write in the example. Looks like a very similar problem in this post:

    http://forums.NI.com/T5/instrument-control-GPIB-serial/visa-serial-communication-problem/m-p/567065#...

    But the trick of nature of endpoint does not help in my case: I tried to toggle the termination character setting in the property node and different combinations of '\r', '\n' as termination characters, but nothing has worked so far.

    Seems to me there is some difference between the interpretations of the same order to Hyper Terminal in Labview. But I just can't understand what it could be.

    Anyone with a similar experience could give me some comments/suggestions? Thank you very much!

    Another difference between hyperterminal and labview is the speed of sending characters.

    LabVIEW breaks out the whole string to the controller

    HyperTerminal is this character by character. So much slower and slow the controller can be affected by this.

    You could add a loop around the writing of visa (to make it easy convert the string into a byte array outside of the loop and convert it to a string inside and you have a shipment char by char in LabVIEW

  • VISA + Serial Communication - need help!

    Hello world

    I have a lot of help with my project of this forum and I'm looking for more . Thank you for taking the time to help. Please bear with my as I ask a LOT of questions.

    I intend to control a frequency converter using its series terminals and send orders from my PC + LabVIEW it. The commands do the basic functions like, start, stop, speed up/down etc etc. I use a converter Series USB to transfer data.

    Now, I ve played with examples like SERIAL COMMUNICATION VI and others and I begin to understand the functioning of VISA.

    Q1. In order for LabVIEW + VISA contact my frequency converter, do I need to install some sort of a driver for him to recognize? The frequency controller is old ages, even I don't know and I don't think I can find a driver for it any time soon? What kind of driver I'm looking for? Is it possible to customize my own driver and which would be easy?

    accessory included - process.jpg

    I downloaded some pictures about the problems of data format. I need to send information to the converter to format "telegram" as shown in the image below. Each 'function' in the 'format telegram' has varied length in bytes: some have 1 others have 2, other 4...

    I also downloaded an image called "Format.jpg" which indicates what information each of these 'functions' will contain. Note:-the frequency converter uses only the last 4 bits.

    Say for example:

    START function will have this bit of information-

    Start the Byte - ASCII ' 59 "

    Address - 00

    Control character -? I'm not sure what it should be I need to use the converter based on parameter values - is confused on what to choose - C, U, I or r Start, stop, etc. have their own specific parameter values such as 402, 404 RESP, so I guess I want update (U)?

    Word of State control -? depends on the previous action

    Sign - do not necessary

    Data - 0

    Comma - is not necessary

    check the sum - is not necessary

    Stop the Byte - ' > ' (ASCII: 62)

    Phew... How would I go about clubbing this whole format together to send a control signal? Put all this information in a table allow somehow?

    Please help to me... to achieve desperately need...

    Thank you

    Sandeep

    It would be useful that you could find a driver, but it is not absolutely necessary to have a. You can write your own, use the Instrument i/o Assistant, or use VISA readings and some discreet.

    The format of the commands is a bit complicated but not impossible. You just need to be careful to have the exact number of bytes.

    What I don't see in the atttachments, it is possible words to control and the State and the number of parameter. I hope these are in another part of the manual.

    A bytes example (without the control and settings) to update the frequency to 12.34 could be '<00U________+123403??>'.

  • Serial communication cause the crash of LabView

    Hello

    I'm set to do a serial with Labview. The problem is that the program always crash (no popup error but only LabView don't freeze) when I read or write with VISA.

    I work with a module converter (ADAM 4571) that convert Ethernet to RS-232/422/485. The module is mapped to the computer and the similar work as a COM port. I tested the connection with the Terminal windows and its work. This means that it is not a hardware problem.

    I did the same communication a few weeks with the same material and did not have a problem. I don't understand why it does not work now.

    I give my code as an attachment, but it is not something special except for the block that buffered (which is required for my module), but if I remove it the problem persists.

    Does anyone have an idea what can be the problem?

    Thank you

    Jérôme

    OK, I solved the problem.

    The version of the driver for the converter module mapping was not exactly right, now I change it and its work.

    Jérôme

  • Can't get bytes of CPU to read in LabVIEW * FTDI * Serial Communication *.

    I have trouble to get LabVIEW to display the bytes I send from a microcontroller with a FTDI chip.

    Specifications of communication are:

    baud-19200

    -8-bit word length

    -1 stop bit

    -no parity

    -no flow control

    I modified the demo of the chain of read-write of the here just reading the chip. I see that a few bytes have been read in the indicator "bytes read" but nothing appears in the buffer. Any ideas? I may have something hooked up wrong or something wrong in communication specifications


  • imitate running a script to run Labview tera - serial communication

    Hi I have an anemometer which I am trying to communicate with via the serial interface. I am connected via a USB converter to 485. The manufacturer of the anemometer provided two scripts of term tera to communicate with the device. When I run scripts in tera term anemometer reacts as expected. When I imitate (or so I think I'm) orders in Labview, I get no response.  Please see the attached document for more information.

    I'm not familiar with the language of terms of Tera, but what I found on the internet I guess that there is more information (CR & CRLF variable defined by the code2str function), which is in fact the echo back on display "00TR 00012 '.

    Any ideas?

    Thank you

    -Scott

    It is probably sending a return trolley/line.  (or just one or the other).

    I suggest using a program like Portmon using Teraterm to see what is actually sent and received.

  • Serial communication is blocking my time loop

    Hello world. I need your help with my program. I use LabView2014 and a B2902A Agilent.
    I want to measure the current value with my instrument continuously, store the values of every second and the display of the messages received through the serial port when I'm gone.
    Everything works perfectly separately, but when I put everything together I have this problem: my instrument is waiting for a message from the serial port to take (and display) a measure.
    You have an idea to save my problem?
    Thank you!

    Pauline

    (Please find attached a screenshot of my program)

    Use the byte to serial port to check if a message is available and read only when a message is available.

  • Serial Communication issue - packed LabVIEW library used in the Scripts of TestStand

    Hello

    I have developed a RS422 driver in LabVIEW for the basic operation is as initialize, reading, writing, closing etc. Later I used it as a library wrapped in TestStand scripts.

    The question is, when I try to read the answer to one of the command, I am able to observe it in the iteration 6th step of reading, where I'm supposed to read for the first time.

    Please suggest any ideas on what could be the reason.

    You need to know if the response data really who arrives late, after giving a command or the VI you wrote is not able to capture the correct data.

    If you have a recorder RS 422 or bus Analyzer then it will be easy to analyze the cause.

    Since you are able to read step 6 on reading a few questions:

    You are still able to read on the 6th read-only? If yes then probably the target USE responds slowly to this command or it sends too much unnecessary data that are read by the 5 first readings. (depends on your reading algorithm).

    Playback vi must be written such that it will be in a loop (with some time out) until it gets the required data. The expiration time should be configurable.

    Also before sending the order you must ensure that the buffer is empty (rinsed).

    I hope this helps.

    Ravi

  • Problem formatting of serial communication

    I am communicating with a host machine that spits out data on the serial port.  I'm using fairly standard settings (9600, 8, N-1) and I'm getting data.

    The problem is the formatting of the data.  Obviously, the data are supposed to be fixed width, but the fields are moved after each CR/LF.

    Some examples of data:

    0   |    0.925.    0,833 |   110.444 |   549.278 |    23.812 |
    |  2   |
    0   |    0,921 |    0,832 |   106.971 |   480.604 |    24.464 |
    |  3   |
    0   |    0.926 |    0.831 |   114.320 |   555.821 |    23,785 |
    |  4   |
    0   |    0.920 |    0.830 |   108.434 |   587.374 |    23.411 |
    |  5   |
    0   |    0.925.    0.836 |   106.459 |   554.808 |    23.717 |
    |  6   |
    0   |    0,923 |    0.830 |   112.048 |   507.875 |    24.242 |
    |  7   |     0
    |    0.924 |    0,837 |   103.943 |   605.860 |    23.181 |
    |  8   |     0
    |    0,921 |    0.831 |   108.303 |   582.447 |    23,459.
    |  9   |     0
    |    0.925.    0,827 |   118.501 |   426.680 |    25.118 |
    | 10.     0
    |    0,922 |    0,826 |   116.223 |   483.567 |    24.527 |
    | 11.     0   |

    Any ideas what may be the cause?  There the series parameters that may change the data format?  I get the same results using LabVIEW and hyperterminal.

    I have No control over the host (long story).

    Thanks for your help.

    Set the properties of your VISA to "activate the term on readings tank" = TRUE and "term char" = 0x0A (line feed).  Configure your reading to read MORE characters that you expect and each reading will end when we see a 0x0A. (you can remove the warning from VISA if you wish.

    -What happened to the cursor - this lack of cursor's post a little harder! Laura_F - is this known?

  • Problems with the simple serial communication.

    I followed a tutorial online to start learning basic communication series. The involved tutorial shorting pins 1 and 3 on port 1 Comm and write a simple program (attached). I've edited it a bit, the program to see varied results I get when trying to write and read a simple sentence via a serial port.

    Could someone explain what causes the kind of result shown in "Serial Comm example.png"? I think it has to do with timing. Why would be transmitted only the parts of the sentence?

    Thank you

    Sarah

    sarahzig wrote:

    The involved tutorial shorting pins 1 and 3 on the Comm 1 port

    What should be pins 2 and 3?  On a standard serial port DB-9, pin 2 is the receive and pin 3 is the transmission.

    Now for your code...

    1. move the Serial Port to be before the loop to set it up.  Simply configure the port once.

    2. close the port after the loop.

    3. managing your error after closing.

    4 stop your loop on an error or the stop button has been pressed.  You will need a RC in there.

    5. no need to Flush Buffer function.  Remove it.

    6. using the bytes to the Port is a dangerous thing.  It introduced all kinds of race conditions that are interesting.  Instead, say VISA reading to read the number of bytes that you expect to read.

    6a. Moreover, don't forget to send a character to end of line at the end of your data and all the number of bytes to read something a lot more than you ever expect read.  The VISA read will stop reading when he a) sees the number of bytes, it was said to read, b) sees the stop character (currently enabled and set to a line break, which is part of the end of line), or c) the time-out occurs.  Whichever comes first.

    7. with 6, the wait is no longer necessary.

  • serial communication - program is slow

    Hello community,

    I have a problem: I'm using LabVIEW to communicate with a CPU with RS232, but the program is extremely slow. In this configuration (it's a minimal example), it takes about 8 seconds to send a new string. What could be wrong? (I'm a beginner)

    The program of mission is to prepare a string containing incrementing values and send over the UART.

    Thanks for your help!

    Greetings!

    The yellow bulb is to highlight execution.  It is strictly a debugging tool.  Your turn that to slow down execution and be able to see how the data passes through the wires.

    Disable execution of climax, and it will run at full speed.

    But how do you use this VI?  You have not a while loop and you have not told me if an another VI call this VI.  So this VI runs only once and then stops.

    (Please don't tell me you use run continuously the button which is also strictly a debugging tool.)

    I recommend you watch the LabVIEW tutorials online
    LabVIEW Introduction course - 3 hours
    LabVIEW Introduction course - 6 hours

  • LabVIEW block port UDP 6000

    Hello

    I noticed that when LabVIEW (8.6 but before as well) application that uses VISA is installed (by building the Installer) port UDP 6000 is blocked and no other program can use it.

    Does anyone know how to check that the other ports are blocked by VISA?

    Thank you

    Pawel


  • generate serial communication

    Hello

    I m a newbie really in Labview and would generate an own serial Protocol.

    I m using an NI USB-6363 data acquisition

    My logical State should look like this:

    And then I want to generate a command like this with my 0110 1101 Protocol for example.

    Can someone help me to implement my idea in Labview?

    THX

    At least, you have chosen a DAQ with timed material DIO card.

    Start looking in the viewfinder of the example (help-> examples find) for an example, called "digital - finished Output.  This example should help you get started for the release of your waveform.

Maybe you are looking for

  • I need to disable iCloud on my old iPad before you restore and give a child to friends?

    I want to give my old iPad to the child of a friend. But want to disable iCloud on THIS device. It also has a SIM card not activated because my SIM card activated is a newest iPad. How can I restore it so that it is fully functional?

  • I need a full copy of Windows 10 Pro

    I have a P910 ThinkStation second on command, and I need to have a full copy of Windows 10 Pro on a flash drive in the event of another disaster. I have not received response from Levono people other than "they don't like to provide. I have already r

  • DVD / disc not recognized Equium A100

    I recently bought a laptop with Vista installed Equium. On my old pc (Windows XP Home edition), I supported a large number of pictures and files on a DVD disc with nero, when I try to load these on my laptop the drive is not recognized. I have a lot

  • PC2-5300 667 Mhz RAM for Qosmio F30-141?

    Can I use a PC2-5300 Ram on my Qosmio F30?I want to upgrade my ram and I prefer PC2-5300 instead of PC2-4200.On the toshiba homepage I didn't understand, but in corsair.com, they have a compatible ram research research for your pc or laptop and he sa

  • Pavilion x 2: Windows product key Validation after hardware change (new SSD)

    I have a Pavilion laptop x 2 with a 64 GB SSD.  It came with Windows 8.1 but he now works Windows 10 - of course.  I decided to upgrade the 256 GB SSD.  I bought the appropriate module (a Sandisk).  I recently contacted Windows support to inquire abo