|
Приветствую всех присутствующих.
Возникла довольно неприятная ситуация: использую три канала встроенного в ATmega8 АЦП. Алгоритм работы устройства подразумевает циклическое переключение номера опрашиваемого канала, т.е. запускаю преобразование по каналу 0, дожидаюсь окончания преобразования, сбрасываю флаг готовности, считываю результат из регистров, переключаю номер опрашиваемого канала на 1, запускаю преобразование по каналу 1 и т.д.
Проблема: Независимо от номера канала в регистре управления входным мультиплексором АЦП (содержимое меняется - проверял) в регистрах остается результат, полученный после преобразования по самому первому (0-му) каналу. Требования Datasheet по последовательности смены номера опрашиваемого канала выполнил - меняю номер только после завершения преобразования. Пробовал такой вариант - после завершения преобразования по очередному каналу и считывания результата выключал АЦП, менял канал и снова вкючал - та же петрушка.
Кто-нибудь знает где собака порылась и какой породы это мерзкое четырехлапое создание?
E-mail: info@telesys.ru