Quantcast
Channel: Counter/Timer topics
Viewing all articles
Browse latest Browse all 1271

How does CI Freq work?

$
0
0

I'm trying to get down to the details of what happens when you run CI Freq -> Implicit -> Counter 1D DBL NSamp. I've looked through the forums and the NI white paper on frequency measurements, but some things are missing. I understand the general process, but I'd like to better understand the exact steps, especially when including arm start triggers.

 

This is related to my post here http://208.74.204.114/t5/Digital-I-O/Measuring-frequency-of-an-I2C-clock/td-p/2289810

 

Also, what is considered "Low Frequency", "High Frequency", and "Large Range". Would 100kHz be low? High? Would a 50kHz spread be considered large range?

 

Specifically:

 

1) I believe I understand continuous mode. The samples per channel is a buffer size. When you call the read vi, it grabs a portion of that buffer (the beginning? end? randomly?) and gives you that value. Is the buffer FIFO? Does it get replaced one at a time whenever a new edge comes through?

 

When in finite samples mode, what does changing the samples per channel do? The help file says "specifies the number of samples to acquire or generate for each channel in the task". In a frequency measurement, does that mean for example, 100 frequency measurements are made for 100 digital edges of PFI1 (for counter 0), or 100 edges are used to calculate one frequency? How does this number differ from the "number of samples per channel" on the Read vi?

 

2) Arm start trigger arms the counter circuit, but doesn't start counting until a trigger comes through on the specified line. Does it restart counting every time a trigger comes through on the line. or does this condition only apply once?

 

3) Why can't I use the pause trigger with CI Freq? If I try it says this property doesn't apply. My hardware supports it.

 

More clarification on what I want to do:

 

I want to measure frequencies on an I2C clock. There are two distinct frequencies, 50kHz and 100kHz, and I'm histogramming the frequency that these frequencies occur (bleh!). Sometimes the I2C clock is held high, and I don't want these to factor into my measurements. I have two triggers where I want to start measuring, and where I want to stop.

 

In my mind, I want to arm the counter when the start trigger comes in. Shortly after the clock will start moving, and LabVIEW should measure frequencies until the stop trigger comes. So far arming doesn't seem to make a difference in my data, and LabVIEW wont let me use the pause trigger property.

 


Viewing all articles
Browse latest Browse all 1271

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>