реклама на сайте
подробности

 
 
> ADC Noise Reduction
white.wind
сообщение Jun 9 2006, 10:42
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 55
Регистрация: 2-05-06
Из: Санкт-Петербург
Пользователь №: 16 707



Не получается съэмулировать (для начала) такой режим на VMLAB.

Из всех найденных описаний (рабочих примеров не встретил) я понял, что после установки режима проц должен остановится потом отработать прерывание ADC и продолжить выполнение основного кода. Делал так:

Код
...
ISR (ADC_vect)
{
    // Тут ничего
}
...

void main(void)
{
    init_uart();
    init_adc();

    sei();
    
    while(1)
    {

        ADCSRA |= (1<<ADSC);    // Запуск преобразования

        MCUCR |= (1<<7);        // Разрешение засыпания
        MCUCR |= (1<<SM0);    // Включение в ADC Noise Reduction

        uart_putchar(ADCH);        // ADCH, поскольку 8-ми разрядный режим.

    }
}


Пробовал разные вариации, первой была сначала разрешить засыпание, потом инициировать преобразование, потом включить режим ADC Noise Reduction. Все равно не получается.

Общая картина такова, не взирая на желание усыпить проц, он продолжает выполнять команды. Изредка цикл прерывается выполненным преобразованием.

Может быть инициировать преобразование после переключения в ADC NR режим? Но по идее, к этому времени он уже должен спать.

Подскажите как побороть этот режим help.gif

PS. Заметил странность VMLAB бит SE регистра MCUCR считает 6-тым, в то время как по ДШ он 7-ой (последний). Я пробовал и так и так. Камень - Atmega32.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Pyku_He_oTTyda
сообщение Jun 9 2006, 11:07
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 751
Регистрация: 4-08-05
Из: Великие Луки
Пользователь №: 7 360



вставка на ассемблере sleep необходима. В этом месте программа остановится до возникновения прерывания АЦП, дальше выполнение программы со следующей команды после sleep


--------------------
Андрей Смирнов
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 15:27
Рейтинг@Mail.ru


Страница сгенерированна за 0.01344 секунд с 7
ELECTRONIX ©2004-2016