Народ, кто сигнал использует, г.O.L. в частности, не сталкивались с такой проблемкой, как переключение мультиплексора на рзные входы (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено vlad77 12 февраля 2004 г. 09:13

АЦП работает с максимальдной скорость, хотя скорость на это не влияет, полоучаю данные с одной ножки, допустим там 0xff, когда я переключаюсь на другую ногу, не смотря на то, что на ней 0в, она при первом проходе показывает значения примерно половина от 0xff, т.е. половитна как бы от прошлого раза, вот таке я его включаю:
...
{
AMX0P=temp; //установить номер канала АЦП
for(i=50; i; i--) // ставил разную задержку, на ситуацию вообще не влияет, хоть буду 1с ждать
AD0BUSY=1; //запустить преобразование АЦП
while(!adc_int) // пока не произошло 4 отсчета
AD0BUSY=1; //запустить преобразование АЦП
adc_int=0;
return (result);
}...

void ADC_ISR (void) interrupt 10 //прерывания от АЦП
{
...
AD0INT=0; //преобразование завершено, сбросили бит прерывания
temp=ADC0H;
...
}
temp при первом проходе, равнается полной чуши, на следующих все становится на свои места, в чем дело может быть?

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru