Страница 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
Всем спасибо за помощь, мы победили флюгер!