При запуске выдает результат 1.63...--1.73...В
Листинг Кто поможет, могу выдать функцию обмена и обработки результатов (с учетом перегрузов каналов) STM32 с АЦП AD7738ARZ
- Вложения
-
- 1.PNG
- (86.71 КБ) 259 скачиваний
Код: Выделить всё
//Настройка АЦП2 на 4 инжектированых канала 0,3,5,15
ADC2->CR1 = 0;
ADC2->CR2 = ADC_CR2_ADON | ADC_CR2_CAL;
while(ADC2->CR2 & ADC_CR2_CAL);
ADC2->CR2 = ADC_CR2_ADON | ADC_CR2_JEXTSEL | ADC_CR2_JEXTTRIG | ADC_CR2_CONT;
ADC2->CR1 = ADC_CR1_SCAN | ADC_CR1_JAUTO;
ADC2->JSQR = _VAL2FLD(ADC_JSQR_JL,3)
| _VAL2FLD(ADC_JSQR_JSQ1,0)
| _VAL2FLD(ADC_JSQR_JSQ2,3)
| _VAL2FLD(ADC_JSQR_JSQ3,5)
| _VAL2FLD(ADC_JSQR_JSQ4,15);
ADC2->SMPR2 = _VAL2FLD(ADC_SMPR2_SMP1,ADC_SMPT_239d5)
| _VAL2FLD(ADC_SMPR2_SMP2,ADC_SMPT_239d5)
| _VAL2FLD(ADC_SMPR2_SMP4,ADC_SMPT_239d5)
| _VAL2FLD(ADC_SMPR2_SMP6,ADC_SMPT_239d5);
ADC2->CR2 |= ADC_CR2_JSWSTART;
Код: Выделить всё
//Настройка АЦП2 на 4 инжектированых канала 0,3,5,15
ADC2->CR1 = 0;
ADC2->CR2 = ADC_CR2_ADON | ADC_CR2_CAL;
while(ADC2->CR2 & ADC_CR2_CAL);
ADC2->CR2 = ADC_CR2_ADON | ADC_CR2_JEXTSEL | ADC_CR2_JEXTTRIG | ADC_CR2_CONT;
ADC2->CR1 = ADC_CR1_SCAN | ADC_CR1_JAUTO;
ADC2->JSQR = _VAL2FLD(ADC_JSQR_JL,3)
| _VAL2FLD(ADC_JSQR_JSQ1,0)
| _VAL2FLD(ADC_JSQR_JSQ2,3)
| _VAL2FLD(ADC_JSQR_JSQ3,5)
| _VAL2FLD(ADC_JSQR_JSQ4,15);
ADC2->SMPR2 = _VAL2FLD(ADC_SMPR2_SMP1,ADC_SMPT_239d5)
| _VAL2FLD(ADC_SMPR2_SMP2,ADC_SMPT_239d5)
| _VAL2FLD(ADC_SMPR2_SMP4,ADC_SMPT_239d5)
| _VAL2FLD(ADC_SMPR2_SMP6,ADC_SMPT_239d5);
ADC2->CR2 |= ADC_CR2_JSWSTART;
А порты настроенные как вход аналоговый ?Вопрос решен, мертв АЦП STM