Милливольтметр на ATMega

Обсуждаем контроллеры компании Atmel.
Ответить
Родился
Сообщения: 6
Зарегистрирован: Вт май 18, 2010 12:14:40

Сообщение Flash_Vrn »

Здравствуйте.
Возникла необходимость с помощью МК измерять ток от 4ма до 20 ма, с точность 0,5%.
С помощью внутреннего АЦП ATMega 32 напрямую такой ток маленький измерить не получится. Пробовал сделать усилитель на ОУ, но на выходе получается нелинейное усиление. Остановился на варианте подключения внешнего АЦП. Вот с этим возникли трудности. Моделирую схему в Proteus 7.2, выбрал в качестве внешнего АЦП 12 разрядный MAX1240, но заставить работать его с МК не получается. Может быть есть у кого ссылки на похожие проекты?
Заранее спасибо.
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

datasheet писал(а):To start a conversion, pull CS low. At CS’s falling edge,
the T/H enters its hold mode and a conversion is initiat-
ed. After an internally timed conversion period, the end
of conversion is signaled by DOUT pulling high. Data
can then be shifted out serially with the external clock.
Перевод нужен?
Ставим плюсы: )
Реклама
Родился
Сообщения: 6
Зарегистрирован: Вт май 18, 2010 12:14:40

Сообщение Flash_Vrn »

ibiza11 писал(а):Перевод нужен?
Перевод не нужен, спасибо.
Так как с МК столкнулся недавно, не могу разобраться с управлением. Может быть есть уже готовый кусок кода? Было бы проще разобраться.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

вот самое простое экспромтом :

Код: Выделить всё

cbi ADC_PORT,CS ; запуск преобразования
wait:
sbrs ADC_PORT,DOUT ;ожидание завершения преобразования
rjmp wait
ldi cnt,12 ;начало цикла считывания данных
loop:
sbi ADC_PORT,SCLK ;один клок на счетный вход АЦП 
cbi ADC_PORT,SCLK
in temp,ADC_PORT ;берем данные
bst temp,DOUT;записываем во флаг Т
lsr DataL ;подготавливаем регистры данных (освобождаем одно место в младшем байте)
ror DataH
bld DataL,0 ;записываем бит из регистра Т в младший бит
dec cnt
brne loop
На выходе получаем данные в регистрах DataL и DataH. написано без учета задержек.
Ставим плюсы: )
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 6
Зарегистрирован: Вт май 18, 2010 12:14:40

Сообщение Flash_Vrn »

Спасибо! Попробую разобраться.
Реклама
Родился
Сообщения: 6
Зарегистрирован: Вт май 18, 2010 12:14:40

Сообщение Flash_Vrn »

А кто нибудь моделировал в Протеусе связку МК с данным АЦП? Смущает надпись у данного АЦП "Схематическая модель", а у многих других компонентов "VCM DLL модель".
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

Думаю, вероятность того, что кто то напишет именно в этой теме о применении вашей микрухи в протеусе очень мала. Собирайте железо и пробуйте на нем.
Ставим плюсы: )
Родился
Сообщения: 6
Зарегистрирован: Вт май 18, 2010 12:14:40

Сообщение Flash_Vrn »

Всем спасибо. Разобрался. АЦП работает правильно, была ошибка в программе при считывании данных.
Родился
Сообщения: 1
Зарегистрирован: Ср авг 29, 2012 18:22:12

Сообщение 1makc1 »

А у вас вольтметр или амперметр?
Мне нужно устройство вольтметр- измеряемый диапазон от 0,4мВ до 4мВ с высокой точностью измерения. Можете подсказать как сделать?
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Высокая это какая?
Друг Кота
Аватара пользователя
Сообщения: 6337
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Сообщение Jack_A »

Меньше единиц процентов погрешность не получить никак, особенно если учитывать нестабильность усилителя, без которого не будет работать вообще. Точные измерения делаются иначе.
Опытный кот
Сообщения: 772
Зарегистрирован: Вс апр 10, 2011 02:24:06
Откуда: г.Северодонецк

Сообщение eufs »

Для простых и не дорогих случаев (тензомост, термопара ) использую ОУ OP177. Если нужна точность повыше - АЦП AD7705. Он с усилителем на 128 и два дифвхода, 16 бит, цена около 7$.
C0FFEE=‭12648430‬
Прорезались зубы
Аватара пользователя
Сообщения: 222
Зарегистрирован: Чт июл 08, 2010 01:03:40
Откуда: Украина, Киев

Сообщение Antifritz »

Ну можно взять точный внешний источник опорного напряжения. Делим это напряжение на 1024 и получаем минимальное изменение напряжения, которое можно измерить. У ADшных ИОНов минимальное напряжение 1.2В / 1024 ~ 1мВ. Ну а теперь добавляем погрешность усилителя, учитываем наводки и разводку проводников.
Друг Кота
Аватара пользователя
Сообщения: 6337
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Сообщение Jack_A »

В этом перечне упущена одна деталь - погрешность самого АЦП . И не надо отождествлять разрешающую способность и погрешность.
Ответить

Вернуться в «AVR»