По поводу импульсов и прочего, чтоб МК не глюкнул и не помер от импульса, я у себя сделаю простую как 2 пальца схему, массы общие, а вот на питании линейный стаб типа lm7805 (либо менее жрущий аналог) на входе стаба резистор ом 50-100, дальше кондер много мкф, и после стаба снова кондер много мкф. В итоге импульсы не страшны будут, даже если в момент пуска напряжение на акуме ниже 3.3В просядет
Мелкие кондерчики 0.1мкФ нужны чтоб ВЧ загасить т.к. у емких литов индуктивность выше и они хуже ВЧ гасят чем мелкие
Тёмыч, в свое время в отцовский Жигуленок натыкал всякой мелочи: индикатор напряжения бортовой сети, индикатор уровня топлива, блок управления стеклоочистителем, электронное зажигание, звуковой сигнализатор включения рычага поворотов, часы, делал стробоскоп для настройки зажигания. Никаких специальных защит не применял, в индикаторе напряжения операционники прямо от 12В запитывались. Проработало все лет 6 и ушло к следующему "счастливому обладателю". Генератор, как и стартер в моменты коммутации, нагружены на аккумулятор, он и сглаживает все безобразия. На схемах плавного включения фар никаких защит тоже не видел, да и что туда поставишь? Снаббер? Сапрессор? Как рассчитать? Отключать полевики с помощью реле? Громоздко и ненадежно. Мне кажется, защита только усложнит схему без увеличения надежности. Могу и ошибаться. Осциллограф туда надо.
ЦитатаТёмыч ()
Решил отказаться от спящего режима и завести питание через замок зажигания.
msmmmm, сейчас начал проверять схему, оказалось что есть потребление тока около 20 мА, в выключенном состоянии. Начал искать причину, вот что нашёл: Потребление тока идёт по линиям А и В, +24в в этот момент отсутствует, +12в есть. Получается постоянно подключено к АКБ из всей схемы только полевики и источник стабильного тока, у последнего собственное потребление около 5 мА. Хотел его тоже через диод запустить вместе с остальной частью, но тогда получается, что на диоде будет падать определённое напряжение, которое будет меняться в зависимости от протекающего тока (уже проверил) и вся схема защиты перестанет работать Какие есть варианты ?
Тёмыч, параллеьный стабилизатор не гуд. Ставь готовый 7805 или аналог мне кажется меньше будет потреблять.
Грубо говоря если подсчитать То этот стабилизатор в идельных условиях игнорируя сопротивление перехода транзистора и ТЛки сам по себе должен жрать аж 85мА
(130+160+3600 это как один резистор и другой 2200, параллеьно они дают 1400Ом, ну вот 12\1400=85мА) Конечно если мои рассуждения верны
Кстати как такой вариант? МК питаем напрямую от маложрущего стабилизтора. Дальше МК рулит силовым ключем, который уже запускает всю жрущую периферию? Например включили зажигаение или ткнули кнопку - силовой мосфет подал питание на все остальное. В итоге будет жрать в режиме ожидания только МК. Этот варинат катит если конечно с выключеным зажиганием ничего не надо контролировать постоянно.
[)еНиС, это не параллельный стабилизатор, а стабилизатор тока для делителей, которые создают опорные напряжения для компараторов. Ток там мизерный, но почти не зависит от питающего напряжения и нагрузки. Тёмыч, отключить ток несложно, нужно делитель оставить как есть, а напряжение через диод подавать только на 2,2 кОм стабилизатора тока. Но как поведут себя входы ОУ? На них будет 12В, а напряжение питания снято. Надо подумать, не очень мне это...
Добавлено (14.03.2017, 20:08) --------------------------------------------- Посмотрел схему ОУ, должно быть все в порядке, но лучше бы в линии АА и ВВ по резистору кОм 20 поставить.
Но как поведут себя входы ОУ? На них будет 12В, а напряжение питания снято. Надо подумать, не очень мне это...
msmmmm, вот именно, если на них подавать +12в то жрут они около 20 мА при снятом напряжении питания.
Цитатаmsmmmm ()
но лучше бы в линии АА и ВВ по резистору кОм 20 поставить.
а вот на счёт этого не подумал! Спасибо за нужную мысль! Попробую отпишусь.
Добавлено (30.03.2017, 10:52) --------------------------------------------- msmmmm, наконец то добрался до своей системы поставил как ты говорил резисторы по 20 кОм и отключил ИСТ
Цитатаmsmmmm ()
отключить ток несложно, нужно делитель оставить как есть, а напряжение через диод подавать только на 2,2 кОм стабилизатора тока.
Прошивка к сожалению старая не подходит. Т.к добавлены кнопки+ еще пара плюшек и некоторые ноги сменились. Но структура кода останется прежней. Придется еще еепром изучить для хранеиния констант. Хочу реализовать функцию "тарирования термометра" во время работы, чтоб в коде каждый раз не менять значения и записывать в еепром подогнанную константу Подстроечники стоят для настройки коэф. усиления с термоэлемента.
Из плюшек - отключение датчика КПП от шины питания при выключенном зажигании, отключение резисторного делителя для вольтметра от бортовой сети при выключенном зажигании.
Вспомнил соседа по гаражу и его доисторический Газ69, комплектация приборного щитка заводская, теперь же без бортового компьютера слежения за показаниями приборов ни как нельзя, не поедет машина. Но верю, что должен начаться процес возврата к рациональному варианту, при чём по воле самих водителей
В общем продолжил ковырять прошивку и тут опять проблема. Тут 2 исхода. Один какойто программный косяк, другой я криво транзисторы напаял в анодах индикаторов. (по поводу транзисторов ничего не смогу сделать до выходных)
Вобщем сначала на дисплее горели все "8.", я начал копать, в итоге докапался до того что удалил весь код, оставил только прерывание по таймеру для динамической индикации. Проблема осталась. Потом я стал ковырять во фьюз биты, выставил их такие:
Стало лучше, сегменты стали светиться тусклее, но по прежнему светятся. Зато сейчас начал хоть чето показывать пытаться. В коде написал счетчик от 0 до 9999 чтоб на дисплей транслировал. В итоге 3 первых знака враз считают, трудно различимо на фоне свечения но считают. Т.е. 0111, 0222, 0333... Вот и не знаю в чес косяк. Странно наверно, но я думаю виновато внутреннее тактирование до него все путем было
msmmmm, фотку чего? Дисплея в работе? Кстати тут маленько ЧП, хотел поиграться с частотами тактирования, выставил 0.3-4МГц фьюзами и все, кердык, не читается, не шьется. Придется выходных ждать, попробую кварц на 4МГц впаять, надеюсь получится спасти
Еще решил написать код в лоб перед изменением фьюзов(код в тексте не сохранился, только скрин остался)
На анод первого индикатора вывел высокий уровень, а на сегменты вывести цифру 2 (низкий уровень) из массива. В итоге на всех индикаторах горела цифра 2 зато ярко и не было свечения всех остальных сегментов. Хз как это понимать
В общем победил я индикаторы Написал одни только часы на асинхронном таймере и чето они не работают... На кварце 32кГц какая то пила амплитудой 200~300мВ и частотой 3.3кГц Программно вроде все верно. Может фьюзами накосячил или кондерами на кварце? Как выставлять для асинхронного таймера
Код #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h>
//#define F_CPU 8000000UL // 10 11 12 13 14 //------------------0-----1-----2-----3-----4-----5-----6-----7-----8------9----dp----H-----_------------*-- char SEGMENTE[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0x80, 0x76, 0x40, 0x00, 0x63}; volatile unsigned char segcounter = 0; volatile unsigned int display = 0; volatile unsigned int DP1 = 0x00; volatile unsigned int DP2 = 0x00; volatile unsigned int DP3 = 0x00; volatile unsigned int GEAR = 12; // òèðå â ìàññèâå volatile unsigned int VOLT = 0; volatile unsigned int temp = 0; // âðåìåííàÿ ïåðåìåííàÿ äëÿ õðàíåíèÿ çíà÷åíèÿ àöï char select =0; char FLAG =1; char flagGEAR=1; volatile unsigned int tempGEAR = 0; long int HOUR=0; int MIN=0; long int CLOCK=0;
Первый релиз, так сказать. За качество и монтаж прошу не пинать Когда окончательно доделаю, запилю норм. Сейчас только корпус и торировка термометров остались