www.mikrocontroller.net

Mikrocontroller.net Forum WinARM / Yagarto / ARM-GCC > a/d (differential) converter question

Posted by Kai Skolik (kskolik)
on 29.05.2008 16:51
Hi,

I'm new to ARM processors. And well, I found out that there's not that
much information around as it is for AVRs. :-(

Anyway, I need to do some voltage measurements using my NXP LPC2294.
I want to measure the voltage between to motor phases (acutally 2 times
between 3 phases, Vab and Vbc, if the phases are named a, b and c).

The thing is, the A/D conversion needs to be a differential one. Some
AVRs do have the capability of using two A/D channels to do a
differential conversion.

How can I do that with the ARM7 processor? Is there a way to do it?

I hope it's the correct forum.


Cheers,
Kai
Posted by Martin Thomas (mthomas)
on 29.05.2008 19:00
Kai Skolik wrote:

> The thing is, the A/D conversion needs to be a differential one. Some
> AVRs do have the capability of using two A/D channels to do a
> differential conversion.

So how would you solve this if you had just an AVR that does not offer 
differential conversion?

Suggestions:
(1) calculate the differential result from the conversion software 
(check if this is accurate enough for you since the conversions are not 
done at the same time).
(2) use external OP-AMPs and connect the outputs to the ARM-ADC-INputs 
http://en.wikipedia.org/wiki/Operational_amplifier_applications#Differential_amplifier
(3) use an external AD-converter which offers the needed feature

Personally I would choose a setup with external OP-AMPs. Should be a 
rather cheap and easy solution. Maybe you need some external 
signal-conditioning anyway.
Posted by Kai Skolik (kskolik)
on 30.05.2008 08:46
Martin Thomas wrote:
> Kai Skolik wrote:
> 
>> The thing is, the A/D conversion needs to be a differential one. Some
>> AVRs do have the capability of using two A/D channels to do a
>> differential conversion.
> 
> So how would you solve this if you had just an AVR that does not offer 
> differential conversion?

I didn't do that personally. I guess the AVR do measure the voltage 
between two a/d converter channels. So, of course, two pins are needed.

> 
> Suggestions:
> (1) calculate the differential result from the conversion software 
> (check if this is accurate enough for you since the conversions are not 
> done at the same time). 

That's what I was thinking of as "plan B". Simply do two (in total four) 
conversions between each channel and Aref (if it's called Aref).

> (2) use external OP-AMPs and connect the outputs to the ARM-ADC-INputs 
> http://en.wikipedia.org/wiki/Operational_amplifier_applications#Differential_amplifier

In that case, the amplifier has to be connected to the same GND as the 
ARM (or at least to the reference voltage of the a/d converter). Right?

> (3) use an external AD-converter which offers the needed feature
> 
> Personally I would choose a setup with external OP-AMPs. Should be a 
> rather cheap and easy solution. Maybe you need some external 
> signal-conditioning anyway.

Thanks a lot for your reply!

-Kai
Posted by Kai Skolik (kskolik)
on 02.06.2008 10:07
Ok, good morning!

I have two external voltage measurement devices. they do have a 
differential, isolation amplifier. The output is a single pin. And the 
output signal is one voltage against GND. And GND on the output side is 
"floating". That means, it can be connected to (any) potential and the 
output signal is the voltage against that potential.

That means: I do not need to do any differential a/d-conversions. The 
only thing that needs to be done is to connect the GND pin of the 
measurement boards to the reference-Pin of the A/D-converter.

But thanks a lot for your help! :-)

-Kai