LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

GENERATE A BINARY WORD PATTERN WITH SPECIFIC DUTY CYCLE

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...

1

0 Kudos
Message 1 of 8
(3,072 Views)

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

0 Kudos
Message 2 of 8
(3,066 Views)

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

0 Kudos
Message 3 of 8
(3,061 Views)

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

0 Kudos
Message 4 of 8
(3,049 Views)

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

0 Kudos
Message 5 of 8
(3,031 Views)

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

0 Kudos
Message 6 of 8
(3,009 Views)

Is there a way you can change what your listener is expecting to reflect the new pattern?

Cameron T
Applications Engineer
National Instruments
0 Kudos
Message 7 of 8
(2,994 Views)

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

0 Kudos
Message 8 of 8
(2,986 Views)