Обявления

Для полноценной работы рекомендуется пройти регистрацию.

Рекламные сообщения будут удаляться вместе с пользователем. Что есть реклама - буду решать я.

Вольтметр на ATTINY2313

Здесь только проекты на ATtiny

Re: Вольтметр на ATTINY2313

Сообщение Serioga » 15 май 2013 19:19

nicron, По какой печатке делал ?
Каким программатором и программой шил ?
Питание сразу появляеться, какое ?
Serioga
Живу тут
 
Сообщения: 270
Зарегистрирован: 19 апр 2010 19:52
Откуда: Полтава

Re: Вольтметр на ATTINY2313

Сообщение Cry Baby » 15 май 2013 21:25

nicron, фьюзы не забыли запрограммировать? Похоже, с тактовой частотой что-то не то. Кварц в порядке?
И что с разрядом индикатора, где "1" загорается во втором ролике? Яркость слишком мала, или это на видео так получилось?
Cry Baby
Частенько бываю
 
Сообщения: 48
Зарегистрирован: 14 апр 2010 08:48

Re: Вольтметр на ATTINY2313

Сообщение nicron » 16 май 2013 12:54

Serioga, Cry Baby,
Печатку свою разводил, сейчас показать не могу - ноут навернулся :(
Программатор AVR-PG1B, программа PonyProg, attiny2313 она у меня почему-то "не долюбливавет" - часто ошибку "-24" выдает. При первом подключении удалось только флеш залить, фьзы только на следующий день поставил, проверял несколько раз перед тем как зашивать. Кварц должен быть в порядке, новый. Сам индикатор в порядке, там все разряды тускло горели (именно в вольтметре), а "1" хуже всех был.
ДДо включения индикаора питание с 15 до 8-10 В падает, на мк ~3,6 В, потом снова 15 и на мк 5В.
nicron
Пробегал мимо
 
Сообщения: 14
Зарегистрирован: 30 сен 2012 20:09
Откуда: Брест

Re: Вольтметр на ATTINY2313

Сообщение Serioga » 16 май 2013 14:37

nicron, Что то мне подсказывает что нужно сделать нормальный программатор
и не иметь в будущем проблем.
Serioga
Живу тут
 
Сообщения: 270
Зарегистрирован: 19 апр 2010 19:52
Откуда: Полтава

Re: Вольтметр на ATTINY2313

Сообщение IYra » 16 май 2013 17:50

nicron писал(а):ДДо включения индикаора питание с 15 до 8-10 В падает, на мк ~3,6 В, потом снова 15 и на мк 5В.

Не должно такого быть. Что-то с питанием или коротит где-то. Надо бы токи посмотреть в разных точках.
IYra
Живу тут
 
Сообщения: 624
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

Re: Вольтметр на ATTINY2313

Сообщение nicron » 17 май 2013 20:40

IYra, Токи, к сожалению померить не могу - китайский мультиметр отказался выполнять эту функцию еще пару месяцев назад.
Вот печатка. Кому интересно, могу весь проект в альтиуме скинуть.

P.S. Разобрался с первым вольтметром (там был виноват резистор в делителе), осталось настроить; есть у кого готовая прошивка с измененными константами, где вместо нуля вольтметр показывал 0,030? (Самому как-то не хочется в эти дебри лезть)
nicron
Пробегал мимо
 
Сообщения: 14
Зарегистрирован: 30 сен 2012 20:09
Откуда: Брест

Re: Вольтметр на ATTINY2313

Сообщение Cry Baby » 19 май 2013 17:09

Вот. Будет ноль)
Вложения
Проект_Вольтметр.rar
(4.83 КБ) Скачиваний: 312
Cry Baby
Частенько бываю
 
Сообщения: 48
Зарегистрирован: 14 апр 2010 08:48

Re: Вольтметр на ATTINY2313

Сообщение nicron » 09 июн 2013 14:12

Всем снова здравствуйте.
Помогите разобраться в принципе работы.
В "Радио" написано следующее: "Как только нарастающее напряжение превысит измеряемое, на выходе компаратора DA3 установится низкий логический уровень. Спад сигнала на входе ISP контроллера DD1 приведет к записи в регистр ICR1 содержимого счетного регистра TCNT1, запрос на прерывание по событию "захват" и вызов подпрограммы обработки прерывания."
Не могу понять, как на 11 (ISP) входе мк может установиться низкий логический уровень, если туда постоянно подается +5 В через резисторную сборку DR1?
Объясните, пожалуйста.
Вложения
nicron
Пробегал мимо
 
