Мерил напряжения на ножках, оно находиться в пределах соотносимого напряжения (внутренние 2,56В) В VMLAB всё работает корректно. В чём может заключаться этот баг? Быть может дух АЦП покину грешное тело контроллера ? предпосылки к этому вероятны
 )
)|  | roboforum.ruТехнический форум по робототехнике. |  | 
 )
)KiCom писал(а):Какое напряжение на вход АЦП подаешь?

-= Александр =- писал(а):Какое устанавливаешь ADMUX для каждого из каналов и к чему припаяны AVCC и AREF? Какая на них обвязка?
// запускаем последовательность  так
      ADCdone=0;
         i=0;
         ADMUX=_BV(REFS1)|_BV(REFS0)|0x06; // starting from battary voltage
         sbi(ADCSRA,ADSC);
далльше анализируем по прерыванию
SIGNAL(SIG_ADC)
{
if (i==0)
      
      {ADCData[0]=(ADCH<<8) + ADCL;
      
      ADMUX=_BV(REFS1)|_BV(REFS0)|0x03; // next will be ADC3
      sbi(ADCSRA,ADSC);
      i++;
      
      } else
      {
      ADCData[i]=(ADCH<<8) + ADCL;
      i++;
      
      
      if (i>4) {ADCdone=1;} else {ADMUX=_BV(REFS1)|_BV(REFS0)|(0x04 - i);sbi(ADCSRA,ADSC); }
      
      }
}
Goofy писал(а):AVCC тоже что и Vcc AREF не подключён. AVCC через индуктивность, с конденсатором на землю. AREF оставлен без кондёра.
 :shock:  :shock:
  :shock:  :shock: 
D-M писал(а):Goofy писал(а):AVCC тоже что и Vcc AREF не подключён. AVCC через индуктивность, с конденсатором на землю. AREF оставлен без кондёра.
:shock: :shock:
вы не чего непутаете?
AVCC через индуктивность к +5 обычно
и какже без опорного напряжения
или я что-то не так понял

Goofy писал(а):D-M писал(а):Goofy писал(а):AVCC тоже что и Vcc AREF не подключён. AVCC через индуктивность, с конденсатором на землю. AREF оставлен без кондёра.
:shock: :shock:
вы не чего непутаете?
AVCC через индуктивность к +5 обычно
и какже без опорного напряжения
или я что-то не так понял
всё правильно к +5 но через индуктивность. Устав твердит что так будет меньше шуму. Опорное напряжения подключается внутреннее, то есть 2,56В

D-M писал(а):я так и не понял вы AREF куда присоединили к земле или +5 ? :oops:
-= Александр =- писал(а):При внутреннем опорном требуется заземлить AREF кондером, желательно даже электролитом...
Читай даташит про ADCSRA - точно где-то в нем ошибка. Или прерывание не разрешил или вообще АЦП не включил...
Кстати могло и сгореть АЦП - у меня уже было такое, что один из каналов сгорел...
void InitADC ()
{
sbi(ADCSRA,ADEN); // ADC Enable
sbi(ADCSRA,ADIE); // Interrupt Enable
sbi(ADCSRA,ADPS2); // 4 vmlab
sbi(ADCSRA,ADPS1);
sbi(ADCSRA,ADPS0);
} по всем идёт 1023
 по всем идёт 1023
ADCData[i]=ADCL + (ADCH<<8); Хоть восклицания поставили бы...
 Хоть восклицания поставили бы...Goofy писал(а):Суть косяка была в том, что сначала должно читаться ADCL, а потом тока ADCH.

avr123.nm.ru писал(а):Goofy писал(а):Суть косяка была в том, что сначала должно читаться ADCL, а потом тока ADCH.
а ... понятно ... т.е. задачу 11 курса
avr123.nm.ru/06.htm не читали.
И примеры C:\CVAVR\examples не смотрели.
А тобы читали бы результат из ADCW
и CVAVR автоматически прочитал
регистры в правильном порядке.
Рекомендую прочитать все же курс на будущее.
 ))
))Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0