VDAC output speed problem

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

Hello,

   

I am using  CY8C5868AXI-LP035. According to the data sheet the output from VDAC is 1 Mega samples per second. but when I run the test code ( attached with this post) it doesn't gives an alternating output and sticks to one value. 

   

Kindly let me know what is the problem.

   

Regards,

0 Likes
1 Solution
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

ammarshamim,

   

(i). check scope probe, it is likely the probe capacitance which delays the risetime, use another probe or make your own using 1.5' long RG174 coax cable. (ii). check if any capacitors are attached to output pin, change pin number to test this. (iii). insert a buffer OPAMP component directly between VDAC and the output pin. (iv). test VDAC in 0-1.2V mode (it has faster response).

   

And remove unnecessaly code from main.c (it is all done automatically in VDAC component API):

   

//void VDAC8_1_SetValue(uint8 value);

   

//void VDAC8_1_Start(void);

View solution in original post

0 Likes
14 Replies
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

Realistically, VDAC producing true output at low frequencies only (<20kHz). It noticeably deviates from digital input at ~100kHz (>10%) and starts showing digital feed-thru (changing bit #3 is the worse). It is getting worse if buffer amplifier is attached. At higher frequencies (>100kHz) it is usable to some degree for generating sine wave if amplitude sag is not a concern. IDAC performs slightly better (using external resistor), but adding buffer amplifier kills that extra performance.

0 Likes
HeLi_263931
Level 8
Level 8
100 solutions authored 50 solutions authored 25 solutions authored

Which board are you using? On which pin do you check the output, and which voltage do you get (should be 1.6V).

   

I saw that you did set the VDAC to slow mode, so you won't get maximum speed.

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

@Odissey: Thank you for the clarification. I did tested your claim. Since my values are varying between 0-3 volts (I'm using USB power cable) if I add a delay of 50ms between those two instructions only then it shows me a full deviation at the output between 0-3 volts. I tried with 5ms delay and it gave me a variation between 1.8-2.2 volts. So it is not even 20 hertz that can show a full deviation at the output. I have attached the pictures as well. Kindly let me know what I need to do to get to 20khz.

   

@ Hli : I'm using CY8CKIT-050_PSoC 5LP DVK Kit. I'm checking the at P0[2]. It is not about the pin when I add a delay between two instructions it does shows me varying output.  I have checked with Slow and Fast Speed and there wasn't any significant difference as well. The problem is that it takes some time to change its state.

0 Likes
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

ammarshamim,

   

(i). check scope probe, it is likely the probe capacitance which delays the risetime, use another probe or make your own using 1.5' long RG174 coax cable. (ii). check if any capacitors are attached to output pin, change pin number to test this. (iii). insert a buffer OPAMP component directly between VDAC and the output pin. (iv). test VDAC in 0-1.2V mode (it has faster response).

   

And remove unnecessaly code from main.c (it is all done automatically in VDAC component API):

   

//void VDAC8_1_SetValue(uint8 value);

   

//void VDAC8_1_Start(void);

0 Likes
Anonymous
Not applicable

Thanks Odissey.

   

I tried with the GPIO pins and it did came upto 20khz.

0 Likes
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted
        You welcome. DAC gave me hard time also.   
0 Likes
Anonymous
Not applicable

@ Odissey. 

   

I was testing Delta sigma ADC for its speed. Similar to VDAC I'm getting quite a low value. Does it also supports low frequencies only. Please let me know about the maximum input frequency that I can use.

   

Thanks 

0 Likes
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

ammarshamim,

   

The DelSigADC at 16 bit has about 10kHz sampling rate. I had no issues with it so far. It the component's settings dialog max sampling rate is displayed, corresponding to the bit depth you select. Check the incoming signal with the scope.

0 Likes
Anonymous
Not applicable

But the datasheet say that it has a sampling frequency of 192 kHz. Why there is a difference between the data sheet values and the actual values?

0 Likes
Anonymous
Not applicable

Hi Ho,

   

it seems you jumped a line there.
As per Datasheet the DS-ADC can do 48k SPS at 16 bit. 

   

All the Best
Frank

0 Likes
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

to clarify: PSoC5LP DelSigADC max sample rate at (@16bit resolution, +/-0.515V input)

   

1. single sample - 10000

   

2. multisample - 10810

   

3. continuous - 43750

   

4. mitisample (turbo) - 10035

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

Hello,

   

Related with VDAC, the issue and work around is given below:

   

VDAC has two ranges, 0-1.020v and 0-4.080v. The conversion speed of the VDAC will be 1MSPS when VDAC range is 0-1.020v. When peak to peak voltage range is 0-4.080v, the conversion speed is 250kSPS. The conversion speed depend on the load capacitance of GPIO and load resistor of VDAC. To achieve the high speed, it is necessary to have less routing resistance and routing capacitance. If the routing resistance and routing capacitance are more and involved, the speed will be further reduced.

   

To achieve the maximum speed, the VDAC need to be set it into the 'High Speed' mode. 

   

The issue in the attached project(in first post), the routing resistance and routing capacitance are more. To avoid this, please choose the dedicated pins such as P0[6], P0[7], P3[0] and P3[1]. If one of these pins are chosen as VDAC output, the routing path between VDAC and GPIO will be shorter and resistance and capacitance will be lesser to add. I selected P3[0] instead of P0[2] in the project, and I can achieve 210KHz in the project. I added 1us delay between high and low. I attached the project and waveform here. Please refer the project. 

   

So to achieve the highest frequency, please choose the speed of VDAC as 'High speed' and use the dedicated pins for VDAC output. 

   

Thanks,

   

Ramesh B

0 Likes
Anonymous
Not applicable

Hello Ahmad,

   

Can you please attach the project where you are facing issue with Delta Sigma ADC?

   

Thanks

   

Ramesh B

0 Likes
Anonymous
Not applicable

I have attached the files in MY cases

0 Likes