Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

ТЕМА: АЦП универсальный «показометр» , LED - МК Atmega8.

АЦП универсальный «показометр» , LED - МК Atmega8. 06 апр 2017 19:22 #1

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
..отзовитесь кто собирал даный проект sxem.org/2-vse-stati/20-voltmetry/4-universalnyj-pokazometr
..нужна помощь чтобы подкоректировать прошивку
Последнее редактирование: 06 апр 2017 19:59 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 07 апр 2017 08:15 #2

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
Подкорректировать может только автор.
Могу написать альтернативную прошивку, но в такой универсальности особого смысла не вижу. По крайней мере, думаю Вам нужен вполне конкретный вариант под Ваш индикатор, Ваши датчики и Ваши запросы.
Если Вас такой вариант устраивает - выложите описание с необходимыми характеристиками прибора. Если нужно именно повторение всего функционала - могу сделать и так...

В схеме есть некоторая нерациональность - один регистр лишний. А прошивка не использует те преимущества, которые он дает.
Если схема уже собрана в железе, тогда менять ее уже нет резона. Но если все на стадии разработки, тогда возможен и другой вариант с теми же характеристиками.
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 08 апр 2017 11:07 #3

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12

Вложенный файл:

Имя файла: прошивка.rar
Размер файла:5 KB

..с автором связывался и только раз вышел на связь,прислал мне прошивку другую,стабильную,а не та что выложена в проекте.в прошивке в проекте в ней сильно быстро меняются показания измерений,дергания.а подкоректировать нужно меню Fn1-Fn9,или вообще его убрать,ето коефициент усиления контроллера.проблема в том что при подаче к примеру максимума измерения 5Вольт на вход микроконтроллера и включенном Fn2 показания на индикаторах не показывают максимум измерения,и только когда стоит Fn1 или Fn9 тогда да,но при таком выборе без сигнала на входа контроллера меняются значения на индикаторах,сильно чувствительно(вместо 0,00 показывает 0,02,3,4 и прыгают)в железе платы готовы,но могу сделать платы и под Вами предложенный функционал.остановился на етом проекте из-за фунциональности и в том что присутствуют встроенные защиты.использовать хочу в качестве вольтамперметра и термостата.прошивка во вложении стабильная,без дерганий,ее и корректировать.спасибо Вам что откликнулись
Последнее редактирование: 08 апр 2017 11:30 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 08 апр 2017 20:09 #4

  • Сергей 78
  • Сергей 78 аватар
  • Не в сети
  • I'm here long time
  • Сообщений: 173
  • Спасибо получено: 6
multic33 Вы видимо невнимательно читали. SOIR не корректирует чужие прошивки. Он может написать новую по вашим запросам.
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 08 апр 2017 20:26 #5

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
..да читал Сергей,ну а вдруг,в целом прошивка хорошая,окромя описанной функции,попрошу чтобы фунционал остался прежний,только убрать даное меню или может добавит что то свое,предложит,платы просто у меня готовые под етот проект
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 08 апр 2017 21:50 #6

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
После выходных напишу Вам прошивку.
Сам я ничего добавлять не буду, разве что косметика какая. Здесь Вы должны мне сказать, что убрать, что изменить, а что добавить.
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 10:54 #7

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
спасибо большое Soir.даже не знаю чего и хочу,скорее всего убрать функционал Fn,остальное оставить,сделать измерения типа стандартно,желательно с плавающей точкой от 0 до 99,9 во всех измерениях.читал на форумах,чтобы небыло дерганий показаний, контроллер должен замерять 30 замеров,каждое измерение производится в режиме "SLEEP" с "заглушенным" тактовым генератором. потом токо выводить инфу на индикаторы.для меня ето темный лес,я практик в собирании железа,но не программист к сожалению.практикую проекты авометров которые интерестны, для знакомых в сервисцентры в блоки питания китайские,типа Baku,там предел измерения занижен знаете и термостаты для газовых котлов
Последнее редактирование: 09 апр 2017 11:04 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 17:16 #8

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
multic33 пишет:
даже не знаю чего и хочу
Определяйтесь, я ведь тоже не знаю, чего Вы хотите.

