Daq down counter example for pci-mio-16e-4 wanted

Hi!
I am searching for an example vi of a down-counter for
ttl pulse trains.
thnx,
Holger

Thanks for that, but that was also my first idea. Unfortunaly there is no
example for an DOWN counter in that directory. they all count up.
i want to count incoming a ttl-pulse-train and terminate that train(by
dio-line) when
counted exactly a certain number of counts. if i check the counts (600Hz)
each time by software, there seems to be no chance to terminate the train
at the desired number of pulses and thatfore i will have to use the daq card
on board counter. and my idea is, that a down counter (which is specified in
the
manual) would do it.
my question therefore is, if anyone has ever used a DOWN counter, because
i have no idea how to realise it/how to use the daq-included down-counter
vi, which
i don´t realy understood
i am thankful for any reply!
bes
t regards,
holger
"Nirmal Sharma" schrieb im Newsbeitrag
news:[email protected]..
> Hi,
> there are numerous examples which you can find at this path:
> C:\Program Files\National Instruments\LabVIEW 6.1\examples\daq\counter
>
> or Goto Find examples in Labview launching Panel -> Hardware Input and
> Output -> DAQ -> Counters
>
> If you are using DAQ card, Goto ->Count buffered edges or count Edges.
>
> Hope this works. Your feedbacks are welcome.
>
> Best Regards,
> Nirmal Sharma

