#ArDos_with_RADON_3.8.2 - Новый алгоритм счета дозы(теперь предел текущей дозы более чем 3500 рентген), в конфигурации теперь можно задать пороги напряжения батареи в вольтах, оптимизация.
laz - Что-бы понять в чем дело Вам сначала нужно ответить на вопросы которые я Вам писал выше.
sasa1958 - Согласен с ddr2, какое-то нереально низкое потребление у Вас выходит для этого устройства.
ddr2 - Не знаю как вы поняли по схеме что преобразователь запускается раз в секунду, алгоритм работы подкачки я описал выше, подкачка может запустится в любой момент когда напряжение упадет ниже установленного)) Потребление в 3мА не предел, можно уменьшить до 1-1.5мА, для этого нужно выпаять стабилизатор и светодиоды с ProMini. Так-же на потребление влияет настройка преобразователя и компоненты на которых он собран.
mambavamba14.я сказал что около двух месяцев работает 500 ма батареи,ёмкость стоит 0,68х630 вольт ,включается преобразователь через 35-40 минут,ставил такую же ёмкость не слюдяную керамику 7 штук по 0,1х630 вольт держит 10 минут ,а то и меньше похоже ток утечки больше,стоит дип атмега из 10 штук взял с наименьшим потреблением одну,ардуинки жрут больше,СБМ-21 работает от 250-260 вольт ,предел 400 и то дохнет на этом напряжении,а реально ему надо 320 вольт,просто карманный брелок собрал пока в сыром виде ,атмегу взял СМД и напаял на плату на 32 ноги квадратную 25х25 у китайцев взял и под индикатором ,и вторую плату с высоковольтным СМД трансом, все у китайцев выписывают ,от фотовспышки чуть более восьминогой СМД микрухи,и СМД высоковольтных поставил два кондёра 0,1х630 вольт пока работает нормально,транзисторов кучу купил у китайцев не очень дорого 3400 вот их и ставлю,ставил 0100,060 работают но меньше напряжения качают похоже сопротивление перехода больше в открытом состоянии,и везде керамику ставлю на 100 микрофарад СМД у китайцев купил вот и ставлю.Короче лучше идёт СБМ-10 из мелких у него повыше чувствительность чем у 21,пробовал датчики делать на основе фотодиодов ,работают также примерно как СБМ-21 но их надо больше ,если дешёвые то штук 100 миниум ,делать направленную панель и приляпывать кристалл натрия ,вообщем дело очень хлопотное,лучше всего идёт СОВЕТСКИЙ фотодиод от электроники видеомагнитофона,но его надо малость КАСТРИРОВАТЬ, цены на него что-то дороже чем на СБТ-10,короче эту всю байду надо помещать в экран из графита как катушку металлоискателя,чтобы не было замыкания и помехи отшивались
Нечем пока замерить,цифровые приборы плохие купил,а стрелочник китайский поэтому точно замерить нечем ,но реально он должен потреблять без индикатора ,звука,и светодиода не более 0,55-0,6 ма ,а китаец показывает около 1 ма завышает здорово,короче надо дорабатывать стрелочный прибор,я их раньше дорабатывал,но это давно ,покупать надо старый советский стрелочник НА РАСТЯЖКАХ ПЛАТИНОВЫХ цены на них здорово подскочили,а для цифровика надо тоже шунты ,нету у меня сейчас этого.Ставил гантельку и транс разница большая ,потребление падает в несколько раз если используешь трансформатор,только паять его плохо,феном или печкой лучше,либо игольчатым паяльником.Похоже дело в феррите ,короче у гантельки феррит стоит дешёвый ,он перенасыщается и ему пипец приходит,я это уже видел на аппаратуре связи уплотнения,поэтому чтобы меньше жра преобразователь.надо хороший транс и хороший полевик ,китайцы ещё лучше продают из серии 34хх ,но цена у не демократичная.Цифровым прибором мерить бестолку ,он постоянно бесится и дорабатывать как.
Завтра будет время выложу фотку транса ,кондёров на плате,у меня одна плата рабочая я на ней тестирую,а вторая плата маленькая в корпусе 95х20х55 сейчас .надо из коробки вытащить а то я всё сложил барахло и посмотрю сейчас в компе может фото осталось,я всё тестирую на голой атмеге328,со счётчиком СБМ-21 хочу уменьшить размер коробочки до 45х65,есть у меня Минский маленький дозиметр на ПИКЕ ДКГ-АТ2503 данные в комп считываются с инфракрасного порта он у меня поверен вот я им сравниваю датчики и показания СБМ-21 РАЗМЕР 45Х12Х80 3,6 ВОЛЬТА ПИТАНИЯ выложу фото
Да забыл сказать плата здорова 125 х 75 поэтому и ёмкость большую ставил ,для замера сколько преобразователь качает припаивал ёмкость 20 мкф на 450 вольт ,минут 30 ждал пока хорошо зарядится ,как в вспышке советской,а потом мерил 10 мегомным китайцем MF47F, короче стрелочник дрянь ,бывает стрелка тормозит,ни разу не роня и не падал,на барахолке ищите с растяжкой,либо от маяка 231 ищите стрелочник и можно работать с высоким,чтобы чувствительность была 10-50 мка
ёмкость стоит 0,68х630 вольт ,включается преобразователь через 35-40 минут,ставил такую же ёмкость не слюдяную керамику 7 штук по 0,1х630 вольт держит 10 минут
Делитель у меня был другой 5 геком и 10 мегом брал с сайта РХБ и сопротивление стеклянное 5 геком 3 см в длину и 3 мм в диаметре 1978 года выпуска срезал с пожарки старой это равно 100мом и 220 ком делителю ,да в принципе надо первый резистор дип а остальные смд и не надо резать прорези
Уважаемый ddr2 я не ПРОГРАММЕР,но тут чтобы схема жрала меньше надо выключать режим BODEN,выключать два компаратора ,а вместо них прицеплять где идёт замер напряжения компаратор на AD8541 или ему подобном hi-fi .на формирователь импульсов ставить таймер 7555 изменять схему датчика СБМ-20 или другие какие стоят,порты в режиме спячки должны подтянуты,а это уже будет другая схема
Компаратор один, но он все равно не используется. Программно всё что можно выключить уже выключено. Проблема ещё в том что что ацп опрашивается 10 раз для усреднения и это занимает более 1мс(тянется ещё с оригинальной прошивки), хотя для 8 бит результата при максимальном пределителе это лишнее я считаю. У меня щас есть набросок с одним опросом на один импульс, но надо тестить. Если есть желание могу скинуть для проверки.
mambavamba14 ,оказывается не выключишь просто так,есть новая 32 битная mega32pb цена у китаёза неадекватная 20 долларов,там выключаются биты bods и bodse программно ,она совместима с мегами 328 ,а вот если на неё пишут то тогда это уже другая программа,у старых мег 328 якобы выключат режим потребления на микро,на землю то есть общий провод tx включают ,а програмно это похоже не сделаешь
Не знаю что за такая mega32pb, даже гугл не знает... Если тот камень об котором вы говорите 32-х битный, об совместимости с 328 мегой не может быть и речи.
В 328 меге бод можно отключить программно на пару тактов, чем мы благополучно и пользуемся перед уходом в сон.
Я читал где то что не выключается в сон полностью мега поэтому и кушает ,пишу с мобилы.А на счёт этой Меги тоже тоже читал на АлиЭкспресс,может китайцы сляпали новый процессор ,хотя у них все копии
sunjob - камушек на самом деле очень интересный, но регистры от меги у него отличаются, отсюда и проблемы..)
sasa1958 - не знаю где вы такое вычитали, но в даташите на камень это всё хорошо описано, пункт 10.11.2)) Можете проверить потребление в софтовом выключении, будет потребление менее 1мка. Для меньшего потребления нужно более энергоэффективное ядро))
Вот флюбек простой преобразователь ,два резистора которые подходят к затвору это 11 и 9 не должны превышать в сумме 82 ома иначе не будет короткого импульса,ёмкость конденсатора 10 если частота преоразования до 10 кгц ,то до 0.3 мкф если выше то 0.1мкф надо высчитывать чтобы он успел зарядиться ,и похоже надо чтобы он был полистироловый,4,7 это стабилитроны не мене 28 вольт.Пишут что данная схема работает очень хорошо и мощу качает ,как два транзистора
ddr2 - А зачем? Прерывания изменения состояние пина ясности в каком состоянии сейчас пин и какой именно это пин не дадут, так же придется проверять регистр портов.
#ArDos_with_RADON_3.8.3 - Уменьшение количества опросов ацп преобразователя, подстройка импульса в отладке теперь указывается в мкс, исправление графиков, исправление предупреждений, оптимизация.
ddr2 - А зачем? Прерывания изменения состояние пина ясности в каком состоянии сейчас пин и какой именно это пин не дадут, так же придется проверять регистр портов.
Тогда зачем вобще обработка прерываний если лучше проверять в главном цикле?
прерывание это как лазер для хЕрургии глаза!!! вещь всенеобходимая в хозяйстве, не смотря на то, что и пилки тоже нужны :о)
по "сработке прерывания" процессор бросает все дела, кот. был в данном случае занят (типа процедура loop()) и принимается за обработку прерывания, т.е. дел, кот. вы не можете отложить (у каждого прерывания свой обработчик)... как в жизни, режете вы лук на кухне, сопли/слюни, все вокруг счастливы... и тут вы слышите что ваш ребенок подает сигнал, типа, пора... вы бросаете все дела и бежите осломя голову ... а потом возвращаетесь обратно к луку :о)
ну а дальше - читать, писать, отлаживать :о) почитать про прерывания, это буквально 1 статья для поверхностного понимания, ну и доп. 2-5 статей + отладочные скетчики для дотошного понимания.
это самое лучшее: читаем статьи, смотрим код, правим его, докапываемся до того как это всЁ там там работает...
ddr2 в пиках , там как раз в основном используют прерывания,а в атмегах есть опорное напряжение и процессор сравнивает .что у тебя на порту присутствует 0 или 1 или процессор бесится если там не должно быть ничего,в ардуино ещё зависит от библиотек в них прописаны все действия устройства и если библиотека кривая ,то как раз мы получает,то что мы получаем ,мне понравилось как сказал,КОТ BOB
АРДУИНО это ОПЕРАЦИОННАЯ СИСТЕМА/гибрид компилятора с интерпретатором.
то в начальной конфигурации автоматически проставляются соответствующие прописи (не факт, что в самом начале программы в разделе "холодной конфигурации")
Как данный момент реализован - надо изучать саму IDE и дополнительные файлы - конфигураторы - я не спец в Си до такого уровня -
и в окошке СООБЩЕНИЯ КОМПИЛЯТОРА -> ВСЕ.Потом запустите компиляцию рабочего скотча в десяток строчек и полюбуйтесь тем, что пробегает
быстрехонько в нижнем окошке.Как беленькими, так и красненькими строчками (можно позднее просмотреть используя движок прокрутки того окна).:wink:
Авторами,разработчиками IDE - пользоваться ими весьма удобно, а как оные созданы - скрыто от рядового пользователя - да вобщем-то и особо того
пользователя этот вопрос и не интересует, так же как и минимальный набор стандартно подключаемых *.h файлов.
Так что или пользуемся тем, что предоставлено (и весьма солидно/достаточно) или переходим на работу с "чистыми" компиляторами,или платите деньги ,либо дают 4 килобайта бесплатно,а реально только тини 2313
ddr2 - sunjob очень хорошо описал что к чему)) Есть вещи на которые нужно прерваться в любом случае(например импульс от счетчика или генерация сигнала для пищалки), остальное же лучше делать вне прерываний и не обязательно именно в главном цикле.
Для кнопок же прерывания совсем не обязательны, если мы хотим реализовать программную давку дребезга то нам в любом случае придется считывать текущее состояние пина, тк прерывание порта говорит нам только о том что именно в этом порту какой-то из пинов(разрешенных) сменил свое состояние.
mambavamba14 ,класичесски дребезг подавляется RC цепочками и если они есть в контроллере то вы програмно выставите,либо дополнительный код,а если память маленькая и физически нет это старая серия микроэвм вот тогда приходится делать подпорки и разные цепочки что и делали раньше
sasa1958 - Это все понятно, мы сейчас же вроде говорим про конкретный камень в конкретной реализации, там и там ничего подобного нету, так что остается только программно))
sasa1958 - Зависит от предела цикла накачки(CYCLE_OVERFLOW) и интенсивности излучения(количества импульсов со счетчика). По умолчанию CYCLE_OVERFLOW = 10, те на ХХ без подключенного счетчика может быть максимум +-570 имп/с. Практически каждый зарегистрированный импульс от счетчика добавляет к пределу CYCLE_OVERFLOW(10 имп).
по "сработке прерывания" процессор бросает все дела, кот. был в данном случае занят (типа процедура loop()) и принимается за обработку прерывания.
Это всё просто и понятно. НО как я понимаю есть приоритет прерываний, также есть разрешение на вложенные прерывания. То есть даже если идёт процесс обработки прерывания нажатия кнопки, другие прерывания не будут заблокированы. Да есть короткая серия инструкций до разрешения, но какая вероятность что в эту серию попадёт прерывание от датчика. Очень небольшая.
mambavamba14 пишет:
Есть вещи на которые нужно прерваться в любом случае(например импульс от счетчика или генерация сигнала для пищалки), остальное же лучше делать вне прерываний и не обязательно именно в главном цикле. Для кнопок же прерывания совсем не обязательны, если мы хотим реализовать программную давку дребезга то нам в любом случае придется считывать текущее состояние пина, тк прерывание порта говорит нам только о том что именно в этом порту какой-то из пинов(разрешенных) сменил свое состояние.
Вы видимо имели ввиду, что при дребезге процессор производит много лишних вызовов обработчика прерываний, да это конечно аргумент. Кстати, как в Ардосе включается режим сна и есть ли он вообще?
sasa1958 пишет:
ddr2 в пиках , там как раз в основном используют прерывания,а в атмегах есть опорное напряжение и процессор сравнивает .что у тебя на порту присутствует 0 или 1 или процессор бесится если там не должно быть ничего
Не понимаю связи между прерываниями и опорным напряжением. С PIC не работал, но видимо там работа с преваниями ведётся чтобы снизить энергопотребление.
ddr2 - Куча вызовов при дребезге это само собой)) Я про то что проверять состояние пина придётся в любом случае, и обработка прерывания не даст нам никаких преимуществ.
Разрешать прерывания при обработке прерывания нельзя бездумно, так можно стек сорвать запросто...
В моей прошивке в любом из циклов (подпрограмма это или ожидание/оповещение) обработка данных не останавливается. Сон есть, в настройках пункты "сон" и "подсветка".
В моей прошивке в любом из циклов (подпрограмма это или ожидание/оповещение) обработка данных не останавливается. Сон есть, в настройках пункты "сон" и "подсветка".
На сколько эффективен сон при постоянной проверке состояния портов?
ddr2 - смотря что считать эффективным, для данной данного камня вполне себе. Больше всего отжирает проверка и накачка преобразователя... Обработка данных у нас происходит порционно каждые +-17мс.
Я так полагаю что вы ведёте к тому, что если мы не будем обрабатывать постоянно кнопки то меньше будет потреблять, отчасти это так, но это всё граши на фоне того сколько нам нужно обрабатывать данных (даже во сне) и сколько это занимает процессорного времени, а соответственно и энергии.
ddr2 - Раньше обработка в циклах подпрограмм была без какой либо привязки к тику таймера, те если росло количество прерываний то и количество обработок флагов/кнопок тоже росло, хотя это бесполезная трата процессорного времени. Не то что-бы это сильно повлияет на работу устройства, просто так будет правильнее.
ddr2 - Не совсем понял про какой таймер на 1кГц Вы говорите, если Вы про миллис, то его нет, как всех ардуино функций... В прошивке используется таймер ватчдог как задающий временные интервалы. Настроен он на минимальный пределитель(1), те примерно на 17мс. И при каждом переполнении этого таймера происходит обработка тех или иных данных.
За "клик" считается пройденное время от нажатия до отпускания кнопки больше гистерезиса(по умолчанию 2 тика, тобишь 34мс).
За "удержание" считается время пройденное с момента нажатие кнопки и её удержания более указанного(по умолчанию 30 тиков, тобишь 510мс).
mambavamba14, понятно спасибо, то есть у вас вочдог используется как таймер, а чём лучше использовать вочдог, а не таймер1, если как я понял, вотчдог не производит перезагрузку системы в случае зависания ?
ddr2 - Потреблением, ватчдог кушает +-10мка(если не просыпаться) и при этом позволяет погружаться в самый глубокий сон(POWERDOWN). Таймер 1 не работает в режимах сна кроме IDLE. Таймер 2 может работать например в POWERSAVE, но при тактирование от 8МГц кварца и питании от акб будет кушать примерно 400мка при учете что мы даже не будем просыпаться...
Сейчас по последним тестам камень во сне кушает примерно 400мка с учетом что мы постоянно обрабатываем данные и тактируемся от 16МГц при том же питании от акб.
#ArDos_with_RADON_3.8.2 - Новый алгоритм счета дозы(теперь предел текущей дозы более чем 3500 рентген), в конфигурации теперь можно задать пороги напряжения батареи в вольтах, оптимизация.
laz - Что-бы понять в чем дело Вам сначала нужно ответить на вопросы которые я Вам писал выше.
sasa1958 - Согласен с ddr2, какое-то нереально низкое потребление у Вас выходит для этого устройства.
ddr2 - Не знаю как вы поняли по схеме что преобразователь запускается раз в секунду, алгоритм работы подкачки я описал выше, подкачка может запустится в любой момент когда напряжение упадет ниже установленного)) Потребление в 3мА не предел, можно уменьшить до 1-1.5мА, для этого нужно выпаять стабилизатор и светодиоды с ProMini. Так-же на потребление влияет настройка преобразователя и компоненты на которых он собран.
mambavamba14.я сказал что около двух месяцев работает 500 ма батареи,ёмкость стоит 0,68х630 вольт ,включается преобразователь через 35-40 минут,ставил такую же ёмкость не слюдяную керамику 7 штук по 0,1х630 вольт держит 10 минут ,а то и меньше похоже ток утечки больше,стоит дип атмега из 10 штук взял с наименьшим потреблением одну,ардуинки жрут больше,СБМ-21 работает от 250-260 вольт ,предел 400 и то дохнет на этом напряжении,а реально ему надо 320 вольт,просто карманный брелок собрал пока в сыром виде ,атмегу взял СМД и напаял на плату на 32 ноги квадратную 25х25 у китайцев взял и под индикатором ,и вторую плату с высоковольтным СМД трансом, все у китайцев выписывают ,от фотовспышки чуть более восьминогой СМД микрухи,и СМД высоковольтных поставил два кондёра 0,1х630 вольт пока работает нормально,транзисторов кучу купил у китайцев не очень дорого 3400 вот их и ставлю,ставил 0100,060 работают но меньше напряжения качают похоже сопротивление перехода больше в открытом состоянии,и везде керамику ставлю на 100 микрофарад СМД у китайцев купил вот и ставлю.Короче лучше идёт СБМ-10 из мелких у него повыше чувствительность чем у 21,пробовал датчики делать на основе фотодиодов ,работают также примерно как СБМ-21 но их надо больше ,если дешёвые то штук 100 миниум ,делать направленную панель и приляпывать кристалл натрия ,вообщем дело очень хлопотное,лучше всего идёт СОВЕТСКИЙ фотодиод от электроники видеомагнитофона,но его надо малость КАСТРИРОВАТЬ, цены на него что-то дороже чем на СБТ-10,короче эту всю байду надо помещать в экран из графита как катушку металлоискателя,чтобы не было замыкания и помехи отшивались
sasa1958 - А замеряли сколько потребляет во сне? Интересно все же))
to sasa1958
> ёмкость стоит 0,68х630 вольт
фотку можете сделать?
Нечем пока замерить,цифровые приборы плохие купил,а стрелочник китайский поэтому точно замерить нечем ,но реально он должен потреблять без индикатора ,звука,и светодиода не более 0,55-0,6 ма ,а китаец показывает около 1 ма завышает здорово,короче надо дорабатывать стрелочный прибор,я их раньше дорабатывал,но это давно ,покупать надо старый советский стрелочник НА РАСТЯЖКАХ ПЛАТИНОВЫХ цены на них здорово подскочили,а для цифровика надо тоже шунты ,нету у меня сейчас этого.Ставил гантельку и транс разница большая ,потребление падает в несколько раз если используешь трансформатор,только паять его плохо,феном или печкой лучше,либо игольчатым паяльником.Похоже дело в феррите ,короче у гантельки феррит стоит дешёвый ,он перенасыщается и ему пипец приходит,я это уже видел на аппаратуре связи уплотнения,поэтому чтобы меньше жра преобразователь.надо хороший транс и хороший полевик ,китайцы ещё лучше продают из серии 34хх ,но цена у не демократичная.Цифровым прибором мерить бестолку ,он постоянно бесится и дорабатывать как.
Завтра будет время выложу фотку транса ,кондёров на плате,у меня одна плата рабочая я на ней тестирую,а вторая плата маленькая в корпусе 95х20х55 сейчас .надо из коробки вытащить а то я всё сложил барахло и посмотрю сейчас в компе может фото осталось,я всё тестирую на голой атмеге328,со счётчиком СБМ-21 хочу уменьшить размер коробочки до 45х65,есть у меня Минский маленький дозиметр на ПИКЕ ДКГ-АТ2503 данные в комп считываются с инфракрасного порта он у меня поверен вот я им сравниваю датчики и показания СБМ-21 РАЗМЕР 45Х12Х80 3,6 ВОЛЬТА ПИТАНИЯ выложу фото
Да забыл сказать плата здорова 125 х 75 поэтому и ёмкость большую ставил ,для замера сколько преобразователь качает припаивал ёмкость 20 мкф на 450 вольт ,минут 30 ждал пока хорошо зарядится ,как в вспышке советской,а потом мерил 10 мегомным китайцем MF47F, короче стрелочник дрянь ,бывает стрелка тормозит,ни разу не роня и не падал,на барахолке ищите с растяжкой,либо от маяка 231 ищите стрелочник и можно работать с высоким,чтобы чувствительность была 10-50 мка
Вот моя отладочная плата АРДОС и рядом СМД высоковольтный трансформатор тоже сделан для отладки 4 вывода
ёмкость стоит 0,68х630 вольт ,включается преобразователь через 35-40 минут,ставил такую же ёмкость не слюдяную керамику 7 штук по 0,1х630 вольт держит 10 минут
Делитель у меня был другой 5 геком и 10 мегом брал с сайта РХБ и сопротивление стеклянное 5 геком 3 см в длину и 3 мм в диаметре 1978 года выпуска срезал с пожарки старой это равно 100мом и 220 ком делителю ,да в принципе надо первый резистор дип а остальные смд и не надо резать прорези
Уважаемый ddr2 я не ПРОГРАММЕР,но тут чтобы схема жрала меньше надо выключать режим BODEN,выключать два компаратора ,а вместо них прицеплять где идёт замер напряжения компаратор на AD8541 или ему подобном hi-fi .на формирователь импульсов ставить таймер 7555 изменять схему датчика СБМ-20 или другие какие стоят,порты в режиме спячки должны подтянуты,а это уже будет другая схема
С кодом бывает проблем больше чем со схемой. Разве в Atmega328 два компаратора? Я в документации нашёл только один.
Компаратор один, но он все равно не используется. Программно всё что можно выключить уже выключено. Проблема ещё в том что что ацп опрашивается 10 раз для усреднения и это занимает более 1мс(тянется ещё с оригинальной прошивки), хотя для 8 бит результата при максимальном пределителе это лишнее я считаю. У меня щас есть набросок с одним опросом на один импульс, но надо тестить. Если есть желание могу скинуть для проверки.
mambavamba14 ,оказывается не выключишь просто так,есть новая 32 битная mega32pb цена у китаёза неадекватная 20 долларов,там выключаются биты bods и bodse программно ,она совместима с мегами 328 ,а вот если на неё пишут то тогда это уже другая программа,у старых мег 328 якобы выключат режим потребления на микро,на землю то есть общий провод tx включают ,а програмно это похоже не сделаешь
Не знаю что за такая mega32pb, даже гугл не знает... Если тот камень об котором вы говорите 32-х битный, об совместимости с 328 мегой не может быть и речи.
В 328 меге бод можно отключить программно на пару тактов, чем мы благополучно и пользуемся перед уходом в сон.
del..
у китаЦев есть аналог - LGT8F328D, но он так-же 8-битный (с некоторыми тараканами и особенностями)
Я читал где то что не выключается в сон полностью мега поэтому и кушает ,пишу с мобилы.А на счёт этой Меги тоже тоже читал на АлиЭкспресс,может китайцы сляпали новый процессор ,хотя у них все копии
sunjob - камушек на самом деле очень интересный, но регистры от меги у него отличаются, отсюда и проблемы..)
sasa1958 - не знаю где вы такое вычитали, но в даташите на камень это всё хорошо описано, пункт 10.11.2)) Можете проверить потребление в софтовом выключении, будет потребление менее 1мка. Для меньшего потребления нужно более энергоэффективное ядро))
Вот и народ бился чтобы мега кушала менее 250мка,но что то похоже пошло не так
таки я в курсе, поэтому и написал про плюшки и тараканов ... :о)
Вот флюбек простой преобразователь ,два резистора которые подходят к затвору это 11 и 9 не должны превышать в сумме 82 ома иначе не будет короткого импульса,ёмкость конденсатора 10 если частота преоразования до 10 кгц ,то до 0.3 мкф если выше то 0.1мкф надо высчитывать чтобы он успел зарядиться ,и похоже надо чтобы он был полистироловый,4,7 это стабилитроны не мене 28 вольт.Пишут что данная схема работает очень хорошо и мощу качает ,как два транзистора
Могли бы пояснить, Почему в Ардосе для кнопок применяется проверка состояния пинов, а не прерывания на них?
ddr2 - А зачем? Прерывания изменения состояние пина ясности в каком состоянии сейчас пин и какой именно это пин не дадут, так же придется проверять регистр портов.
#ArDos_with_RADON_3.8.3 - Уменьшение количества опросов ацп преобразователя, подстройка импульса в отладке теперь указывается в мкс, исправление графиков, исправление предупреждений, оптимизация.
прерывание это как лазер для хЕрургии глаза!!! вещь всенеобходимая в хозяйстве, не смотря на то, что и пилки тоже нужны :о)
по "сработке прерывания" процессор бросает все дела, кот. был в данном случае занят (типа процедура loop()) и принимается за обработку прерывания, т.е. дел, кот. вы не можете отложить (у каждого прерывания свой обработчик)... как в жизни, режете вы лук на кухне, сопли/слюни, все вокруг счастливы... и тут вы слышите что ваш ребенок подает сигнал, типа, пора... вы бросаете все дела и бежите осломя голову ... а потом возвращаетесь обратно к луку :о)
ну а дальше - читать, писать, отлаживать :о) почитать про прерывания, это буквально 1 статья для поверхностного понимания, ну и доп. 2-5 статей + отладочные скетчики для дотошного понимания.
это самое лучшее: читаем статьи, смотрим код, правим его, докапываемся до того как это всЁ там там работает...
все с опытом (без стеба) :о)
ddr2 в пиках , там как раз в основном используют прерывания,а в атмегах есть опорное напряжение и процессор сравнивает .что у тебя на порту присутствует 0 или 1 или процессор бесится если там не должно быть ничего,в ардуино ещё зависит от библиотек в них прописаны все действия устройства и если библиотека кривая ,то как раз мы получает,то что мы получаем ,мне понравилось как сказал,КОТ BOB
ddr2 - sunjob очень хорошо описал что к чему)) Есть вещи на которые нужно прерваться в любом случае(например импульс от счетчика или генерация сигнала для пищалки), остальное же лучше делать вне прерываний и не обязательно именно в главном цикле.
Для кнопок же прерывания совсем не обязательны, если мы хотим реализовать программную давку дребезга то нам в любом случае придется считывать текущее состояние пина, тк прерывание порта говорит нам только о том что именно в этом порту какой-то из пинов(разрешенных) сменил свое состояние.
mambavamba14 ,класичесски дребезг подавляется RC цепочками и если они есть в контроллере то вы програмно выставите,либо дополнительный код,а если память маленькая и физически нет это старая серия микроэвм вот тогда приходится делать подпорки и разные цепочки что и делали раньше
sasa1958 - Это все понятно, мы сейчас же вроде говорим про конкретный камень в конкретной реализации, там и там ничего подобного нету, так что остается только программно))
mambavamba14 хочу спросить у ВАС какова частота выдачи сигнала максимальная в АРДОСЕ на выводе преобразователя перед затвором транзистора 6344
sasa1958 - Зависит от предела цикла накачки(CYCLE_OVERFLOW) и интенсивности излучения(количества импульсов со счетчика). По умолчанию CYCLE_OVERFLOW = 10, те на ХХ без подключенного счетчика может быть максимум +-570 имп/с. Практически каждый зарегистрированный импульс от счетчика добавляет к пределу CYCLE_OVERFLOW(10 имп).
спасибо ,буду рассчитывать ёмкость конденсатора,чтобы он успел зарядиться и разрядиться и похоже транзистор надо будет брать высоковольтный
ddr2 - Куча вызовов при дребезге это само собой)) Я про то что проверять состояние пина придётся в любом случае, и обработка прерывания не даст нам никаких преимуществ.
Разрешать прерывания при обработке прерывания нельзя бездумно, так можно стек сорвать запросто...
В моей прошивке в любом из циклов (подпрограмма это или ожидание/оповещение) обработка данных не останавливается. Сон есть, в настройках пункты "сон" и "подсветка".
ddr2 - смотря что считать эффективным, для данной данного камня вполне себе. Больше всего отжирает проверка и накачка преобразователя... Обработка данных у нас происходит порционно каждые +-17мс.
Я так полагаю что вы ведёте к тому, что если мы не будем обрабатывать постоянно кнопки то меньше будет потреблять, отчасти это так, но это всё граши на фоне того сколько нам нужно обрабатывать данных (даже во сне) и сколько это занимает процессорного времени, а соответственно и энергии.
Понятно спасибо.
#ArDos_with_RADON_3.8.4 - Оптимизация обработки данных(теперь все данные обрабатываются только по тикам таймера).
Так-же хочу поздравить всех с наступившим 2022 годом!!!
Так-же хочу поздравить всех с наступившим 2022 годом!!!
Спасибо. Взаимно.
теперь все данные обрабатываются только по тикам таймера.
ddr2 - Раньше обработка в циклах подпрограмм была без какой либо привязки к тику таймера, те если росло количество прерываний то и количество обработок флагов/кнопок тоже росло, хотя это бесполезная трата процессорного времени. Не то что-бы это сильно повлияет на работу устройства, просто так будет правильнее.
Понятно, и как часто ("по тикам таймера") сейчас обрабатываются данные?
ddr2 - Как и обработка основных данных, раз в +-17мс.
ddr2 - Не совсем понял про какой таймер на 1кГц Вы говорите, если Вы про миллис, то его нет, как всех ардуино функций... В прошивке используется таймер ватчдог как задающий временные интервалы. Настроен он на минимальный пределитель(1), те примерно на 17мс. И при каждом переполнении этого таймера происходит обработка тех или иных данных.
За "клик" считается пройденное время от нажатия до отпускания кнопки больше гистерезиса(по умолчанию 2 тика, тобишь 34мс).
За "удержание" считается время пройденное с момента нажатие кнопки и её удержания более указанного(по умолчанию 30 тиков, тобишь 510мс).
mambavamba14, понятно спасибо, то есть у вас вочдог используется как таймер, а чём лучше использовать вочдог, а не таймер1, если как я понял, вотчдог не производит перезагрузку системы в случае зависания ?
ddr2 - Потреблением, ватчдог кушает +-10мка(если не просыпаться) и при этом позволяет погружаться в самый глубокий сон(POWERDOWN). Таймер 1 не работает в режимах сна кроме IDLE. Таймер 2 может работать например в POWERSAVE, но при тактирование от 8МГц кварца и питании от акб будет кушать примерно 400мка при учете что мы даже не будем просыпаться...
Сейчас по последним тестам камень во сне кушает примерно 400мка с учетом что мы постоянно обрабатываем данные и тактируемся от 16МГц при том же питании от акб.