Is the visa i/o port serial or parallal

I am trying to understand if the VISA works in serial/parallal mode so I can send ASCII data on it, and convert it if necessary.

Correction: It does work with Serial and Parallel Ports
See: http://zone.ni.com/reference/en-XX/help/371361B-01/lvinstio/visa_serial_parallel_ports/
Matthew Fitzsimons
Certified LabVIEW Architect
LabVIEW 6.1 ... 2013, LVOOP, GOOP, TestStand, DAQ, and Vison

Similar Messages

  • The "VISA Configure Serial Port" VI will only run at 9600 Baud

    I have written a Serial Port monitor "RS232 RW.vi"  that works for the most part. The problem is that it will not respond to alternate port configuration settings.... For instance: the default RS232 Serial port configuration is:
    (COM1,9600 baud,8 data bits,1 Stop bit, None no parity)
    As a test, I am using a Null Modem Cable to connect From my LabView Com1 port to another PC running RealTerm Serial Port Monitor.. Using my newly designed "RS232 RW.vi"  With port settings of (COM1,9600 baud,8 data bits,1 Stop bit, None no parity),  I can send and receive data back and forth all day long no problems....
    However, if I configure the "RS232 RW.vi"  port to any other configuration, such as (COM1,2400 baud ,7 data bits,1 stop bit, Odd parity).. It will not take the expected chances and continues to operate @ 9600 baud etc.
    I then changed the "RS232 RW.vi"  default settings to (2400,7,1,Odd)
    it still refuses to deviate from (COM1, 9600,8,1,None...)
    I also went into the Win XP  Device Manager on the LabView system and manually configured Com1 to 2400,7,1,Odd  
    and still,.... the "RS232 RW.vi"  will only operate @ 9600,8,1,None
    Can anyone else test drive my VI and see if they have the same problem of not being able to see new changes in the Port configuration settings ..other than (COM1, 9600,8,1,None...).... ?
    FYI.. Unfortunately my LabView is running on Version 6.0 so you may need to up-convert the attached vi
    Solved!
    Go to Solution.
    Attachments:
    RS232 RW.vi ‏102 KB

    Instead of just appreciating the comments, you need to implement them.
    Having the VISA close inside the loop is definitely the problem.  And Crossrulz is 100% correct about the problem being that the serial port gets reset to the default baud rate after closing the port.  Here is the proof.
    Note that while you may have set the port settings manually in device manager, those settings are revised by the VISA driver.  If you look in Measurement and Automation Explorer under Devices and Interfaces >> Serial and Parallel, you'll see the default settings that the VISA driver uses.  If you change the setting there, your program will work the way you want.  But that is not the correct fix.  The correct fix is to get the VISA close out of the while loop.
    The port settings are established in this order.
    1.  By the Windows device drivers.
    2.  By the VISA driver as established in MAX.  Since you are useing VISA, these settings will automatically override #1.
    3.  By the port settings you set programmatically in your LabVIEW program.
    Attachments:
    Example_VI.png ‏18 KB

  • The vi is identifyng the number of bytes to be read but the VISA Read vi is not able to read the data from the port.

    We are trying to communicate with the AT106 balance of Mettler Toledo.The VI is attached.
    We are sending in "SI" which is a standard command that is recoginsed by the balance. The balance reads it.The indicator after the property node indicates that there are 8 bytes available on the serial port. However, the VISA read VI fails to read the bytes at the serial port and gives the following error:
    Error -1073807253 occurred at VISA Read in visa test.vi
    Possible reason(s):
    VISA: (Hex 0xBFFF006B) A framing error occurred during transfer.
    The Vi is atttached.
    Thanks
    Vivek
    Attachments:
    visa_test.vi ‏50 KB

    Hello,
    You should also definitely check the baud rates specified; a framing error often occurs when different baud rates are specified, as the UARTs will be attempting to transmit and receive at different rates, causing the receiving end to either miss bits in a given frame, or sample bits more than once (depending on whether the receiving rate is lower or higher respectively). You should be able to check the baud rate used by your balance in the user manual, and match it in your VI with the baud rate parameter of the VISA Configure Serial Port VI.
    Best Regards,
    JLS
    Best,
    JLS
    Sixclear

  • VISA Configure Serial Port / Serial Instr

    What's the difference between VISA Configure Serial Port and VISA Configure Serial Port (Serial Instr)?
    LabView 7.0 Help gives no comprehensive explanation:
    You can use this polymorphic VI to initialize a serial port using the Instr VISA class or Serial Instr VISA class.
    Thanks,
    Greg1997

    Hi Greg1997,
    From what I have seen in LabVIEW 7.1, there is only one VISA Configure Serial Port function block.  It does have a polymorphic VISA Resource Name input to accept either an Instr VISA class reference or a Serial Instr VISA class reference.  The Instr class is a more general class than the Serial Instr VISA class (so there are more specific attributes available to the Serial Instr VISA class), but both references can be used with the VISA Configure Serial Port block.  Hope this helps!
    Regards,
    Anna M.
    National Instruments

  • How do I use the VIs for the Fluke Hydra Series 2620a multimeter?

    This message refers to the VIs found at this link:
    http://sine.ni.com/apps/we/niid_web_display.download_page?p_id_guid=E3B19B3E9468659CE034080020E74861
    How do I use the VIs for the Fluke Hydra Series 2620a multimeter? I am conducting a Senior Design Project at Temple University. It is a Control System where I need to read voltages from sensors and output voltages to different system components. I am trying to set up a VI using the VIs found above to make sure that I can successfully read and send voltages. There was no documentation given with the 2620a VIs.

    Unfortunately, you've got a very old driver for an old instrument. The only available help is to turn on Context Help and move your mouse over the VI icon. It doesn't appear to have any help for individual controls and indicators. The only good news is that it appears to be a simple instrument with only a few functions. There's some main ones line initialize (to set serial port), configure channel, configure instr, and read values. One main thing is whether you're using gpib or serial, Each front panel has a setting. If it's gpib, set the port to the gpib address. If it's serial, set the port to one number less than the com port you're connected to. For example, if you're using Com1, set the port to 0. For the other controls, I'm afraid that you're going to have to try and compare what's there with the controls and settings of the actual instrument. Having access to the instrument manual will be essential. I would engourage you to experiment a little. There's probably very little chance of damaging the instrument especially if nothing is hooked up to it. Send a command and see what happens or set the instrument up manually and see if you can reproduce that via remote control.

  • How to include the visa run-time into the installer?

    Dear All,
              I made an USB device whose driver is developed by "NI visa driver development wizard".
              In my program, the COM is also be used. When it is builded and creats the installer, I have checked the Serial Port Suport in Advanced settings in Installer which I thought the visa run-time engine is concluded. In fact, when it is installed, the COM can work correctly, but the USB device's driver can't be installed. To fix it, the visa run-time engine must be setupped again.
              I see that I can add it to "run executable after installation" but during the installaion of run-time engine, some pages will be displayed which need user to choose some option.
             Would you please give some suggestion that the process of installation is automatic. Certainly the part of visa run-time engine which the USB driver is needed can be integrated to the installer of vi(like COM) is best.
              Thank you!
    Hugo
    PS: I am using LabVIEW 7.1

    First, you can install a VISA Runtime Engine in the target PC, to verify it is VISA Run Time Engine issue.
    If so, you can add a VISA Run Time Engine in LabVIEW when creating an Installer. It is much easy in LabVIEW 8 and still possible in LabVIEW 7.1. Follow the link.
    http://digital.ni.com/public.nsf/allkb/E09BA0E2F31​D304F86256A640070058E?OpenDocument

  • What do I port serial driver to Intel Solaris8?

    How do I port a serial driver from linux to intel solaris8 ?
    Because I can't find the serial driver sample, so it is difficult
    to make it work in intel solaris8.
    Are there someone knows how to handle? or any suggestions?
    Thanks.

    That kind of depends. Very old versions of LabVIEW only had one serial driver called serpdrv and several LabVIEW functions that called it. There were some advantages to using these when you built an exe since serpdrv was same and easily included with the exe distribution. Several years ago, a new communication API called VISA was introduced. VISA gave programmers a single driver to communicate with serial, gpib, VXI, ethernet, and now USB instruments. The downside to VISA for built applications was that the installation of the driver was a bit more difficult to include and it required quite a bit more disk space. I've preferred using VISA for quite a long time and since I typically use a mix of serial and gpib, VISA made the most sense to me. Now, in Lab
    VIEW 7, VISA is the only supported interface and NI has made the installation easier and the disk requirements smaller. So, if you're looking forward, I would recomend the VISA functions - VISA Write to send data to the serial port, and VISA Read to receive data. The older functions can be found on the I/O Compatability>Serial Compatability palette. LabVIEW 7 has a compability palette as well but they are VISA functions writeen to look like the old ones.

  • How work the Visa session?

    I'm working with the Visa session. When I receive from an external processor the hex value 0X0A then suddenly aboard the reading instruction. When I want to receive the value 0XAA0A55 then I receive only 0XAA0A. Why?

    Hi
    defuflo is right. The read ends due to the termination character. If you do binary serial transfer you have to do the following:
    You have to set the "Termination Character Enable" property to false. In LV 6.0.2 use a property node which input comes from the "duplicate VISA resource name" output of the "VISA configure serial port", in LV 6.1 it is a parameter to that function.
    Second use a property node to set the "Serial Settingserial End Mode For Reads" to "None".
    Waldemar
    Waldemar
    Using 7.1.1, 8.5.1, 8.6.1, 2009 on XP and RT
    Don't forget to give Kudos to good answers and/or questions

  • VISA problem when setting serial read buffer on MAC?

    Hello,
    I have the following rather strange problem with serial communication on a Macintosh:
    1. I wrote a program using the simple serial VIs provided in LabVIEW and write and receive amounts of data up to about 25000 bytes. The serial buffers are both set to 32000 bytes. If I wait long enough everything works perfect (this was just a test VI for reference)
    2. I wrote the same program using VISA calls, I initialize the port exactly the same (or so I think), set and flush both read and write buffers. Then I send the data, which seems to work, except that I have to increase the general time out of the VISA session (which is already odd as it should just be sent to the buffer). However the read oper
    ation allways fails. It seems that no matter how long I wait after the write operation the buffer only contains 63 bytes, where is the rest going (from the program described above and the reaction of the instrument I know that everything is sent!)? What I read is the echo of what is sent plus one extra byte, it seems that those 63 bytes are the first 63 that are sent, the buffer is thus not overwritten as I would expect if the buffersize was to small.
    If anyone could shed some light on this problem I would be very greatfull.
    Best regards
    Koen

    I haven't tried this yet but I had the same problem as you. This was
    pasted from an earlier response from a post I made a month ago.
    >There are 2 things to try here:
    >1) Set the serial input end mode attribute to 0. The
    >attribute/property name is either "ASRL End In" or "Serial End Mode
    >for Reads".
    >2) Use the "VISA Set I/O Buffer Size" function in the VISA Interface
    >Specific subpalette. This will let you set the receive and/or
    >transmit buffer size.
    >LabVIEW VISA Software Dude...
    Koen wrote:
    > Hello,
    >
    > I have the following rather strange problem with serial communication
    > on a Macintosh:
    >
    > 1. I wrote a program using the simple serial VIs provided in LabVIEW
    > and write and receive amounts of data up to about 25000 bytes. The
    > serial buffers are bo
    th set to 32000 bytes. If I wait long enough
    > everything works perfect (this was just a test VI for reference)
    > 2. I wrote the same program using VISA calls, I initialize the port
    > exactly the same (or so I think), set and flush both read and write
    > buffers. Then I send the data, which seems to work, except that I have
    > to increase the general time out of the VISA session (which is already
    > odd as it should just be sent to the buffer). However the read
    > operation allways fails. It seems that no matter how long I wait after
    > the write operation the buffer only contains 63 bytes, where is the
    > rest going (from the program described above and the reaction of the
    > instrument I know that everything is sent!)? What I read is the echo
    > of what is sent plus one extra byte, it seems that those 63 bytes are
    > the first 63 that are sent, the buffer is thus not overwritten as I
    > would expect if the buffersize was to small.
    >
    > If anyone could shed some light on this problem I would be
    very
    > greatfull.
    >
    > Best regards
    > Koen

  • Visa error handling in serial communication

    Greetings,
    I have a problem with the serial communication in my Labview program.
    I have made an application that reads from serial port, searches for beggining characters, and later counts data after that beggining characters into variables in Labview program.
    Everything work fine, but problem starts when I unplug the device from computer.
    Program blocks and I could not do anything. Even Visa Close does not do anything.
    I need to restart my computer to make my application works.
    I made some indicators in subVi, and I see that when I unplug the device the error from READ VISA changes.
    My question is:  How to handle this event(error) to restart or unblock my serial device.
    I am attaching a SubVi, that searches for starting characters " KBON,"
    Best regards,
    Chris
    Attachments:
    find_start.vi ‏12 KB

    Hi Chris,
    From the standpoint of VISA capabilities, you should be able to programmatically handle the desconection of the serial port. I am however not certain that your specific serial port hardware is OK with that.
    As to how to handle disconnection using VISA:
    I recommend using the "timeout" pin of the VISA Configure Serial Port VI
    when the timeout is reached and no data is transferred, you will get a timeout error on the error wire.
    You can then programmatically handle this error case in your code in a very similarly to this example.
    I recommend experimenting to see what error codes your application throws, or alternatively you can use the VISA error codes documentation to create the case structures needed to hande these errors.
    In all cases, you should close the VISA reference. Leaving the serial port rescource "open" in your operating system may be the reason why you need to restart your computer every time (as restarting will for sure free up the serial port rescource).
    Best Regards,
    T Simon
    National Instruments
    Applications Engineer
    Certified LabVIEW Developer - Certified TestStand Architect

  • I cant find my GPIB device in the VISA resources list

    Hi,
    I am using Labview 8.5.1. I am trying to program my Agilent multimeter with Labview. I have downloaded the drivers for the model. HOwever, I dont see the device on the VISA resources list. All I see is COM, LPT1 and refresh. Is there a solution for this?
    Regards,
    Wiki

    Hi r31415smith,
    There maybe a little of confusion here but, I believe when communicating with a GPIB device you would want to use VISA commands and when you are looking to communicate over the serial port you use the VISA-Serial commands.  The Basic Serial Write and Read.vi is looking specifically for a serial port.  
    If you downloaded the keithley drivers from here and installed them using the directions from here.  Then there should be Keithley examples installed on your computer.  If you open Labview 2010 and navigate to Help > Find Instrument Drivers.  A dialog will open up and show you the installed instruments.  Then, if you click on Keithley 24xx it will show you example files for communicating with your instrument.
    I think that if the Basic Serial Read Write had worked in the 8.5 the example file may have been change to only work with a visa serial instead of general VISA.  
    Hopefully this has helped you out and shed some light on what is going on. 
    Regards,
    Mike Altmann
    LabVIEW Platform PSE
    National Instruments

  • Problemi con eseguibile lettura da porta seriale

    Buongiorno,
    ho creato un vi che richiama una subvi per la ricerca automatica della porta seriale. Una volta creato l'exe non avviene la comunicazione della porta seriale, se invece lo lancio dal mio pc ove è installato labview funziona...ho anche installato il VISA runtime engine 5.3 (posseggo la versione di labview 2011)...qualche idea?!? grazie mille!!!
    invio in allegato l'immagine del subvi..
    Attachments:
    Immagine111.png ‏31 KB

    Buongiorno,
    Ti consiglierei di seguire le indicazioni delle seguenti KB.
    My VISA Executable Does Not Run on a Nondevelopment Machine
    http://digital.ni.com/public.nsf/allkb/DB5E81EAFC9A463886256AA8005EA2B1?OpenDocument
    How Can I Include Additional Installers with My LabVIEW Applications' Installer?
    http://digital.ni.com/public.nsf/allkb/E09BA0E2F31D304F86256A640070058E?OpenDocument
    What Additional Files Are Required with an Executable Created with the LabVIEW Application Builder?
    http://digital.ni.com/public.nsf/websearch/E11297C4EECAB110862565A900648083?OpenDocument
    Saluti
    Enrico D.

  • Envio de Trem de Pulsos pela porta SERIAL

    Olá pessoal. Eu preciso enviar  trem de pulsos de frequencia de 1Hz  com tempo em nível alto de 5us (micro segundos) durante uns 30 minutos  pelo pino 3 da porta serial ( Tx ). Ja montei o circuito de conversao de RS232 para TTL. E no programa ja fiz a rotina basica de envio de sinal pela porta serial e ja constatei seu perfeito funcionamento.  O meu problema é que nao consigo enviar um NIVEL 0 para a saida. No bloco respensavel pela escrita VISA SERIA WRITE o valor que coloco é representado em ASCII e nao consigo enviar um nivel logico zero na saida. Ja consultei a tabela e o codigo NUL que representa os bits 0 nao sai. Tentei usar o VI BREAK mas ele nao satisfaz meu projeto pois mantem o nivel baixo somente por 500ms e ocorre um certo delay.
    Resumindo COMO ENVIO UM BIT ZERO PARA SAIDA PELO VISA SERIAL WRITE EM ASCII??? Desejo que minha saida fique em zero por alguns segundos.
    Obrigado pessoal. Em anexo segue meu programa.
    Anexos:
    serial.vi ‏10 KB

    Oi Thiago,
    Na saída Serial, todos os valores '0' representam valores positivos e todos os '1' representam valores negativos. Para ficar mais fácil de entender, lembre que o MSB determina o sinal do valor:
    0xxxxxxx -> positivo
    1xxxxxxx -> negativo
    Este link fala um pouco mais sobre como medir os valores da porta serial e aborda esse assunto (as imagens não estão abrindo, mas você consegue abrí-las pelos arquivos em anexo):
    http://digital.ni.com/public.nsf/websearch/79B995C3638F4177862572C900593631?opendocument&Submitted&&...
    Para você que está trabalhando com comunicação serial, é legal também manter esse guia:
    http://www.ni.com/pdf/manuals/371253b.pdf
    Espero ter ajudado!
    Ricardo Ramos
    Engenheiro de Vendas - Sul
    National Instruments Brasil

  • How do I get the VISA resource drop down menu to be auto populated in my stand alone application (exe file)?

    Hi all,
    Here's a hopefully simple question.
    I am building an application (i.e. an exe file) from a simple program which use VISA to read and write to a RS-232 com port. When I run it before building the application everything works fine and the VISA resource control, which is a drop down menu, is automatically populated with available com ports. When I run the application on a computer without LabVIEW installed nothing appears in this window. I have made an installer which includes NI LabVIEW Rutime Engine 8.5, NI Measurement & Automation Explorer 4.3 and NI-DAQmx 8.6.1. Is there anything else I need to include? Any specific settings I need to do when I build the exe-file?
    I use LabVIEW 8.5.
    Thank you.
    Solved!
    Go to Solution.

    DAQmx is only for NI DAQ cards so I'm not sure why you installed that. The driver for VISA applications is NI-VISA (surprise!)
    Add the NI-VISA run-time to your installer.

  • How to force the "Bluetooth Communicat​ions Port" to be one of COM1 to COM8 ports?

    Dear Lenovo Community, Happy Holidays to you all and wish you a great happy new year. Recently purchased a Bluetooth OBDII device and have difficulty making it to work with its provided software on my T61 (running original XP Home). My short story and question/problem is that I can open "My Bluetooth Places" and pair with the OBDII device as an "OBDII SPP Dev", but my T61 assigns serial port COM19 to it. The OBDII software which came with the device only can let user set to one of the COM1 to COM8 ports and in the properties of Bluetooth pairing, there is no way that I can select which COM port to use. I looked at the Device Manager and I do see these COM port assignments: COM4,5,6,7: Sierra Wireless (the HSDA modem in the laptop which I have never used BTW) COM 9,10,11,12,13,14,15,16,17: Bluetooth Serial Port COM 18, 19: Bluetooth Communications Port and I don't see anything for COM1,2,3, and 8 My question is how to force the computer/OS to assign one of the COM1 to COM8 ports to my device upon pairing? Can I disable the Sierra Wireless model from the COM ports list and hope this will happen? Thanks for your help and inputs beforehand. Regards, AL

    Hi, AL_K
    Have you attempted to change the port number in device manager itself? If you navigate to Device Manager and open the list of Ports, you can right-click on the device you wish to assign a different port number. After right-clicking, click Properties. There should be a tab called Port Settings. In here, you should find a setting to manually assign a port number.
    Good luck, and let me know how it goes,
    Adam
    Did someone help you today? Press the star on the left to thank them with a Kudo!
    If you find a post helpful and it answers your question, please mark it as an "Accepted Solution!" This will help the rest of the community with similar issues identify the verified solution and benefit from it.

Maybe you are looking for