Reply by Oscar Jaramillo 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

_____________________________________
Note: If you do a simple "reply" with your email client, only the author of this message will receive your answer.  You need to do a "reply all" if you want your answer to be distributed to the entire group.

_____________________________________
About this discussion group:

To Join:  m...@yahoogroups.com

To Post:  m...@yahoogroups.com

To Leave: m...@yahoogroups.com

Archives: http://www.yahoogroups.com/group/motoroladsp

More Groups: http://www.dsprelated.com/groups.php3


Cordialmete,

Oscar Javier Tadeo Jaramillo Galeano.
Nit: 98665185-4

Telefono. 300-779-60-62



car.gif Busc un auto?
Encontralo en Yahoo! Autos
M de 4000 clasificados todos los ds!
Usados - 0 km - Vendel tuyo

Reply by mhier48 March 28, 20042004-03-28
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