Similar Messages

  • IV measurement example for PCI-MIO-16XE-10

    Is there Labview IV measurement examples for PCI-MIO-16XE-10 board ? I'm especially interested in producing the clean voltage out from the board. I'm seeing 10 meV noise in the analog voltage output.

    Hello,
    Reading the generated voltage with one of the anlaog input channels is the most recommended way to see if your board is giving an offset.
    I would also recommend to run the E-Series Calibrate VI. You can find this VI in the LV Functions Palette: Data Acquisition>>Calibration and Configuration. In the following link you will find an example that shows how to do this.
    Calibrate and E-Series Board using Internal Voltage Reference
    Good luck with your application!

  • Driver for PCI-MIO-16e-1(Linux)

    Hi,
    We have a PCI-MIO-16E-1 card from NI, and I
    am trying to look for a driver under Linux, Could
    anyone tell where I can find one?
    Thank you very much,
    Brandon

    Brandon Li wrote:
    > Hi,
    > We have a PCI-MIO-16E-1 card from NI, and I
    > am trying to look for a driver under Linux, Could
    > anyone tell where I can find one?
    >
    > Thank you very much,
    > Brandon
    Hi Brandon,
    You could find the drivers on http://search.ni.com/query.html?col=alldocs&qp=%2Bcontenttype%3Aknowledgebase+%2Blanguage%3Aenglish&layout=KB&qt=%2Blinux+%2Bdaq
    Good luck.
    Mikhail Pachkov.

  • DMA for PCI-MIO-16E DAQ

    Hi,
    I have DAQ application to stream analog data to HDD. My CPU is 100% used by DAQ process. Does anyone help me to find a solution to free up CPU and tell me how to use DMA?
    Thanks,
    Kishor

    Hi Kishor,
    I would suggest to take a look at the examples:
    Link 1
    Sincerely,
    Sastry
    Applications Engineer
    National Instruments

  • I need a user manual for a PCI-MIO-16E-1 DAQ card

    I am starting research using a PCI-MIO-16E-1 DAQ card that was used by a prior student and the manual is not available.  I tried to access the manual online through your websitem, but I was denied access.  How can I gain access to this manual so I can start to use this DAQ in my research?

    What you need is the E Series help file.  Here is the link, but for some reason if you can't get there, the zip file is attached.
    -Alan A.
    Attachments:
    370503f.zip ‏1260 KB

  • I am trying to generate a 50kHz sine wave for ten cycles, then aquire this waveform and store it in a file, I am using a PCI-Mio 16E-4 board, has anyone done anything like this?

    I am trying to generate a 50kHz sine wave output on the DAQ card and then simultaneously recieve. I am using a PCI-Mio 16E-4 series board to do this. Has anyone done anything similar. I can generate a 50k wave no problem, and recieve one, but I can not get these vis to run together? Any suggestiosn

    Jrod, yes you should be able to do this, actually there are quite a few example programs come with LabVIEW that handles simultaneous analog input and output, I check the specs of the board you use, the board should be able to handle the sampling/generation rate, but make sure for 50KHz sine wave, you would sample at least twice as fast, preferably ten times the generation rate, then this puts the sampling of the board to thew limit.
    The program you can try is attached here, good luck with the application,
    XD Gao
    Applications Engineering,
    National Instruments
    Attachments:
    Simul_AIAO_Buffer(E-series).vi ‏104 KB

  • Pins at a PCI MIO-16E-1 to Measure Frequency(DAQ-STC).vi?

    I want to measure frequency with the
    "Measure Frequency(DAQ-STC).vi".
    Can't find the appropriate connector pins
    in the manual of my PCI MIO-16E-1.
    Can someone confirm or correct me?
    Signal - PFI1/GPCTR1_SOURCE
    SignalGND - PFI9/GPCTR0_GATE
    PFI8/GPCTR0_SOURCE - PFI4/GPCTR1_GATE
    Thanks in advance
    Manfred

    Manfred,
    You can find this information by going to the http://www.ni.com/manuals site and viewing the E-series manual. There is a table which shows the pin number, name, and function for each pin.
    Pin 10 - PFI1/Trig2
    Pin 11 - PFI0/Trig1
    Pin 43 - PFI2/Convert
    Pin 42 - PFI3/GPCTR1_Source
    Pin 41 - PFI4/GPCTR1_Gate
    Pin 40 - GPCTR1_out
    Pin 6 - PFI5/Update
    Pin 5 - PFI6/WFTRIG
    Pin 3 - PFI9/GPCTR0_Gate
    Pin 2 - GPCTR0_Out
    Pin 4,39,35,36 - DGND
    Mark

  • Can I use multiple PCI-MIO-16E-1 cards under NT 4.0 SR3, LV 5.1, & NI-DAQ 6.5.1?

    We have not been able to run multiple AT-MIO-16E-3 cards with NT 4.0, because (partly) the cards & NT are not PNP. Will changing to the PCI-MIO-16E-1 &/or PCI-6071E (64 channel version) allow us to simultaneously run multiple (same type) MIO cards on the same computer? We want to use one card to interface to SCXI, & it appears that the PCI version uses the same cables/connectors as the AT series.

    Hello;
    The PCI version of the e-series boards have pretty much the same features of the ISA version, the only difference is the bus.
    So, you should be able to use the same acessories as you use with the AT boards.
    Anyway, you can still try to install the AT boards with NT. The following link is a good step by step installation guide with some troubleshooting hints also. You just need to select the board and OS you are working at.
    http://www.ni.com/support/daq/
    Hope this helps.
    Filipe

  • How can I wire two PWM outputs of Accelerometer into PCI-MIO-16E boad with SC-2043-SG?

    I have been using counter/timer pin since the accelerometer (ADXL202AE, Analog Device) provides about 550Hz PWM signal. The purpose of the project is:
    - To acquire PWM signals with Full cycle(ms) and Posity duty cycle(ms) generated in Accelerometer.
    - To convert the cycles into acceleration value.
    By using counte/timer(GPCTR0_Source) and Trigger(Trig1) on SC-2043-SG board, the signal was obtained.
    However, after converting the PWM signal to acceleration value and plotting with labview on-line, the sampling rate was pretty low (26-28samples/sec).
    Then, I began to doubt that there is a wrong wire connection. Even though I am using one counter/timer pin, the sampling rate
    was low. The purpose of using the acceleration was to obtain two output using two counter/timer pins.
    Could anyone help me wire pins and solve the problem?
    GINO.

    Gino,
    You should definitely be getting many more values in your buffer. You should actually be getting 500,000 values every second because a measurement is being taken for every pulse. I found a couple knowledgebases that describe error -10920 and how to remedy it. One is pasted below and the other can be found through the link.
    But I'm not sure if you're going to be able to fix this problem because you're measuring pulses at a very high rate. What is happening is every time a pulse width measurement is taken it is put into an onboard (DAQ board) FIFO buffer that is 9 samples long. The computer then reads these samples out of the FIFO and into an a buffer that you can see in LabVIEW. I think the FIFO is filling up too fast and the computer is not able to read the data out fast enough. Therefore you are losing samples because they are being overwritten. This is all dependent on your system.
    Here are some benchmarks for pulse measurements:
    The following numbers were derived from a Gateway with 128 MB-RAM and an Athlon 700 for ONE counter of the PCI-6602. The number of counters you are using will affect these numbers.
    Finite Buffer
    Buff Period - 7.25 MHz
    Buff Pulse Width - 7.25 MHz
    Buff Semi-Period - 3.35 MHz
    Continuous Buffer
    Buff Period - 250 kHz
    Buff Pulse Width - 250 kHz
    Buff Semi-Period - 140 kHz
    You should still be getting many more samples than 26 though. Try using this example with a very slow frequency pulse to make sure it operates correctly. Then start speeding up the pulse and determine when you get error -10920.
    Here is an internal knowledgebase that may help you:
    Title:
    After Long Periods of Acquisition with AI and Counters, a -10920 Error Occurs
    Problem:
    A customer has a PCI-MIO-16E-4 and his application is acquiring analog input signals and performing event counting with the buffered event counting mode. The problem is that the buffered event counting is at some arbitrary amount of time (e.g., after 2 days) getting an error with the number -10920. The questions are:
    1. Why is he getting this error?
    2. Do you know how big the FIFO is for this buffered event counting?
    3. When he shares a DMA channel with the floppy controller, how can we make sure they use separate DMA channels?
    Solution :
    Here are the answers to the above questions:
    1. There is probably just some noise on the signal line coming in at some point. The STC is VERY sensitive, so if there is any fast glitching, it will attempt to transfer all of these. This can also happen if the signal does not ramp up fast enough, resulting in double-triggering in the middle region. Use a filter, or a Schmidt trigger*, to clean up the signals. Another suggestion is to use the PCI-6602 with filtering.
    2. There is no FIFO used for the counters. The mMite has its own FIFO, but it is only about 9 samples long.
    3. PCI does not "share" DMA channels. It may technically be the same DMA channel number, but this is just for reference. PCI cards use Bus Mastering. With Bus Mastering, the operating system gives up control of the PCI bus so that the hardware (in this case, our DAQ board) can handle its own data streaming, eliminating the extra step of having the OS monitor the transfers. The DMA channel numbers are just the "channels" that are supported by the mMite chip. You can have 3 PCI cards in the PC, each with DMA 1, 2, 3, and none of them will actually be sharing any resources.
    And another knowledgebase about error -10920
    http://digital.ni.com/public.nsf/websearch/8FB9091CB9BB452B8525642000554799?OpenDocument
    Hopefully this all helps,
    Erick D.
    NI Applications Engineer

  • How to do a single channel DAQ using NI-DAQ driver software with a PCI-MIO-16XE-10 card

    Hi,
    I would like to find out how I could do a simple one channel Data Acquisition from a signal generator using the NI-DAQ driver software with a PCI-MIO-16XE-10 card.
    I have written some test problem but even when the signal generator is turned on/off I get back some weird values.
    Here is my code.
    CString sFunctionName("");
    double volt[OUTPUT_POINTS*2];
    double out[OUTPUT_POINTS*2];
    short timebase, ready, code, stopped;
    unsigned short sampleInterval;
    int i, status, count=0;
    unsigned long update, points;
    short* ai_buffer;
    short output_ch_vector[16];
    int local_ITERATIONS = 2;
    SAFEARRAYBOUND bound[1];
    double dataItem = 9.9;
    long j;
    long k;
    double* pTheValues;
    LPTSTR lpsz_ErrMsg;
    // Initialise device
    status = Init_DA_Brds (deviceNumber, deviceNumberCode)
    Initializes the hardware and software states of a National Instruments
    DAQ device to its default state and returns a numeric device code that
    corresponds to the type of device initialized
    Init_DA_Brds(DEVICE, &code);
    // Check return code from Init_DA_Brds
    Code return should be 204: PCI-MIO-16XE-10.
    if (code < 0)
    CString sError;
    sError.Format("Code error: %d", code);
    if (code == -1)
    sError = sError + ": No device found";
    LPTSTR lpsz = new TCHAR[sError.GetLength()+1];
    _tcscpy(lpsz, sError);
    AfxMessageBox(lpsz);
    delete lpsz;
    return S_FALSE;
    // Allocate memory for analog output and input arrays
    //ao_buffer = new short[OUTPUT_POINTS*2];
    ai_buffer = new short[OUTPUT_POINTS];
    // Set double-buffering
    status = DAQ_DB_Config (deviceNumber, DBmode)
    Enables or disables double-buffered DAQ operations.
    status = DAQ_DB_Config(DEVICE, 1);
    if (status < 0 )
    sFunctionName = "DAQ_DB_Config";
    goto TidyUp;
    // Get the rate parameters
    status = DAQ_Rate (rate, units, timebase, sampleInterval)
    Converts a DAQ rate into the timebase and sample-interval
    values needed to produce the rate you want.
    status = DAQ_Rate(RATE, 0, &timebase, &sampleInterval);
    if (status < 0 )
    sFunctionName = "DAQ_Rate";
    goto TidyUp;
    // Setup scan
    status = SCAN_Setup (deviceNumber, numChans, chanVector, gainVector)
    Initializes circuitry for a scanned data acquisition operation.
    Initialization includes storing a table of the channel sequence
    and gain setting for each channel to be digitized
    status = SCAN_Setup(DEVICE, 1, ai_channels, gain);
    if (status < 0 )
    sFunctionName = "SCAN_Setup";
    goto TidyUp;
    status = SCAN_Start (deviceNumber, buffer, count, sampTimebase,
    sampInterval, scanTimebase, scanInterval)
    Initiates a multiple-channel scanned data acquisition operation,
    with or without interval scanning, and stores its input in an array
    status = SCAN_Start(DEVICE, ai_buffer, OUTPUT_POINTS, timebase, sampleInterval, timebase, 1000);
    if (status < 0 )
    sFunctionName = "SCAN_Start";
    goto TidyUp;
    while(count < local_ITERATIONS)
    // Check whether we are ready to input another half-buffer
    status = DAQ_DB_HalfReady(DEVICE, &ready, &stopped);
    if (status < 0 )
    sFunctionName = "DAQ_DB_HalfReady";
    goto TidyUp;
    if (ready == 1)
    status = DAQ_DB_Transfer(DEVICE, ai_buffer, &points, &stopped);
    if (status < 0 )
    sFunctionName = "DAQ_DB_Transfer";
    goto TidyUp;
    count++;
    // Clear the analog input
    status = DAQ_Clear (deviceNumber)
    Cancels the current DAQ operation
    (both single-channel and multiple-channel scanned) and reinitializes the DAQ circuitry.
    status = DAQ_Clear(DEVICE);
    if (status < 0 )
    sFunctionName = "DAQ_Clear";
    goto TidyUp;
    status = SCAN_Demux (buffer, count, numChans, numMuxBrds)
    Rearranges, or demultiplexes, data acquired by a SCAN operation
    into row-major order, that is, each row of the array holding the
    data corresponds to a scanned channel
    status = SCAN_Demux(ai_buffer, OUTPUT_POINTS * 2, 2, 0);
    if (status < 0 )
    sFunctionName = "SCAN_Demux";
    goto TidyUp;
    //Convert binary values to voltages (Doesn't actually take a reading from board)
    status = DAQ_VScale (deviceNumber, chan, gain, gainAdjust, offset, count, binArray, voltArray)
    Converts the values of an array of acquired binary data and the gain setting for that data
    to actual input voltages measured.
    status = DAQ_VScale (1, 0, 1, 1.0, 0.0, OUTPUT_POINTS , ai_buffer, volt);
    if (status < 0 )
    sFunctionName = "DAQ_VScale";
    goto TidyUp;

    Hello,
    Please take a look at lots of examples available at :
    1. www.ni.com >> NI Developer Zone >> Development Library >> Measurement Hardware
    2. C:\program files\national instruments\ni-daq\examples\visualc
    Sincerely,
    Sastry V.
    Applications Engineer
    National Instruments

  • Pulse Train Generation using PCI-MIO-16E-4

    I need to generate pulse trains of changing pulse widths using PCI-MIO-16E-4 daq card using Igor Pro.
    I have tried to use the CTR functions (but always keep getting errors and it doesn't work). I also used the general purpose counters (GPCTR functions) but cannot visualise them on a CRO. If someone can help in regards to the programming aspect, it will be greatly appreciated.
    Thanks
    Vakul

    Hi Vakul,
    Some questions that might help me to get you a solution.
    Are you using Traditional DAQ, or DAQmx and which versions are you using?
    What operating system are you running?
    When you say you can't visualize them on CRO, I assume that you are hooking the counter out to a cathode ray oscilloscope and can't see the pulse train?
    Are you going to need more than two different pulse widths for your pulse train?
    There are several online knowledge bases describing how to change the frequency of a pulse train on the fly.
    This link explains how to use software to create a new pulse width.
    http://digital.ni.com/public.nsf/websearch/7B1B0427C39FE33086256CEE00752133?OpenDocument
    This link discusses using frequency shift keying, which will only allow you to have 2 different pulse widths.
    http://digital.ni.com/public.nsf/websearch/EC1F089252F33B248625696E006FB6FC?OpenDocument
    I assume that you are writing this program to compile in Igor Pro using C. I can help you with the C code development, but don't know anything about the Igor Pro API.
    Please get back to me about those questions and let me know if you need further help.
    Michael Denton

  • Buffer of PCI-MIO-16E-1 acquisition card

    I am using a PCI-MIO-16E-1 acquisition card, and in the manual it says that it has a FIFO buffer of 512 samples. Is this the total buffer of my card? (I guess it should be larger). If I take more samples than can fit in the buffer in a single acquisition, what happens to the extra samples acquired? Are they stored in the computer memory?
    Thank you

    The PCI-MIO-16E-1 actually has a FIFO buffer size of 2048 samples. The hardware buffer size is not a limitation of how many samples you can read at a time. FIFOs are often used on DAQ devices to temporarily store incoming or outgoing data until that data can be read or written. For example, an analog input FIFO stores the results of A/D conversions until the data can be read into system memory.
    So, the FIFO on the device will just hold the data temporarily until the computer can transfer the data to computer memory. FYI: When you programmatically set the buffer size in your application, you are setting the software buffer size in computer memory and that has nothing to do with the FIFO size. You don't have to worry about the FIFO within your program. I hope th
    is helps.
    Regards,
    Todd D.
    Applications Engineer
    National Instruments

  • Inputing TTL pulses to NI-PCI-MIO​-16E-1 via BNC-2110

    I need to count TTL pulses coming from photomultiplying tube (PMT) module. Can someone tell me, please, how do I connect BNC cable from PMT module to NI PCI-MIO 16E-1 DAQ board via BNC-2110 adapter?
    thanks a lot in advance

    Hello Photon Guy,
    Thank you for contacting National Instruments.
    I have attached an image which shows how to connect the USER 1 BNC and USER 2 BNC connectors to the proper PFI pins which serve as the source of counter 0 and counter 1. You should only need to use one counter to count edges.
    Regards,
    Bill B
    Applications Engineer
    National Instruments
    Attachments:
    BNC-2110.JPG ‏105 KB

  • Data acquisition and generation with PCI-MIO-16E-4 card help!!!!

    Hello,
    I'm using a PCI-MIO-16E-4 card with labview7 (in using DAQmx)and I
    would like to draw a frequency response.
    My problem is: my program can run correctly in low frequency but, it
    can't work correctly in high frequency (after 2KHz the signal is
    false).
    For verifying my program: I only try to generate and acquire a sweep
    sine. I constate after 2KHz the sine I read dosn't resemble to a sine
    I wrote.
    Can you say me where is the problem?
    Thank you.
    Le Trong Thao.

    "Dr. Imad" wrote in message news:<[email protected]>...
    > my understanding is that you are generating a sine wave (on one of the
    > anlogoutput channels) and you are trying to read the signal.
    > Since you can verify the signal at low frequency, but not at high
    > frequency, it looks like you should increase the scan rate of the data
    > acquistion (if you can, set it to 10 times the signal frequency)
    > You can also use an oscilloscope to verify the signal is what you
    > really generated.
    Thank you for your response.
    I've tried to do it, and I've tried several other possibilities but it
    doesn't work correctly.
    In fact, I think the problem is in my program. Do you have a program
    that works correctly? I f
    ound examples in the help but they don't run
    correctly.
    Le Trong Thao.

  • Question about setup_MITE in the PCI-MIO-16E-1

    I have a quick question about setup_MITE in the PCI-MIO-16E-1. In one of the manuals, it states that if you're using Dell Optiplex GX series for our hardware configuration, is it true we need to re-write the MITE functions to correlate with the hardware? Please if you can clarify what this means, I would really appreciate it. Thank you in advance.

    National Instruments is starting a new newsgroup to provide a forum for customers to discuss register level programming issues and ask questions. This newsgroup is not a direct support channel for register level programming, but may be monitored by National Instruments engineers. Please post you question with additional detail in:
    natinst.public.daq.driver-development.general
    Christian
    Christian Loew, CLA
    Principal Systems Engineer, National Instruments
    Please tip your answer providers with kudos.
    Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system,
    or for use in hazardous environments. You assume all risks for use of the Code and use of the Code is subject
    to the Sample Code License Terms which can be found at: http://ni.com/samplecodelicense

