roboforum.ru

Технический форум по робототехнике.

считывание результатов АЦП в атмега 8

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

считывание результатов АЦП в атмега 8

Сообщение к561ЛА7 » 06 апр 2010, 09:40

ADMUX=0b00100001; // вход 1, опорное на AREF, выравнивание в право
ADCSRA.6=1;
while(ADCSRA.4==0);
a5=ADCH;


так все работает

ADMUX=0b00000010; // вход 2, опорное на AREF, выравнивание в влево
ADCSRA.6=1;
while(ADCSRA.4==0);
a6=ADCL;


и так все работает


ADMUX=0b00100001; // вход 1, опорное на AREF, выравнивание в право
ADCSRA.6=1;
while(ADCSRA.4==0);
a5=ADCH;
ADMUX=0b00000010; // вход 2, опорное на AREF, выравнивание в лево
ADCSRA.6=1;
while(ADCSRA.4==0);
a6=ADCL;


А так НЕ работает!
Что это за ужас?
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.
Аватара пользователя
к561ЛА7
 
Сообщения: 404
Зарегистрирован: 08 дек 2009, 19:21
Откуда: Й-Ола

Re: считывание результатов АЦП в атмега 8

Сообщение boez » 06 апр 2010, 11:14

When ADCL is read, the ADC Data Register is not updated until ADCH is read. Consequently, if
the result is left adjusted and no more than 8-bit precision is required, it is sufficient to read
ADCH. Otherwise, ADCL must be read first, then ADCH.

То есть, ADCH можно читать в одиночку, а вот ADCL нельзя - надо читать оба, сначала ADCL, затем ADCH:

Код: Выделить всёРазвернуть
ADMUX=0b00000010; // вход 2, опорное на AREF, выравнивание в лево
ADCSRA.6=1;
while(ADCSRA.4==0);
a6=ADCL;
tmp=ADCH;
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: считывание результатов АЦП в атмега 8

Сообщение avr123.nm.ru » 06 апр 2010, 11:15

Кошмар как на улице Вязов!
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8


Вернуться в Микроконтроллеры

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

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