Пока собрал проект. Только индикация и измерение напряжения. Вход в меню нажатие и удержание более 2 сек кнопки SET. Там пока только выбор индикатора. Зачем - это мне не ведомо.
Еще понимаю, когда создается устройство для "всех". Как в статье, например. Каждый подстраивает под свои нужды.
Но Вам то, зачем? Вы же собираете вполне конкретное устройство, под вполне определенные задачи. Зачем все эти выборы и настройки? Вы же заранее знаете и диапазоны измерения, и тип индикатора, и символы к параметрам...
Весь этот балласт отнимает и ресурсы МК, и мое время. А в конечном изделии усложняет пользователю процесс настройки.
Сделаю, конечно, если Вам это все нужно (например, если делаете на продажу и не знаете, что понадобится покупателю). Но, если что-то лишнее - пишите, не хочется делать дурную работу.
Последнее редактирование: 10 апр 2017 15:37 от Soir. Причина: Удаление неактуального вложения.
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 19:51 #9

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
..спасибо уважаемый Soir,Вы спец,приклоняюсь,прошил,все красиво.в моем случае амперметр слева,вольтметр справа.вот почему нужно оставлять меню,чтобы человек мог поменять,установить символы под свое усмотрение.плат у меня штук 25,только паять и выставлять на индикаторах то что хочет заказчик.лишнее в етом проекте ето коефициент усиления,можно вырезать,ну и если ето возможно то плавающую точку в измерениях,чтобы до 10 Вольт/Ампер показывало сотые и соответственно выкинуть меню можно "tu"которое отвечает за отображение запятой,вывода информации в виде 000-0.00-00.0.в большинстве случаев делаю друзьям,знакомым,беру только за запчасти
Последнее редактирование: 09 апр 2017 19:59 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 20:24 #10

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
multic33 пишет:
плавающую точку в измерениях,чтобы до 10 Вольт/Ампер показывало сотые
Просто так, не получится. Вся шкала измерения - 1000 единиц. Ее можно сделать, например до 9,99V или 99,9V - смотря где поставить запятую и как настроить входной делитель. Но сделать 99,99 или переключать пределы программным способом без особых ухищрений, не удастся. В принципе, 99,99 сделать можно, но сотые будут просто для красоты, точности в них ни какой.
Поэтому все решает входной делитель. А запятая уже ставится программно в нужном месте. В прошивке из статьи этой запятой можно управлять. Но это лишь запятая, а не переключение пределов измерения.
Есть вариант, это установка двух входных делителей с раздельными входами в МК. Тогда программа уже сама решает, какой делитель в данный момент нужен и берет сигнал с него. Но это изменения в схему.
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 20:35 #11

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
тогда оставляем меню "tu" и убираем Fn.или амперметр до 9,99,вольтметр 99,9.я делал вольтамперметры где используется два порта для измерения напряжения и был помню точно один,где точка менялась сама после 9,99 показывало 10,0 и использовался один порт меги8.могу поискать проект етот если интерестно
Последнее редактирование: 09 апр 2017 20:38 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 20:40 #12

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
multic33 пишет:
использовался один порт меги8.могу поискать проект етот если интерестно
Если интересно - поищите...
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 20:51 #13

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
не могу чего то отправить архив.вот ссылка hardlock.org.ua/viewtopic.php?f=10&t=186
Последнее редактирование: 09 апр 2017 20:55 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 09 апр 2017 23:04 #14

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
Ничего нового там нет. В лучшем случае, если по-научному - oversampling.
Если по-простому, то программа делает 10 замеров, складывает как для усреднения, но на 10 не делит. В данном случае делит на 4. Вот и получается шкала 25,00. Не буду здесь долго расписывать этот метод, задайте поиск - описания есть и с формулами, и "на пальцах".
В данном случае это псевдо oversampling - построен на шумах, помехах, нестабильности АЦП... Таким способом полученным сотым, верить нельзя. Не знаю, имеет ли смысл такое измерение. Хотя по просьбам трудящихся сам иногда так делаю - людям нравится когда много знаков.

Или простая математика. Результат измерений программа делит на 4. Если число получает меньше 100, то умножает его на 10 и выводит в формате х,хх. Если результат 100 и больше - выводит в формате хх,х. Но в этом случае одну сотую не получить. Дискретность будет 2-3 сотых для выбранной шкалы 25,6V.

Что именно здесь - нужно смотреть в железе, Proteus в обоих случаях покажет одинаковый результат. Если внизу шкалы можно увидеть меняющиеся сотые на единицу - первый вариант. Если сотые меняются скачком по 2-3 единицы - второй.

Есть еще вариант, немного улучшающий разрешающую способность внизу шкалы, но он точно здесь не применяется.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 10 апр 2017 15:37 #15

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
Версия для тестирования. Есть отличия от оригинала, не все может учел, может где ошибки - проверяйте. Что не так - пишите. Что непонятно - спрашивайте. Краткое описание во вложении.
Вложения:
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 10 апр 2017 18:07 #16

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
Soir вы маг,спасибо большое,прошил,работает,все красиво и понятно.вставлю в БП и понаблюдаю.а то что вы для меня написали принцип измерения-ето для меня темный лес,простите.в програмировании я ноль,я знаю как работает железо,зачем нужна деталька в схеме и чего она делает,как говорится-каждому свое.я досих пор немогу установить себе протеус,не то чтобы попробовать поработать на нем,думаю мне и не нужно,есть такие спецы как ВЫ,низкий поклон

