Код для миливольтметра на ATTINY
Код для миливольтметра на ATTINY
Здравствуйте! Помогите с написанием кода для миливольтметра на ATTINY24. Может кто выложить примеры кто уже делал такое?
Миливолтметр состоит из одного микрокотроллера ATTINY24 и дисплея . Жду помощи от вас друзья.
Миливолтметр состоит из одного микрокотроллера ATTINY24 и дисплея . Жду помощи от вас друзья.
- coredumped
- Опытный кот
- Сообщения: 838
- Зарегистрирован: Вт апр 12, 2011 18:38:19
- Откуда: с Земли
Re: Код для миливольтметра на ATTINY
Курсак?
Схемку, для начала, набросайте. Какой индикатор планируется? Какой интервал измеряемых напряжений? Какая нужна точность?
Кстати, насчет точности, как раз и будут трудности.
Схемку, для начала, набросайте. Какой индикатор планируется? Какой интервал измеряемых напряжений? Какая нужна точность?
Кстати, насчет точности, как раз и будут трудности.
Все будет только лучше, в крайнем случае - хуже.
Re: Код для миливольтметра на ATTINY
Да, курсовая работа.
Трубется сделать миливольтметр который мерит значения от 0 до 800мВ (не стоит задача перемнка или постоянка конкретно, т.е. можно выбрать постоянку). Интервал чтобы 1мВ был. Числа после точки(запятой) выводить не требуется.
Т.е. я взял 3 знаковый, 7 сегментный дисплей. Провод на точку не подводим.
Дисплей принимает 2.1В и 10мА, поэтому ещё ставлю резаки.
Питание по заданию 10В. Сказали мспользовать DC/DC, но в Proteus не нашел их. А вообще 10В/1.8В есть, его я нарисую потом, для схемы на А4 и трассировки, но пока и без них бы запустить. А вообще, если подскажите где его искать было бы неплохо.
Но самый главный вопрос с кодом. Я не представляю даже пока как написать код. Т.е сам алгоритм. С синтаксисом разберусь сам, пожалуй. Писать на "C" в данном случае проще?
Трубется сделать миливольтметр который мерит значения от 0 до 800мВ (не стоит задача перемнка или постоянка конкретно, т.е. можно выбрать постоянку). Интервал чтобы 1мВ был. Числа после точки(запятой) выводить не требуется.
Т.е. я взял 3 знаковый, 7 сегментный дисплей. Провод на точку не подводим.
Дисплей принимает 2.1В и 10мА, поэтому ещё ставлю резаки.
Питание по заданию 10В. Сказали мспользовать DC/DC, но в Proteus не нашел их. А вообще 10В/1.8В есть, его я нарисую потом, для схемы на А4 и трассировки, но пока и без них бы запустить. А вообще, если подскажите где его искать было бы неплохо.
Но самый главный вопрос с кодом. Я не представляю даже пока как написать код. Т.е сам алгоритм. С синтаксисом разберусь сам, пожалуй. Писать на "C" в данном случае проще?
Последний раз редактировалось korvinio Пн ноя 14, 2011 10:03:07, всего редактировалось 1 раз.
Re: Код для миливольтметра на ATTINY
Я не представляю даже пока как написать код. Т.е сам алгоритм.
учится 3 раза потом сюда черновик для обсуждения или всё бросить и в Армию там научат.
Re: Код для миливольтметра на ATTINY
Не, я представляю алгоритм конечно, но хотел бы посмотреть как другие решают задачу.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: Код для миливольтметра на ATTINY
В tiny24 есть АЦП с 1.1V ADC Reference Voltage (опорное напряжение), т.е. можно получить разрешение приблизительно 1 мВ. Алгоритм, наверное такой - запускаем АЦП, после измерения - считаем напряжение по формуле VIN = (ADC * Vref)/1024, выводим полученое значение на индикатор.
Re: Код для миливольтметра на ATTINY
korvinio писал(а): миливольтметр который мерит значения от 0 до 800мВ (постоянное или переменное не важно).
Ни фига себе чего - не важно! Для переменки схема в 2 раза больше получится, не говоря уже об проге. И что значит ~/- переключать нужно или он автоматом будет определять, что на входе?
Неясность в постановке задачи, а для того, кто не знает, куда плыть, не бывает попутного ветра.
Re: Код для миливольтметра на ATTINY
Благодарю всех за ответы.
Jack_A: Простите, ввел в непонимание. Я имел в виду, что не стояла задача перемнка или постоянка конкретно. Т.е. естественно я выбираю там где меньше элементов.
Jack_A: Простите, ввел в непонимание. Я имел в виду, что не стояла задача перемнка или постоянка конкретно. Т.е. естественно я выбираю там где меньше элементов.
- coredumped
- Опытный кот
- Сообщения: 838
- Зарегистрирован: Вт апр 12, 2011 18:38:19
- Откуда: с Земли
Re: Код для миливольтметра на ATTINY
Я фигею, дорогая редакция
Чему сейчас в ВУЗах учат?
1. Запускаем поиск на гуглях и находим стопицот "вольтметров на AVR" https://www.google.com/search?hl=&q=%D0 ... 4&ie=UTF-8
2. Выбираем наиболее понравившийся, портируем код под нужный процессор.
Блин, делов-то на пол-дня, вместе со сборкой макета.
1. Запускаем поиск на гуглях и находим стопицот "вольтметров на AVR" https://www.google.com/search?hl=&q=%D0 ... 4&ie=UTF-8
2. Выбираем наиболее понравившийся, портируем код под нужный процессор.
Блин, делов-то на пол-дня, вместе со сборкой макета.
Все будет только лучше, в крайнем случае - хуже.
Re: Код для миливольтметра на ATTINY
coredumped: Спасибо, тема закрыта.
P.S. Навереное не серьезно подешел к поиску. Помню видел похожую схему, но вот повторно найти не получилось.
P.S. Навереное не серьезно подешел к поиску. Помню видел похожую схему, но вот повторно найти не получилось.
- Сериг
- Это не хвост, это антенна
- Сообщения: 1451
- Зарегистрирован: Пт фев 19, 2010 19:39:28
- Откуда: Москва
Re: Код для миливольтметра на ATTINY
korvinio писал(а):Да, курсовая работа.
Трубется сделать миливольтметр который мерит значения от 0 до 800мВ (не стоит задача перемнка или постоянка конкретно, т.е. можно выбрать постоянку). Интервал чтобы 1мВ был. Числа после точки(запятой) выводить не требуется.
Т.е. я взял 3 знаковый, 7 сегментный дисплей. Провод на точку не подводим.
Дисплей принимает 2.1В и 10мА, поэтому ещё ставлю резаки.
Питание по заданию 10В. Сказали мспользовать DC/DC, но в Proteus не нашел их. А вообще 10В/1.8В есть, его я нарисую потом, для схемы на А4 и трассировки, но пока и без них бы запустить. А вообще, если подскажите где его искать было бы неплохо.
Но самый главный вопрос с кодом. Я не представляю даже пока как написать код. Т.е сам алгоритм. С синтаксисом разберусь сам, пожалуй. Писать на "C" в данном случае проще?
Погрешность -+4 % буде
Re: Код для миливольтметра на ATTINY
Это с чего такой вывод?
Не умеешь - не берись, но не взявшись не научишься...
- Сериг
- Это не хвост, это антенна
- Сообщения: 1451
- Зарегистрирован: Пт фев 19, 2010 19:39:28
- Откуда: Москва
Re: Код для миливольтметра на ATTINY
Arlleex писал(а):Это с чего такой вывод?
Даташит почитал
Re: Код для миливольтметра на ATTINY
Всем привет.
Вопрос почти по теме, я тут пытаюсь для своих целей собрать милливольтметр, но с параметрами измерения от 0mV до 50mV, но мне нужна следующая дискретность - xx.xx mV, т.е. четырех разрядный индикатори две цыфры после запятой, т.е дискретность в 10 микровольт. Есть ли такая возможность у микроконтроллеров, т.е. такая чувствительность или нужно усиливать сигнал в n-раз?
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Код для миливольтметра на ATTINY
Теоритически, конечно, можно и напрямую. Но советую усилить раз в 50, чтобы разлет был 2,5 вольта. Хотябы.
Docendo discimus
Re: Код для миливольтметра на ATTINY
Понял, буду пробовать. Но по идее микроконтроллеры среднего порядка не могут иметь такой чуйки в 1 микровольт для своего АЦП? Или можно использовать внутренний усилитель? Или лучше внешний, типа на AD8629, у неё хорошие параметры. Вот прилагаю кусочек схемы от одного проекта, нарыл в сетке, это умножитель на 10, по описанию очень стабильный. Но не могу найти как пересчитывать коэф. усиления здесь. Не подскажете? Или может хватит 10? И ещё, какой ИОН лучше использовать - 2,56 или 1,23 для такого случая? Внутренний ИОН по отношению к внешнему на сколько хуже или лучше? Все ли микроконтроллеры имеют два типа ИОН и разрядность АЦП=10? Я имею ввиду штатные микроконтроллеры. Извиняюсь за много вопросов, просто пытаюсь параллельно с конструированием схемы ещё учиться программированию. 
- Вложения
-
- 4.png
- (11.36 КБ) 323 скачивания
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Код для миливольтметра на ATTINY
Коэффициент усиления в такого рода усилителях - отношение сопротивлений в их цепях.
По идее чуйку(слово-то какое
) могут иметь какую угодно. Ибо Aref делится на 10-ти битовое число, а первое можно задать от 0 до напряжения питания. Так что своя рука владыка. Внешний АЦП имеет смысл ставить для расширения разрядности.
Насчет хватит ли 10, ну откуда мне знать, пробуйте.
По идее чуйку(слово-то какое
Насчет хватит ли 10, ну откуда мне знать, пробуйте.
Docendo discimus
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: Код для миливольтметра на ATTINY
это вы слегка преувеличиваете - далеко не от 0 может AREF быть... так, навскидку, от 1 вольта...pyzh_man писал(а):Ибо Aref делится на 10-ти битовое число, а первое можно задать от 0 до напряжения питания.
битва с дураками проиграна, победители торжествуют. слава победителям!
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Код для миливольтметра на ATTINY
О чем я и веду речь. Поскольку шиты в этом плане молчат, то все скачет от опыта.
Docendo discimus
Re: Код для миливольтметра на ATTINY
Alexandr_ писал(а):Понял, буду пробовать. Но по идее микроконтроллеры среднего порядка не могут иметь такой чуйки в 1 микровольт для своего АЦП? Или можно использовать внутренний усилитель? Или лучше внешний, типа на AD8629, у неё хорошие параметры. Вот прилагаю кусочек схемы от одного проекта, нарыл в сетке, это умножитель на 10, по описанию очень стабильный. Но не могу найти как пересчитывать коэф. усиления здесь. Не подскажете? Или может хватит 10? И ещё, какой ИОН лучше использовать - 2,56 или 1,23 для такого случая? Внутренний ИОН по отношению к внешнему на сколько хуже или лучше? Все ли микроконтроллеры имеют два типа ИОН и разрядность АЦП=10? Я имею ввиду штатные микроконтроллеры. Извиняюсь за много вопросов, просто пытаюсь параллельно с конструированием схемы ещё учиться программированию.
1. У некоторых есть такие АЦП - сигма дельта. Смотрите например на некоторые msp430 (msp430f4270 например) и по моему контроллеры от SiLabs.
2 Можно использовать внутренний усилитель, например в msp430 он есть.
3. Как расчитываются схемы на ОУ можно почитать например в 1-м томе Хоровица Хилла (Искусство схемотехники - волшебная книжка)
4. Обычно встроенный источник обладает меньшей стабильностью.
5. Не все имеютn 2 опорных напряжения. Некоторые имеют 1, некоторые имеют только внешний, некоторые не имеют вообще - используется напряжение питания.
6. stm32, srm8l - 12 разрядов. msp430f4270 - 16 разрядов. Существуют методы программного увеличения разрядности (oversampling). например у TI есть AN (application notes) по применению msp430 для измерения микровольтовых сигналов без внешнего усилителя (весы). Аналогичные AN есть практически для каждого контроллера (AVR в том числе)
7. Что такое штатные микроконтроллеры мне неизвестно. Контора, производящая msp430, находится в Штатах. Так что его можно назвать штатным
8.Нужно чтобы максимальное напряжение что нужно измерить преобразоввывалось в максимальное напряжение на входе АЦП. Грубо коэфициент усиления можно посчитать взяв величину ИОН и поделив на максимальное измеряемое напряжение (2,5 вольта / 50 милливольт = 50 ).
Последний раз редактировалось Galizin Вт ноя 15, 2011 13:37:16, всего редактировалось 1 раз.