Цитата(Navovvol @ Dec 26 2011, 07:23)

ревизия H
просто от этого калибровочного значения ни тепло ни холодно, точнее АЦП не стал. подаю на вход четкий ноль - АЦП показывает от -1 до 1 (т.е. от 0xFF до 0x01) (знаковый, ИОН внутр 1В) и никакой разницы, что с калибровочным значение, что без него.
Мой пример:
CODE
ADC_CalibrationValues_Load(&ADCA);
ADC_CalibrationValues_Load(&ADCB);
ADC_ConvMode_and_Resolution_Config(&ADCA, ADC_ConvMode_Unsigned, ADC_RESOLUTION_12BIT_gc);
ADC_ConvMode_and_Resolution_Config(&ADCB, ADC_ConvMode_Unsigned, ADC_RESOLUTION_12BIT_gc);
ADC_Prescaler_Config(&ADCA, ADC_PRESCALER_DIV128_gc);
ADC_Prescaler_Config(&ADCB, ADC_PRESCALER_DIV128_gc);
ADC_Reference_Config(&ADCA, ADC_REFSEL_VCC_gc);
ADC_Reference_Config(&ADCB, ADC_REFSEL_VCC_gc);
ADC_Enable(&ADCA);
ADC_Enable(&ADCB);
ADC_Wait_32MHz(&ADCA);
ADC_Wait_32MHz(&ADCB);
ADC_Ch_InputMode_and_Gain_Config(&ADCA.CH0, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
ADC_Ch_InputMode_and_Gain_Config(&ADCA.CH1, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
ADC_Ch_InputMode_and_Gain_Config(&ADCA.CH2, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
ADC_Ch_InputMode_and_Gain_Config(&ADCA.CH3, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
// adcB
ADC_Ch_InputMode_and_Gain_Config(&ADCB.CH0, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
ADC_Ch_InputMode_and_Gain_Config(&ADCB.CH1, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
ADC_Ch_InputMode_and_Gain_Config(&ADCB.CH2, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
ADC_Ch_InputMode_and_Gain_Config(&ADCB.CH3, ADC_CH_INPUTMODE_SINGLEENDED_gc, ADC_CH_GAIN_1X_gc);
/// пауза
unsigned short adc_result;
unsigned short adc[4];
for (i=0; i<4; i++) {
adc[i]=adc_ch_ptr->RES;
}
Плохо если Atmel в ревизии H АЦП ещё не доделал...
А какая xmeg-а, A/D/B?
Сообщение отредактировал IgorKossak - Dec 26 2011, 17:52
Причина редактирования: [codebox]