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

 
 
> АЦП
-AZ-
сообщение Sep 24 2015, 16:13
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 85
Регистрация: 20-09-15
Пользователь №: 88 488



Приветствую уважаемых специалистов.
Подскажите что не так.....
Или уже пора в ду...... или не пойму, не зависимо что на ножке А0(хоть земля, хоть плюс) - получаю 0х02 85 (последний байт плавает)
Пол дня с ним бьюсь, хэлп, сос

ADC10CTL0 |= ADC10SHT0 | ADC10ON;
ADC10CTL1 |= INCH0;
ADC10AE0 |= BIT0;
ADC10CTL0 |= ENC;

while(1)
{
ADC10CTL0 |= ADC10SC;
while(ADC10CTL1 & ADC10BUSY);

adcValue = ADC10MEM;
uart_TX(adcValue);
}
}

Сообщение отредактировал phenixs - Sep 24 2015, 16:14
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
controller_m30
сообщение Sep 24 2015, 20:43
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 356
Регистрация: 24-02-09
Пользователь №: 45 309



В общем, как я понял, заработало wink.gif

Чтоб победить плавающие последние биты, можно вычислять среднее арифметическое нескольких семплов подряд. Сложить, например, значения 4 семплов, а потом сдвинуть эту сумму вправо на 2 бита (т.е. поделить на 4) - получится среднее значение.
Или 8 семплов сложить и сдвинуть на 3 бита вправо... и т.п.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 19th August 2025 - 03:17
Рейтинг@Mail.ru


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