Сообщения: 14
Зарегистрирован: 30 сен 2012 20:09
Откуда: Брест

Re: Вольтметр на ATTINY2313

Сообщение Serioga » 09 июн 2013 15:02

nicron, Даже не знаю сходу что и сказать, такой вопрос...
В статье все правельно написано.
А если представить что со второй стороны не выход компаратора а просто резистор
значительно меньше 2.7к относительно общего (минуса), тогда что будет ?
Serioga
Живу тут
 
Сообщения: 270
Зарегистрирован: 19 апр 2010 19:52
Откуда: Полтава

Re: Вольтметр на ATTINY2313

Сообщение Cry Baby » 09 июн 2013 19:08

nicron писал(а):Не могу понять, как на 11 (ISP) входе мк может установиться низкий логический уровень, если туда постоянно подается +5 В через резисторную сборку DR1?

Компаратор LM393 с "открытым коллектором", ему нужна подтяжка на "+" питания. Для этого используется резистор сборки.
Cry Baby
Частенько бываю
 
Сообщения: 48
Зарегистрирован: 14 апр 2010 08:48

Re: Вольтметр на ATTINY2313

Сообщение nicron » 09 июн 2013 20:00

Cry Baby, типа резистор сборки является коллекторной нагрузкой выходного транзистора, так что ль?
P.S. Строго не судите. С незнакомыми схемами я в схемотехнике не очень шарю.
nicron
Пробегал мимо
 
Сообщения: 14
Зарегистрирован: 30 сен 2012 20:09
Откуда: Брест

Re: Вольтметр на ATTINY2313

Сообщение Cry Baby » 10 июн 2013 07:35

Именно так.
Cry Baby
Частенько бываю
 
Сообщения: 48
Зарегистрирован: 14 апр 2010 08:48

Re: Вольтметр на ATTINY2313

Сообщение Fram_err » 26 фев 2017 22:16

Приветствую всех. Тоже собрал вольтметр, весьма неплохо себя проявил. Можно немного модернизировать схему, питая прибор от 5 Вольт. Напряжение +15 В брать от повышающего DC-DC преобразователя, например MT3608, существенно снизив ток потребления и нагрев линейного "кипятильника". Да и 5 Вольт легче найти. Думаю амперметру 15 Вольт не нужно, ведь напряжение, снимаемого с токового шунта едва ли перевалит за вольт.
Fram_err
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 26 фев 2017 21:53

Re: Вольтметр на ATTINY2313

Сообщение Fram_err » 22 июл 2017 21:16

Позволил себе чуток изменить разводку. Убрал линейный стабилизатор, для уменьшения перемычек подредактировал дорожки к индикатору. Прошивка пока не полностью готова, напишите если кого заинтересует, постараюсь поскорей закончить. Плата в архиве.
Изображение
Изображение
Вложения
ATtiny2313A Vmeter.rar
(19.94 КБ) Скачиваний: 39
Fram_err
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 26 фев 2017 21:53

Re: Вольтметр на ATTINY2313

Сообщение max64rus » 20 сен 2017 09:10

