Страница 1 из 1
Atmega8535:Проблемы с АЦП в режиме дифференциального входа
Добавлено: Ср май 23, 2012 14:13:54
Ingreeh
Доброго времени суток! Помогите пожалуйста разобраться.
Исходная задача: необходимо реализовать на atmega8535 флюгер(схема досталась в наследство). Суть в том, что на 8 основных направлениях на вход АЦП подается разное напряжение. Просто снять напряжение в лоб нельзя, диапазон очень маленький задран к значению напряжения питания схемы флюгера, как следствие, погрешность результата высокая.
Решили использовать режим дифференциального входа, на одну ножку подается напряжение питания схемы нашего флюгера, на вторую полезный сигнал. Работаем с разницей между уровнями напряжения на обеих ножках(коэф. усиления 10).
Симуляция в Proteus работает исправно, а вот в железе нет, хотя если запросить уровень сигнала на обеих ножках как есть, то значения приходят. В общем, ниже прикладываю кусок кода ибо курение даташита мне не помогает, может быть, кто-то сталкивался с подобными проблемами, может "глазастые" увидят в коде ошибку, которую я проглядела, одним словом, надеюсь на вашу помощь и заранее благодарю.
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Ср май 23, 2012 15:45:11
ILYAUL
Можно схемку глянуть всем
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Ср май 23, 2012 16:28:25
Ingreeh
Если снимать напряжения с ножек "в лоб", то на ножке с полезным сигналом будет значение в диапазоне от 980 до 1023 (чистое значение без калибровки), на ножке с питанием - 1023, а при попытке вывести результат работы в режиме дифференциального входа всегда одно и тоже значение - 1023
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Ср май 23, 2012 17:40:04
ILYAUL
Если уж сильно не менять Вашу схему , то выбросить R9 , R2 заменить на 10к , и убрать провод с питания на 39 ногу контроллера . ADC включить в обычный режим. Любая программа вольтметра Вам подойдёт.
А лучше так
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Ср май 23, 2012 21:55:39
Ingreeh
Проблема в том, что внести изменение в схему флюгера нет возможности, ее скорее нужно рассматривать, как черный ящик отдающий четко заданный диапазон данных.
Так бы я тоже, как решение проблемы, взяла бы другой набор сопротивлений и работала бы с одной ногой АЦП в обычном режиме вместо двух.
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 09:11:24
Engineer_Keen
Что является "неизменяемой" схемой флюгера? Вся схема, включая контроллер или только часть с кнопками и резисторами? Можно хотя бы отключить VCC от кнопок?
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 09:18:32
Ingreeh
Часть с кнопками и резисторами, питание от кнопок отключить можно
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 09:38:10
ILYAUL
Ingreeh писал(а):Часть с кнопками и резисторами, питание от кнопок отключить можно
Если можно отключить питание от кнопок , то землю на них подать сможите
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 09:41:57
Ingreeh
ILYAUL писал(а):Если можно отключить питание от кнопок , то землю на них подать сможите
А с этого места можно подробнее? Вместо питания схему на землю повесить? Что это даст, а то я как-то не соображу совсем.
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 09:45:04
Леонид Иванович
А какая цель в использовании здесь дифференциального режима АЦП? Чтобы при таком включении кнопок избавится от зависимости от VCC, нужно использовать обычное включение АЦП, а в качестве опорного включить VCC.
P.S. В дифф. режиме макс. опорное AVCC - 0.5 В.
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 09:57:23
Ingreeh
Леонид Иванович писал(а):А какая цель в использовании здесь дифференциального режима АЦП?
Цель была в том, чтобы лучше фиксировать изменение направления, полезные значения настолько близки, что изменение направления на 45-90 градусов почти не заметно.
Леонид Иванович писал(а):P.S. В дифф. режиме макс. опорное AVCC - 0.5 В.
Вот про этот момент не знала, спасибо, т.е. например работать в режиме диф.входа от внутреннего ИОНа уже нельзя? Обязательно запитать AVCC и не больше чем на 0.5В?
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 10:17:26
Леонид Иванович
Нельзя использовать в качестве опорного AVCC. Опорное должно быть как минимум на 0.5 В меньше. А вообще, всё это не секретная информация, а из даташита

Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 12:35:35
ILYAUL
Ingreeh писал(а):ILYAUL писал(а):Если можно отключить питание от кнопок , то землю на них подать сможите
А с этого места можно подробнее? Вместо питания схему на землю повесить? Что это даст, а то я как-то не соображу совсем.
Вот так
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 13:14:47
Engineer_Keen
ILYAUL писал(а):Вот так
Смысл вход АЦП заземлять? Вот если между кнопками и землей резистор повесить, колоом на 100, и опорное взять поменьше, то можно будет кнопки различать.
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 13:27:41
Ingreeh
Engineer_Keen писал(а):Смысл вход АЦП заземлять? Вот если между кнопками и землей резистор повесить, колоом на 100, и опорное взять поменьше, то можно будет кнопки различать.
между кнопками и землей это по предложенному ранее варианту? Опорное для АЦП? Т.е. на внутренний ИОН перейти?
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 13:39:43
ILYAUL
Engineer_Keen писал(а):ILYAUL писал(а):Вот так
Смысл вход АЦП заземлять? Вот если между кнопками и землей резистор повесить, колоом на 100, и опорное взять поменьше, то можно будет кнопки различать.
Ё, точно . нельзя делать два дела одновременно
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 14:04:13
Engineer_Keen
Ingreeh писал(а):Опорное для АЦП? Т.е. на внутренний ИОН перейти?
Внутренний ИОН 2.56В, многовато, можно взять меньше, подключить внешний делитель.

Вариант
ILYAUL тоже теоретически возможен, но в этом случае напряжение будет меняться вниз от 5В, значит и опора должна быть 5В, а следовательно и разрешающая способность будет маленькая. В случае, когда флюгер в делителе "сверху", напряжение будет ограничено отношением сопротивления флюгера к нижнему сопротивлению, и его изменение будет больше относительно максимального значения.
Re: Atmega8535:Проблемы с АЦП в режиме дифференциального вхо
Добавлено: Чт май 24, 2012 16:58:25
Ingreeh
Всем спасибо за помощь, мы победили флюгер!