тест провалился,всплыло недоразумение.входишь в меню,перебираешь подменю,но ничего изменить нельзя,ни символ,ни точку переместить и тд..может работать нормально если поиграть вкл-выключением изделия,потом снова виснет менюшка
Последнее редактирование: 10 апр 2017 19:45 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 10 апр 2017 20:16 #17

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
multic33 пишет:
если поиграть вкл-выключением изделия,потом снова виснет менюшка
Подробнее распишите свои игры.

Проверьте кнопки PLUS и MINUS. Когда зависнет, измерьте напряжение на этих кнопках в отжатом и нажатом состояниях.
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 10 апр 2017 22:37 #18

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
..зависания снимаются многократным отключением-включением питания или прошивкой контроллера.на всех кнопках +4,98В когда нормально работает и когда виснет.при нажатии на кнопки на индикаторе видно отклик,но изменения не происходят.еще заметил что может самопроизвольно выйти с режима меню и выставляет знаки как хочет.сейчас снова прошил,жду результата
..зависло меню
..когда меняешь букву,точку,значение-оно не отображается на индикаторах,а выходишь с меню-значения изменены,тобишь во время изменения значений они не выводятся на индикаторы,но изменяются
Последнее редактирование: 10 апр 2017 22:46 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 11 апр 2017 06:23 #19

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
multic33 пишет:
при нажатии на кнопки на индикаторе видно отклик,но изменения не происходят.
Как выглядит этот отклик?
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 11 апр 2017 17:16 #20

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
..хочешь поменять букву,она перемигивает,точку-тоже,цифры тоже,но значения не меняются,только когда выйдешь с меню видно что поменялось место точки,буква-знак,цифры,а во время ввода на дисплее ничего не меняется
Последнее редактирование: 11 апр 2017 17:17 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 11 апр 2017 19:10 #21

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
multic33 пишет:
только когда выйдешь с меню видно что поменялось место точки,буква-знак,цифры,а во время ввода на дисплее ничего не меняется
Теперь понятно. Нужно еще доработать переключение индикаторов. Если порядок информации на индикаторах не соответствует по умолчанию, тогда устанавливается не свой канал.
Попробуйте после перепрошивки МК с стиранием EEPROM войти в настройки, но перед этим не переключать индикаторы (не нажимать PLUS/MINUS из основного окна). Проверьте как в этом случае работают настройки. Если нормально, тогда я чуть позже поправлю прошивку.
Администратор запретил публиковать записи гостям.
Спасибо сказали: multic33

АЦП универсальный «показометр» , LED - МК Atmega8. 11 апр 2017 21:07 #22

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
..попробывал,вы правы,пока не поменяешь,не трогаешь перестановку индикаторов местами,все работает отлично в меню,поменял местами-перестает,снова поставил как поумолчанию-работает.у меня левый индикатор амперметр,правый вольтметр,и по линии амперметра операционник стоит,так что поменяйте пожалуйста программно входа контроллера местами,ну или уже добивайте прошивку до конца,вариант Ваш очень мне понравился
Последнее редактирование: 11 апр 2017 21:48 от multic33.
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 14 апр 2017 20:39 #23

  • Soir
  • Soir аватар
  • на форуме
  • Moderator
  • Сообщений: 5574
  • Спасибо получено: 1974
Поправил, только нужно все варианты проверить сначала, мог где-то снова ошибиться.
Вложения:
Администратор запретил публиковать записи гостям.

АЦП универсальный «показометр» , LED - МК Atmega8. 14 апр 2017 21:53 #24

  • multic33
  • multic33 аватар
  • Не в сети
  • new member
  • Сообщений: 12
Soir пишет:
Поправил, только нужно все варианты проверить сначала, мог где-то снова ошибиться.
..человеку свойственно ошибаться,ничего страшного,ето не космический корабль,сейчас прошью,посмотрю.с наступащим праздничком Вас,Великоднем!
..прошил,все чудесно,меню работает прекрассно,буду наблюдать,тестировать,спасибо Вам,хотя я думаю хоть какую символическую плату должны Вы брать за свой труд.если не откажете,обращусь с еще одним проектом,автора просил выслать другую прошивку,так он не склонен к украинцам
Последнее редактирование: 14 апр 2017 22:09 от multic33.
Администратор запретил публиковать записи гостям.
Модераторы: wolf2000, Vakula, Айнцвайдрайченко