Приветствую формучане. Искал себе в лбп вольтметр и наткнулся на этот а обсуждение его нашел только здесь, собрал на скорую руку на макетке, все на соплях но запустилось почти сразу и даже в таком состоянии его точность меня поразила собственно у меня три цыфры последний разряд мне не нужен. поигрался над ним пытался уменьшить емкость интегрирующего конденсатора за счет уменьшения тока стабилизации lm317 но не вышло пила по осциллографу становится нелинейная, видать не умеет lm такие маленькие токи стабилизировать ну или может я чего не понимаю ну да ладно, самая основная проблема обнаружилась когда стал поднимать яркость индикаторов за счет уменьшения номинала резисторов( индикатор зеленого свечения) в итоге она оставалась все ровно слабой и потом посмотрев осцилом на выводы индикатора понял в чем проблема. Время индикации составляет всего лишь процентов 30-40 остальное время он не светится понятно что так заложено в прошивке но может понимающие люди смогут это подправить или это слишком сложно и надо всю программу переписывать ? Просто аналогов данному вольтметру не нашел а нужен именно яркосветящий зеленый индикатор. А тут такой подвох :( .Чтоб самому в этот асемблер вникнуть наверно пол года уйдет точно.
max64rus
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 20 сен 2017 08:43
Откуда: г. Энгельс Саратовская область

Re: Вольтметр на ATTINY2313

Сообщение Fram_err » 24 сен 2017 11:00

Для уменьшения тока LM317 нужно поставить повторитель на ОУ. Более подробно https://cloud.mail.ru/public/DEze/pdCsjzvKi (страница 374). По поводу индикатора: в прошивке можно увеличить время свечения. Схема из статьи? Еще напиши название индикатора, и какого номинала стоят резисторы.
Fram_err
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 26 фев 2017 21:53

Re: Вольтметр на ATTINY2313

Сообщение max64rus » 24 сен 2017 13:25

По поводу стабилизатора тока понял, спасибо за ответ. Но в принципе наверно не буду усложнять схему из за уменьшения ёмкости конденсатора. Не сильно критичны гаабариты (я просто поделился своими экспериментами так сказать) а вот яркость для меня критична. А вы пишите что можно увеличить время свечения я правильно понимаю что пауза когда индикаторы не светятся остаётся такой же? И сложно ли это сделать увеличить время свечения? В исходнике смотрел там есть два комментария какие то, общее время свечения и ещё какое то не помню, сейчас глянуть не могу все на работе. Это их что ли менять надо? Да схема из журнала и прошивка от туда же ну изначальная не переделанная так сказать. Резисторы начинал со 120 ом ну и 80 и 30 ставил в итоге вообще напрямую включил я так понял уже сами порты МК ток ограничивают при этом ни МК ни индикатор даже не греются все холодное. До этой схемы собирал на пике с внутренним АЦП так там и МК и индикатор чуть тёплые были и яркость была как мне надо индикатор один и тот же в обоих схемах но там непрерывная так сказать индикация без пауз цифра за цифрой. Марку индикаторов в понедельник напишу под рукой нету.
max64rus
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 20 сен 2017 08:43
Откуда: г. Энгельс Саратовская область

Re: Вольтметр на ATTINY2313

Сообщение Fram_err » 24 сен 2017 17:43

Резисторы менее 100 Ом не стоит подключать, тем более напрямую. Вообще сборку DR1 можно исключить, оставить только резистор на 1-ю ногу контроллера. Базы транзисторов VT3-VT6 подключить непосредственно к ногам DD1.
Fram_err
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 26 фев 2017 21:53

Re: Вольтметр на ATTINY2313

Сообщение max64rus » 25 сен 2017 17:51

Ну вот на пике в вольтметре у меня как раз сто ом стоит и светится ярко (но там каждая цифра светится одну треть времени) а здесь даже напрямую не на столько ярко. Транзисторы открываются нормально. Ну на счет сборки убрать ее можно если в мк внутренняя подтяжка к плюсу включена. И то не слабая ли это будет нагрузка для выхода компаратора. Так базы транзисторов по схеме и так подключены напрямую там только опять же подтяжка к плюсу через DR1. Кстати индикатор kingbright BA56-12GWA. Так все же не подскажите что в исходнике поменять или хоть в какой области это глядеть для увеличения времени индикации? Вы я так понимаю разбираетесь в этом вотличии от меня.
max64rus
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 20 сен 2017 08:43
Откуда: г. Энгельс Саратовская область

Re: Вольтметр на ATTINY2313

Сообщение Fram_err » 25 сен 2017 19:31

Прошу прощенья, про резистор компаратора не доглядел, его тоже оставить :unsure: Для увеличения яркости свечения находим строчку "ldi r21, 0x04" и изменяем значение 0x04 в большую сторону.
Fram_err
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 26 фев 2017 21:53

Re: Вольтметр на ATTINY2313

Сообщение max64rus » 26 сен 2017 22:23

Огромное спасибо Fram_err за подсказку по поводу строчки длительности индикации. Попробовал с начало в протеусе увеличил до десяти и по осциллограммам получил то чего хотел ну за исключением что один импульс на четвертую цифру мне не нужен так как использую только три. Прошил мк яркость увеличилась и чуть не начал плату разводить как заметил что в диапазоне от 3в до 3.3в примерно индикатор хаотично моргает, какая то каша, во всем остальном диапазоне норм. начал убавлять и только при значении 6 в этой строчке этот косяк пропадал. длительность индикации уменьшилась и яркость соответственно тоже. Ну видать не судьба мне с этим вольтметром видно там капитально надо переделывать. чтож бум другие схемы пробовать.
max64rus
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 20 сен 2017 08:43
Откуда: г. Энгельс Саратовская область

Re: Вольтметр на ATTINY2313

Сообщение Fram_err » 28 сен 2017 21:34

max64rus, если есть желание доделать вольтметр, то могу помочь с прошивкой. Но проблема в том, что у меня сейчас нет железа для отладки. Если что, напишите мне в личку, а после завершения выложим готовый вариант на форум.
Fram_err
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 26 фев 2017 21:53

Re: Вольтметр на ATTINY2313

Сообщение IYra » 30 сен 2017 21:00

max64rus писал(а):Огромное спасибо Fram_err за подсказку по поводу строчки длительности индикации. Попробовал с начало в протеусе увеличил до десяти и по осциллограммам получил то чего хотел ну за исключением что один импульс на четвертую цифру мне не нужен так как использую только три.

Попробуй заменить функцию disp на
Код: Выделить всё
                        ;вывод на индикатор
DISP:   wdr      ;
   in r1, SREG   ;
   push r16   ;
   push r17   ;
   push r18   ;
   push r19   ;
   push r20   ;
   push r21   ;
   push r26   ;
   push r27   ;
   lds r18, 0x0068   ;счетчик АЦП
   tst r18      ;    Проверить счетчик
   breq d1      ;    если 0 перейти на d1
   dec r18      ;    иначе -1
   sts 0x0068, r18   ;и запись в счетчик
d1:   lds r18, 0x0069   ;счетчик тиков 8.1 мс
   tst r18      ;
   breq d2      ;
   dec r18      ;
   sts 0x0069, r18   ;
d2:   lds r18, 0x006a   ;счетчик тиков
   clc      ;
   cpi r18, 0x3e   ;Сравнить c константой
   brsh d3      ;больше или равно 61
   inc r18      ;меньше 61
   sts 0x006a, r18   ;счетчик тиков
   ser r18      ;    установить все биты регистра
   sts 0x0060, r18   ;установка маски
   rjmp d4      ;
d3:   clc      ;больше 61
   cpi r18, 0x7a   ;
   brsh d8      ;больше или равно 122
   inc r18      ;меньше 122
   sts 0x006a, r18   ;счетчик тиков
   clr r18      ;
   sts 0x0060, r18   ;сброс маски
   rjmp d4      ;
d8:   clr r18      ;больше 122       
        sts 0x006a, r18   ;сброс счетчика
d4:   ldi r16, 0x04   ;кол-во индикаторов

    lds r17, 0x0080   ;счетчик индикаторов
    tst r17 ;
    brne d11 ;
    ldi r17, 0x01   ;первый индикатор
d11:  lsl r17      ;следующий индикатор Логически сдвинуть влево
    cpi r17, 0x10;   
    brlo d10      ; меньше 00010000
    ldi r17, 0x01   ;первый индикатор
d10:  sts 0x0080, r17   ;


   clr r27      ;
   ldi r26, 0x61   ;начальный адрес ОЗУ индикатора
d7:   in r18, PORTD   ;
   andi r18, 0xf0  ;
   or r18, r17   ;выделение номера индикатора
   out PORTD, r18   ;включение индикатора
   ld r19, X+   ;загрузка семисегментного кода
   lds r20, 0x0067   ;маска индикаторов
   or r19, r20   ;
   out PORTB, r19   ;включение сегментов

   pop r27      ;
   pop r26      ;
   pop r21      ;
   pop r20      ;
   pop r19      ;
   pop r18      ;
   pop r17      ;
   pop r16      ;
   out SREG, r1   ;
   reti   


Должна каждая цифра включаться последовательно на 8мс
Итого 32мс на 4 индикатора. Получается 30Гц. Может моргать
IYra
Живу тут
 
Сообщения: 624
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

Re: Вольтметр на ATTINY2313

Сообщение max64rus » 01 окт 2017 15:51

IYra, Заменил, скомпилировал, прошил. Мерцания видны не вооруженным взглядом плюс ко всему при инициализации загораются все восьемерки а при работе на всех индикаторах одна и таже цифра из какого именно разряда не понятно. тоесть 111, 222, 333, 444 .... ну и т д как то так.
max64rus
Пробегал мимо
 
Сообщения: 6
Зарегистрирован: 20 сен 2017 08:43
Откуда: г. Энгельс Саратовская область

Re: Вольтметр на ATTINY2313

Сообщение IYra » 02 окт 2017 19:52

max64rus писал(а): Мерцания видны не вооруженным взглядом плюс ко всему при инициализации загораются все восьемерки а при работе на всех индикаторах одна и таже цифра из какого именно разряда не понятно. тоесть 111, 222, 333, 444 .... ну и т д как то так.

Это я подправил. Мерцание пока оставил (30гц). Если сделать вывод на 3 индикатора - то будет 40 гц.
Код: Выделить всё
                        ;вывод на индикатор
DISP:   wdr      ;
   in r1, SREG   ;
   push r16   ;
   push r17   ;
   push r18   ;
   push r19   ;
   push r20   ;
   push r21   ;
   push r26   ;
   push r27   ;
   lds r18, 0x0068   ;счетчик АЦП
   tst r18      ;    Проверить счетчик
   breq d1      ;    если 0 перейти на d1
   dec r18      ;    иначе -1
   sts 0x0068, r18   ;и запись в счетчик
d1:   lds r18, 0x0069   ;счетчик тиков 8.1 мс
   tst r18      ;
   breq d2      ;
   dec r18      ;
   sts 0x0069, r18   ;
d2:   lds r18, 0x006a   ;счетчик тиков
   clc      ;
   cpi r18, 0x3e   ;Сравнить c константой
   brsh d3      ;больше или равно 61
   inc r18      ;меньше 61
   sts 0x006a, r18   ;счетчик тиков
   ser r18      ;    установить все биты регистра
   sts 0x0060, r18   ;установка маски
   rjmp d4      ;
d3:   clc      ;больше 61
   cpi r18, 0x7a   ;
   brsh d8      ;больше или равно 122
   inc r18      ;меньше 122
   sts 0x006a, r18   ;счетчик тиков
   clr r18      ;
   sts 0x0060, r18   ;сброс маски
   rjmp d4      ;
d8:   clr r18      ;больше 122       
        sts 0x006a, r18   ;сброс счетчика
d4:   ldi r16, 0x04   ;кол-во индикаторов

    lds r17, 0x0080   ;счетчик текущего индикатора (0-3)
   inc r17 ;        увеличиваем на 1
    cpi r17,0x03 ;   сравниваем с 4
    brlo d10     ;   если меньше - записываем в память
   clr r17      ;   если 4 - присваиваем 0
d10:  sts 0x0080, r17   ;
    clr r27      ;   Регистр косвенной адресации X=R27:R26
   ldi r26, 0x61   ;начальный адрес ОЗУ индикатора
    add r26, r17   ;
    mov r18, r17    ; Копировать r17 в r18
    ldi r17,0x01    ;
d11:  tst r18 ;
    breq d7   ;
    lsl r17     ;следующий индикатор Логически сдвинуть влево
   dec r18   ;
    rjmp d11  ;
                   ;
d7:   in r18, PORTD   ;
   andi r18, 0xf0  ;
   or r18, r17   ;выделение номера индикатора
   out PORTD, r18   ;включение индикатора
   ld r19, X   ;загрузка семисегментного кода
   lds r20, 0x0067   ;маска индикаторов
   or r19, r20   ;
   out PORTB, r19   ;включение сегментов

   pop r27      ;
   pop r26      ;
   pop r21      ;
   pop r20      ;
   pop r19      ;
   pop r18      ;
   pop r17      ;
   pop r16      ;
   out SREG, r1   ;
   reti      ;


Здесь строчка
Код: Выделить всё
    cpi r17,0x03 ;   сравниваем с 3

выводит 3 цифры
IYra
Живу тут
 
Сообщения: 624
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

Пред.След.

Вернуться в ATtiny



Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot], Yahoo [Bot] и гости: 5