Hi!I am trying to build a special motor control with an DSP56F801, currently
I am doing some tests with the DSP65F800 Demo-Board (witch has a 56801/60MHz installed).Using the onchip ADC I have encountered a high offset witch cutsevery voltage lower than 0.25V. In the documentation I have read, that voltages below only 25mV could be converted to 0.I am using the following data to initialize the ACD:static const adc_sState sadc0 = { /* AnalogChannel = */ ADC_CHANNEL_7, /* SampeMask = */ 0x01, /* OffsetRegister = */ 0, /* LowLimitRegister = */ 0, /* HighLimitRegister = */ 0, /* ZeroCrossing = */ ADC_ZC_DISABLE,};I have tested several channels, but I am getting on all the same result.Is there any possibility to eleminate this offset?greetingsMartin Hierholzer |
|
High ADC offset
Started by ●March 28, 2004
Reply by ●April 2, 20042004-04-02
Greetings.
I am working in an AC motor control with a DSP56F801DEMOBOARD, and I
sense 2 currents: Ia and Ib using ADC on chip.
Im use the next code to configure the ADC's channels.
static const adc_sState sadc0 = {
/* AnalogChannel = */
ADC_CHANNEL_0,
/* SampleMask = */ 0x01, /* OffsetRegister = */
FRAC16(0.43),
/* LowLimitRegister = */ 0, /* HighLimitRegister = */ 0, /* ZeroCrossing = */ 0, };
static const adc_sState sadc4 = {
/* AnalogChannel = */
ADC_CHANNEL_4,
/* SampleMask = */ 0x10, /* OffsetRegister = */
FRAC16(0.43),
/* LowLimitRegister = */ 0, /* HighLimitRegister = */ 0, /* ZeroCrossing = */ 0, };
The ADC work with voltages signal in the range 0 to 3.3V, the currents are
sinus form with Amplitude = 1.5V and a DC level 1.5V, the signal is in the
range of ADC channel. the value of configuration
/* OffsetRegister = */
FRAC16(0.43),
correct the offset, and the signal sensed is in range -1.5V to 1.5V in FRAC16 format. The argument to FRAC16 is calculated using:
Valueintofrac16 = DClevel/Vccforadc
for this case 0.43 = 1.5/3.3
mhier48 <m...@uni-muenster.de> wrote: Hi!I am trying to build a special motor control with an DSP56F801, currently I am doing some tests with the DSP65F800 Demo-Board (witch has a 56801/60MHz installed).Using the onchip ADC I have encountered a high offset witch cutsevery voltage lower than 0.25V. In the documentation I have read, that voltages below only 25mV could be converted to 0.I am using the following data to initialize the ACD:static const adc_sState sadc0 = { /* AnalogChannel = */ ADC_CHANNEL_7, /* SampeMask = */ 0x01, /* OffsetRegister = */ 0, /* LowLimitRegister = */ 0, /* HighLimitRegister = */ 0, /* ZeroCrossing = */ ADC_ZC_DISABLE,};I have tested several channels, but I am getting on all the same result.Is there any possibility to eleminate this offset?greetingsMartin Hierholzer Cordialmete, Oscar Javier Tadeo Jaramillo Galeano. Nit: 98665185-4 Telefono. 300-779-60-62 Busc un auto? Encontralo en Yahoo! Autos M de 4000 clasificados todos los ds! Usados - 0 km - Vendel tuyo |