roboforum.ru

Технический форум по робототехнике.
Текущее время: 21 май 2025, 00:10

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Проблема с АЦП - пропуски
СообщениеДобавлено: 03 июн 2008, 09:45 
Не в сети
Аватара пользователя

Зарегистрирован: 03 июн 2007, 22:32
Сообщения: 603
Откуда: Москва
ФИО: Руслан
У меня почему-то не всегда правильно осуществляется конвертация АЦП, если делатьее по нескольким ногам подряд. Приходится повторять или дублировать вызов функции. Внизу кусок кода - посоветуйте, если что не так. Проц - Мега8L.

Код:
//Инициализация:
ADCSR |= (( 1 << ADEN  ) | ( 1 << ADSC  ) | ( 1 << ADPS2 ) | ( 1 << ADPS1 ));
while ( ADCSR & ( 1 << ADSC ) );          /* wait for complete conversion */


uint16_t ADCIN( uint8_t channel )
{
    ADMUX  = ( 1 << ADLAR ) | ( 1 << REFS0 ) | channel;
    ADCSRA = ( 1 << ADEN  ) | ( 1 << ADSC  );
    DELAY_US( 64 );  // 64 microseconds delay
    while ( ADCSR & ( 1 << ADSC ) );
return ADCH;
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с АЦП - пропуски
СообщениеДобавлено: 03 июн 2008, 10:00 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
После переключения входа АЦП рекомендую сделать холостое АЦП.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с АЦП - пропуски
СообщениеДобавлено: 03 июн 2008, 10:07 
Не в сети
Аватара пользователя

Зарегистрирован: 03 июн 2007, 22:32
Сообщения: 603
Откуда: Москва
ФИО: Руслан
А сколько времени я на этом потеряю? Вопрос важен в применении к датчикам линии в сумо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с АЦП - пропуски
СообщениеДобавлено: 03 июн 2008, 10:22 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
RiO писал(а):
А сколько времени я на этом потеряю ?


Подумайте !!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с АЦП - пропуски
СообщениеДобавлено: 03 июн 2008, 12:50 
Не в сети
Аватара пользователя

Зарегистрирован: 15 янв 2007, 19:23
Сообщения: 1058
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК
RiO писал(а):
А сколько времени я на этом потеряю?

АЦП преобразование выполняется 13 тактов АЦП в нормальном режиме,14 — в дифференциальном режиме и 25 — при первом запуске после включения АЦП (у атмегов :)). Вот и считайте.

_________________
I live My life!


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO