Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: считывание данных с АЦП
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > MSP430
Zelepuk
Возникла проблема при считывании данных с АЦП в прерывании. Птыаюсь понять в чём дело.
Подумал что возможно ошибка в том что считываю из регистров АЦП данные несколько раз в прерывании

иными словами правомерна ли такая конструкция в прерывании АЦП

x = SD16MEM2;
y = SD16MEM2;

при этом x и y будут содержать одинаковые значения?
SSerge
Пока не случится так, что очередное преобразование закончится в аккурат между двумя чтениями.
Лучше уж так написать:
y = x = SD16MEM2;
или даже так: x = SD16MEM2; y = x;

Больше проблем бывает от не прочитанного регистра ADC12IV.
Zelepuk
Сделал как вы посоветовали и всё заработало нормально.
Я читал в даташите что при считывании регистра памяти автоматически сбрасывается бит в регистре прерываний.
Вот цитата:

SD16_A interrupt flag. SD16IFG is set when new conversion results are
available. SD16IFG is automatically reset when the corresponding
SD16MEMx register is read
, or may be cleared with software.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.