Maybe you are looking for

  • IPod shuffle 4th generation will not connect to iTunes.

    iPod shuffle 4th generation will not connect to iTunes.  Windows Vista and iTunes, all updates current.  Cables secure & connected.  Device driver will not load.  iPad will connect when tried with several other computers.  When I try to connect it wi

  • What type of hard disk should i use

    I have a  imac 27 inch late 2013 , 3,5mhz  Intel i7. I want to get a hard disk to store photos and others. what do you suggest. Thanks

  • How do I get bonjour to work to allow discovery of printers from print server

    Specs: print server is windows 7 windows users are able to access the the list of printers via \\s-printer-01\ mac clients are using 10.8.3 we have been adding printers manually through ip and using generic post script drivers thus far. so far so goo

  • Urgent: not all variable bounds in forms 6i

    hi all I am using forms 6i I am having problem in this cursor query SELECT distinct main_item, des_l FROM table(TECH_BOM_TOT_SRNO(:model0,'X','X','X','X','X')) a,item_master b where a.main_item = b.ITEM_CODE and LOCATION_cD = :line0; it does not fetc

  • Nokia Lumia 720 screen hooked

    What can I do. I have been having difficulty calling with my Lumia 720. The screen will just be stuck. I could neither scroll up or down, until I remove the battery and start all over again. This is getting embarrassing for me. I need an urgent respo