- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear community,
I have been working with ADC D-S of psoc5lp with no success to amplify 2 diferential signals with 5mVpp as maximum. I have read different documents and I'm very confused about this.
In page 9 of reference document of ADC Delta-Sigma 3.30 the range with Input ± Vref with Vref=1.024V should be: -1.024±1.024= 0V to 2.048. Why in example of CE95271 with the same condition Vref=1.024 on negative pin of ADC, in page 2 says that if positive enter of ADC is 0 the converted value is -1.024 or if is 1.024 the value is 0; so the range doesn't go from 0V to 2.048 as page 9 of ADC Delta-Sigma 3.30 established? then the range to work can support until 2.048 V as a valid value to work???? 2.048 -> 1.024V? Or can I even enter 3V signal with no problem at all? with VDD=5V?
This is very confused, please any help you can provide me will be very appreciated, thanks in advance.
Solved! Go to Solution.
- Labels:
-
PSoC 5 Architecture
-
PSoC 5LP
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It is better to touch once than see 100 times)))
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Omar
The range can go upto 2.048( 2.044,Vdac max 1.020+1.024). Currently Vdac voltage is 1V. So the maximum value will be 2.024V. The description does not specify about that range. But it is a usable range. Input voltage range is 0-2.024V.
Best Regards,
VSRS
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Vsrs,
With these conditions, ADC with VREF=1.024 and ADC- input=1.024 ADC SIGMA-DELTA will work like this:
With 0 at ADC+ conversion will be signed to -0.1024V
with 1.024 at ADC+ conversion will be signed to 0
And here is the confusion: if I enter at ADC+ = 2.048V , Can I expect signed result of +1.024V????? or is this out of range???
What happen if I enter 4V at ADC+ input? ADC conversion value will goes to hexadecimal value of 8000 with 16 bits of resolution?
Please help me I'm very confused. Thanks in advance.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Again Vsrs,
So with differential mode and Vref=1.024V but with ADC- input in 0 the range will be 0±1.024 so-----> -1.024 to 1.024 then:
with ADC+ input in 0 result conversion will be 0?
with ADC+ input in 1.024 result conversion will be 1.024?
Then how to get -.1024 value conversion???? what condition produce this? a negative value????
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Many thanks for your response, your schematic was very illustrative.
But what happen if Vref=1.024V with ADC- input in 0 the range will be 0±1.024 so-----> -1.024 to 1.024 then:
with ADC+ input in 0 result conversion will be 0?
with ADC+ input in 1.024 result conversion will be 1.024?
Then how to get -.1024 value conversion???? what condition produce this? a negative value????
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Evgeniy, consider this question solved.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hey Evgeniy,
sorry my stupid question, but what is the "RunMean" component in your schematic.
Is this a filter or funktion?
can you PLEASE make a short explaination for me as super noob here...
thanks Harry
greetings from Vienna
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
this Simple moving average.
double click on the component: set Range_of_Filter
Range_of_Filter -determines the buffer size as a power of 2 (n = 2^Range_of_Filter)
function:
int32 RunMean_Get(int32 Sampl,int32 SIGNAL_SLOPE);
Sampl - new data
SIGNAL_SLOPE - filter re-initialization threshold ( SIGNAL_SLOPE==0 - forced reinitialization )
p.s. I am pleased to remember Vienna - a very beautiful city.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
thanks Evgeniy,
I ´m a little bit overcharged .... , but I will go through....
I meant, how you create the component "RunMean", with what kind of component or so...if I want to do so like you?
thanks Harry
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
omg...
heavy duty