Перейти к содержанию
    

Feeddy

Новичок
  • Постов

    1
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. AT90PWM3B - проблема с AMP1, AMP0

    имеется следующая проблема с AT90PWM3B: не удается включить встроенные диф. усилители AMP1 и AMP0, точнее результаты АЦП не меняются в зависимости от того включен усилитель или нет и от изменения коэффициента усиления данного усилителя ( проверялось на нескольких чипах) использовался IAR 5.30, и отладчик JTAGICE mkII #define Enable_amp1() (AMP1CSR |= (1<<AMP1EN)) #define Disable_amp1_input_shunt() (AMP1CSR &= ~(1<<AMP1IS)) #define Set_amp1_gain20() (AMP1CSR |= (1<<AMP1G1), AMP1CSR &= ~(1<<AMP1G0) ) #define Amp1_internal_clock() (AMP1CSR &= ~( (1<<AMP1TS1) | (1<<AMP1TS0) ) ) #define I_FL1 9 // PС5 : AMP1+ PIN22, (AMP1- PIN21 -> GND) #define Get_i_FL1() (U8) (get_adc_result(I_FL1)) #define Start_conv() (ADCSRA |= (1<<ADSC) ) #define Start_conv_channel(channel) (Select_adc_channel(channel), Start_conv() ) #define Wait_end_of_conversion() while (ADCSRA & (1<<ADSC)) #define Adc_get_8_bits_result() ((U8)(ADCH)) #define Clear_adc_mux() (ADMUX &= ~((1<<MUX3)|(1<<MUX2)|(1<<MUX1)|(1<<MUX0)) ) #define Select_adc_channel(channel) (Clear_adc_mux(), ADMUX |= (channel) ) //включение аналоговых входов DIDR0 = 0x4C; DIDR1 = 0X1F; // инициализация AMP1 Enable_amp1(); Disable_amp1_input_shunt(); Set_amp1_gain20(); Amp1_internal_clock(); // получение данных от АЦП (8бит) U8 get_adc_result(U8 channel){ Start_conv_channel(channel); Wait_end_of_conversion(); return (Adc_get_8_bits_result()); } // измерение тока с использованием дифф. усилителя - 9 канал АЦП g_i_FL = Get_i_1(); судя по состоянию регистров ADMUX,ADCSRA, ADCSRB, AMP1CSR все должно быть в порядке , тем не менее усилитель не работает, то есть данные в регистре ADC ничем не отличаются от режима работы без усилителя, сам АЦП при этом работает нормально и данные вполне достоверны для неусиленного сигнала. то ли где то ошибка в коде, конфигурации контроллера, то ли причина в самом чипе, то ли что-то не понял :07: Если кто-то имел дело с PWM3b- прошу откликнуться
×
×
  • Создать...