реклама на сайте
подробности

 
 
> Проблемы с АЦП в режиме дифференциального входа, Atmega8535
Ingreeh
сообщение May 22 2012, 12:51
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 12-05-12
Пользователь №: 71 805



Доброго времени суток! Помогите пожалуйста разобраться.

Исходная задача: необходимо реализовать на atmega8535 флюгер(схема досталась в наследство). Суть в том, что на 8 основных направлениях на вход АЦП подается разное напряжение. Просто снять напряжение в лоб нельзя, диапазон очень маленький задран к значению напряжения питания схемы флюгера, как следствие, погрешность результата высокая.

Решили использовать режим дифференциального входа, на одну ножку подается напряжение питания схемы нашего флюгера, на вторую полезный сигнал. Работаем с разницей между уровнями напряжения на обеих ножках(коэф. усиления 10).

Симуляция в Proteus работает исправно, а вот в железе нет, хотя если запросить уровень сигнала на обеих ножках как есть, то значения приходят. В общем, ниже прикладываю кусок кода ибо курение даташита мне не помогает, может быть, кто-то сталкивался с подобными проблемами, может "глазастые" увидят в коде ошибку, которую я проглядела, одним словом, надеюсь на вашу помощь и заранее благодарю.


Сообщение отредактировал Ingreeh - May 22 2012, 12:55
Прикрепленные файлы
Прикрепленный файл  Fluger.txt ( 1.54 килобайт ) Кол-во скачиваний: 55
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Ingreeh
сообщение May 23 2012, 18:58
Сообщение #2





Группа: Новичок
Сообщений: 4
Регистрация: 12-05-12
Пользователь №: 71 805



К сожалению, схему подправить нельзя, нужно работать с тем, что есть, в противном случае я бы не заморачивалась с диф.режимом
Go to the top of the page
 
+Quote Post
sKWO
сообщение Jun 4 2012, 15:05
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530



Цитата(Ingreeh @ May 23 2012, 21:58) *
К сожалению, схему подправить нельзя, нужно работать с тем, что есть, в противном случае я бы не заморачивалась с диф.режимом

я надеюсь Вы сделали следующим образом (внимание на выделенный фрагмент)
Цитата
The ATmega8535 features a 10-bit successive approximation ADC. The ADC is con-
nected to an 8-channel Analog Multiplexer which allows eight single-ended voltage
inputs constructed from the pins of Port A. The single-ended voltage inputs refer to 0V
(GND).
The device also supports 16 differential voltage input combinations. Two of the differen-
tial inputs (ADC1, ADC0 and ADC3, ADC2) are equipped with a programmable gain
stage, providing amplification steps of 0 dB (1x), 20 dB (10x), or 46 dB (200x) on the dif-
ferential input voltage before the A/D conversion. Seven differential analog input
channels share a common negative terminal (ADC1), while any other ADC input can be
selected as the positive input terminal.
If 1x or 10x gain is used, 8-bit resolution can be
expected. If 200x gain is used, 7-bit resolution can be expected.

также обращаю внимание на
Цитата
When switching to a differential gain channel, the first conversion result may have a
poor accuracy due to the required settling time for the automatic offset cancellation cir-
cuitry. The user should preferably disregard the first conversion result.

в коде у Вас я этого не увидел и ещё
Цитата
If differential gain channels are used, the input circuitry looks somewhat different,
although source impedances of a few hundred k? or less is recommended.

по поводу корпусного исполнения МК
Цитата
The differential input channel are not tested for devices in PDIP and PLCC Package.
This feature is only guaranteed to work for devices in TQFP and MLF Packages.

не вижу в Вашем коде вычисления диф измеряного значения:
(от напряжения канала отнять напряж на ADC1(негативное)) умножаете на коэф усил (Ваш = 10) * на 512 и делите на опорное
формула на 215 странице ДШ

Цитата(Ingreeh @ May 22 2012, 15:51) *
на одну ножку подается напряжение питания схемы нашего флюгера, на вторую полезный сигнал.

?????


--------------------
нельзя недооценивать предсказуемость глупости
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 02:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.0137 секунд с 7
ELECTRONIX ©2004-2016