09-09-2012 01:41 PM
hi everybody,
my question is simple i,e I want to generate a word pattern of 101000110101001 and the output frequency of this word has peculiar shape i.e 0.5 miro second pulses with a period of 512 micro second (1.953 k hz) . I am using NI PCI- 6229...
09-09-2012 02:39 PM - edited 09-09-2012 02:39 PM
The maximum clock rate on Digital Outputs for the PCI-6229 is 1 MHz. You cannot create a 0.5 us pulse with that device through the digital ports.
You might be able to output a pattern on a digital line with a 512 us period and use that to trigger a 0.5 us pulse with one of the counters. Since 1s can repeat in your data word, you would need to convert the data word to a RZ (Return to Zero) format to assure that pulses occur for each 1. Thus your pattern 101000110101001 would become 1o0o1o0o0o0o1o1o0o1o0o1o0o01o with a 256 us period. Both "o" and "0" represent a logical zero. I just used the "o" to emphasize the added data.
Lynn
09-09-2012 03:30 PM
thanks John for a prompt reply , I have been trying via digital port to generate the pattern but without any success.... although i have been able to generate 0.5 micro sec pulses from the counter and internally used as a clock for the digital port.
I will try your proposed solution and let you know... the solution means a lot to me ..
regards
09-09-2012 11:59 PM
Dear John,
I have been able to generate a word pattern of period 512 micro sec and output to DIO port 0 , however I have not been able to figure out as how to implement RZ functionality on that ,, I will be using that output as a Trigger to Counter0 on my board and controlling the pulsewidth as 0.5 micro sec and pulse duration 512 micr0 sec.
Could u please help me implementation RZ functionality... please
regards
09-10-2012 01:41 PM
Suppose you have a pattern 1011100 that you want to convert to your pulse protocol.
time pattern RZ modified pattern
0 1 1
256 1 0
-----------------------------------
512 0 0
3*256 0 0
-----------------------------------
4*256 1 1
5*256 1 0
-----------------------------------
6*256 1 1
7*256 1 0
-----------------------------------
8*256 1 1
9*256 1 0
-----------------------------------
10*256 0 0
11*256 0 0
-----------------------------------
12*256 0 0
13*256 0 0
-----------------------------------
The column marked pattern has the pattern generated at 512 us. The column marked RZ modified pattern is generated at 256 us. Note that every time a 1 occurs in the original pattern a 1, 0 occurs in the RZ modified pattern. The 1, 0 combination allows triggering the 0.5 us pulses from the counter regardless of how may consecutive 1s occur in the original pattern. A 0 in the original pattern becomes 0, 0 in the RZ modified pattern and does not trigger the pulse.
Lynn
09-12-2012 08:59 AM
Dear Johnsold, thanks again . I have understood the concept of RZ now. In your above referrred RZ modified pattern, I foresee a problem , when repeated ones are replace by 10 patterns , the pulse width wont be increaed, rather it would be 0.5 us pulses only. for example
1011100 desired pulse pattern is 0.5us 0 1.5 us 0 0
s, o 0.5 us pulses have been triggered but my listener receiver waits for three consecutive 1's in the form of 1.5 us pulse as well
please help
regards
09-13-2012 12:54 PM
Is there a way you can change what your listener is expecting to reflect the new pattern?
09-13-2012 07:43 PM
OK.
"1011100 desired pulse pattern is 0.5us 0 1.5 us 0 0 "
This is not the way I interpretted your protocol. Your original image did not show any repeated 1s.
I doubt you can reset the counter in 512 us to change the pulse width.
The easiest solution would be to obtain a DAQ device with digital output timing of at least 2 MHz so that you can just feed the pattern to the device.
Lynn