Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ATmega32 + AD7714
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Kesha123
Ничего не понимаю!
Подцепил AD7714 к меге, запрограммировал на работу с тремя дифференциальными каналами.
Каждый канал в отдельности замечательно работает! Но как только пытаюсь запустить все три или
два, все напрочь затыкается и мерять уже не хочет! Что за бред?! Никто с подобным не сталкивался?
rat
Цитата(Kesha123 @ Aug 14 2006, 16:56) *
Ничего не понимаю!
Подцепил AD7714 к меге, запрограммировал на работу с тремя дифференциальными каналами.
Каждый канал в отдельности замечательно работает! Но как только пытаюсь запустить все три или
два, все напрочь затыкается и мерять уже не хочет! Что за бред?! Никто с подобным не сталкивался?

Что значит два или три? Одновременно там не получиться. Опишите подробнее.
Kesha123
Т.е. подаю напряжение на входы:
Ain1+Ain2,
Ain3+Ain4 и
Ain5+Ain6.
Программирую на дифференциальные входы (инициализирую записью в регистр соответственно 4, 5 и 6). Затем читаю из регистра данных 24-битное значение. Все четко работает, если использую один вход (например, Ain1+Ain2). Как только программирую остальные, все напрочь зависает (ничего не читается из регистра данных)! Хотя при первом включении он успевает выдать одно значение напряжения (программа крутится в бесконечном цикле). Ничего не понимаю!
Dog Pawlowa
Цитата(Kesha123 @ Aug 14 2006, 14:02) *
Как только программирую остальные, все напрочь зависает (ничего не читается из регистра данных)! Хотя при первом включении он успевает выдать одно значение напряжения (программа крутится в бесконечном цикле). Ничего не понимаю!

У меня все работало. Даже на двух диф каналах висел дополнительный мультиплексор.
Логика готовности обрабатывается?
Kesha123
Цитата(Dog Pawlowa @ Aug 15 2006, 10:55) *
Цитата(Kesha123 @ Aug 14 2006, 14:02) *

Как только программирую остальные, все напрочь зависает (ничего не читается из регистра данных)! Хотя при первом включении он успевает выдать одно значение напряжения (программа крутится в бесконечном цикле). Ничего не понимаю!

У меня все работало. Даже на двух диф каналах висел дополнительный мультиплексор.
Логика готовности обрабатывается?

В смысле, DRDY? Жду нуля, затем читаю 24 бита. Как говорил выше, две абсолютно одинаковые процедуры чтения, следующие одна за другой, только на входе номер дифф канала. Структура выглядит так:

begin:
______А=4_________________ 'Ain1+Ain2
______Gosub Read_ADC
______А=5_________________ 'Ain3+Ain4
______Gosub Read_ADC
______А=6_________________ 'Ain5+Ain6
______Gosub Read_ADC
______goto begin

!! Опять же, как говорил выше, по отдельности все ЧЕТКО РАБОТАЕТ!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.