Чтобы не было вопросов предыстория: Несколько лет назад меня попросили за денежку разработать конвертор интерфейса, из какого то своего протокола работающего по UART (русские производители пром автоматики просто изобретатели всякой ереси в частности ТБН) в то что поддерживала любая скада, недолго думая изучив и поэксперементировав с устройством было принято решение сделать конвертор в MOD BUS, в итоге родилось очень миниатюрное изделие вида : 485/ModBus->Max 485->ATtiny->Разъем DB9-> ТБН тепло счетчик ну и еще диод кандер и 7805 для питания, все это в виде комка в лезло в тот же разъём того же DB9
Развитие проблемы: Устройство собирается их спецами, я поставляю только лоченые запрограммированные микрухи, дабы мне немного отчисляли денежег и все бы хорошо, но вот ТБН выпустил новые приборы и изменил протокол, и естественно старые стали хоть и работать но с ограничениями... надо как бы сделать новую прошивку, и она сделана и есть новые микрухи, и проблем нет , то есть версия 1 и версия 2, сами понимаете им прошивку не даю ибо ...
Суть проблемы: Недавно подкралась проблема что так же ТБН поступил с остальными приборами и теперь у них зоопарк из 3х версий протокола, и 5 или даже 7 разных (табиц параметров)
короче надо делать целый зоопарк прошивок, и посетила меня мысль что устройство должно прошиваться штатно, с помощью зашифрованной прошивки дабы не стырили ...
Идея:
Придумана следующая идея, создать бутлоадер(не проблема) который бы проверял факт того что просят от него перейти в режим прошивки и получал бы по любому интерфейсу данные , декодировал и шился бы, а если не требуют то стартовал уже имеющуюся прошивку ...
Первая реализация ... так как на счастье у Тиньки осталась свободная лапа к ней бала прикручена микро кнопка, бутлоадер проверял состояние пина и все работает...
Текущая идея: Все как и в первом случае, но добавить к этой кнопке функцию сброса, это позволит: 1-не вытаскивать устройство с места 2-не демонтировать его из сети вообще 3- а придти на нужное место нажать подержать и шить через ту же скаду ибо отправить в поток можно все что угодно ..
но столкнулся с проблемой первая схема была такой :
Логика работы оператора была такая , что нужно на устройстве нажать на кнопку и подержать 10 секунд для входа в режим программирования, защита от случайностей, иначе устройство продолжает работать как ни в чем не бывало...
Бутлоадер просто после сброса требует удержания Pin'а в течении 10 секунд примерно, для подтверждения начинает мигать лампочкой связи (таковая была)
Суть проблемы : Это как бы работает, но как выяснилось во время массового перепрошивания, сброс срабатывает только раз в 30-60 секунд , то есть кондер не разряжается ...
Кто То может подсказать каким образом рассчитать это дело ? чтобы он за 1-5 секунд входил в разряд ... ???
p.s. Много написал , чтобы изложить идею вдруг кому потребуется
p.p.s И да у меня очень хреново с аналоговой частью ... я бы сказал что хромает на обе ноги... ТАк что без кидания тапак, тыкания котенка носом в теорию ... можешь помоги нет пройди мимо, не надо гадить в чужой тазик ...
Я думал, об этом но тогда мне сильно не хватает 4к флэша, надо ставить чип мощнее, по расчетам примерно минимум мегу 64 надо а лучше 128, это удорожание это изменение компактности, по моему а нашёл самое оптимальное решение добавить кнопку и кондер, в SMD реализации размер ничтожен... Да и с таким подходом на универсальность не напосешся памяти ... не имеет смысла ... в основном устройство работает с прибором его период эксплуатации а они обычно живут 3-4 года ... за это время все в корне поменяется ...
...Это как бы работает, но как выяснилось во время массового перепрошивания, сброс срабатывает только раз в 30-60 секунд , то есть кондер не разряжается ... Кто То может подсказать каким образом рассчитать это дело ? чтобы он за 1-5 секунд входил в разряд ... ???
Не очень понял эти строки? Вообще, может будет достаточно увеличить емкость раз в 10-40 и R2 раза в 2-4?
Все понятно что что то надо поменять, но лучше бы поменять сразу обдуманно чем тыкать пачки емкостей и резисторов на угад ... На угад я уже ткнул ...
Лучше сразу, да... и в дамки! Но вот вас и спрашиваю, уточняю, что мне непонятно в вашеи первом посте. Почему нужно несколько раз на сброс нажимать, почему именно 1-5 секунд? Почему не сделать все это программно? Почему не сделать как в ардуинах, там загрузчик работает по сбросу или включению? Может даже без кнопки обойтись, например, отключил - подключил питание и прошивайся? Ну а если нет, так посчитайте постоянную RC цепи, ссылка выше...
Rtmip, Простите вы не акцентировали внимание на том какой момент вам не понятен, а я грешным делом подумал что все ...
Объясняю, как это прочухалось, пришли приборы с партии где могут быть старые и новые ваерсии, человек : 1- шьет первую версию , жмет кнопку итд... 2- девайс труп.. 3- он понимает что не то и хочет зашить следующую версию ... 4- жмет кнопку а она хрен ..... выяснилось что ждать надо около минуты ... вот и задумался чтобы цепь сброса по кнопке отходила секунд через пять после отпускания кнопки ...
все ...
остальное я выше все по моему изложил , почему с питанием не удобно ... проблема именно в генрации импульса на сброс ....
А все остальное действительно в бут лоадере сделано ...
Заголовок сообщения: Re: Аппаратный коротко временный сброс, или одна кнопка на в
Добавлено: Сб янв 09, 2016 12:08:46
Встал на лапы
Зарегистрирован: Чт сен 03, 2015 15:52:10 Сообщений: 109 Откуда: Сибирский федеральный округ
Рейтинг сообщения:0
А нельзя собаку завести на 10 секунд при нажатии кнопки и в ее прерывании проверить состояние кнопки? Если есть то не разрешать повторное прерывание собаки (дальше собака сбрасывает мк и бут по собаке проверяет что мы шьемся), а если кнопка отпущена то разрешаем прерывание (вдруг она сама с цепи сорвется) и отключаем собаку.
_________________ я повелитель электронов! Но иногда появляются электроны бунтари и делают, что им вздумается, например, прокладывают новые пути движения...
"Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного." Альберт Эйнштейн.
DronVolk, Вы видимо один из тех людей кто заваривает чай на октновой горелке а пельмени варит в электро чайнике ... Нет ваш вариант сложнее , да и собака у меня в бегает по конвееру, в случае если чтото недополучилось именно лай собаки перезапускает МК так что её лучше не трогать ...
Заголовок сообщения: Re: Аппаратный коротко временный сброс, или одна кнопка на в
Добавлено: Сб янв 09, 2016 13:48:54
Встал на лапы
Зарегистрирован: Чт сен 03, 2015 15:52:10 Сообщений: 109 Откуда: Сибирский федеральный округ
Рейтинг сообщения:0
Ну пельмени в чайнике не варю, но предположил что все остальное занято и собачка свободна вот и предложил))))
_________________ я повелитель электронов! Но иногда появляются электроны бунтари и делают, что им вздумается, например, прокладывают новые пути движения...
"Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного." Альберт Эйнштейн.
Pnjom-Penb, теперь понял ... пойду на форуме попрограммированию сменю подписи: Builder-кури VCL MS-Кури WinApi НА микро контроллерах - Кури ДатаШит
Я понял ваш намек... специально перечитал но не понял в каком месте мне там есть ответ, как вы видели я дал схему, наверно я её придумал , чего я и не скрывал но у меня не очень хорошо вышло и прошу чтобы мне объяснили где я нагадил а не просто тыкали в лоток...
DronVolk, Да я так пошутил про чайник , мне бы RC-цепь сварганить правильно ...
Я понял ваш намек... специально перечитал но не понял в каком месте мне там есть ответ, ...
Вы уж определитесь - поняли или не поняли, а-то, неясно - с какого места можно продолжать. А кроме того - какой же это намек?! Это прямое указание на то, с чем необходимо было ознакомиться и применить на практике. Если кратко - заряд кондера происходит по экспоненте, показатель которой обратнопропорционален постоянной R*C. То есть, остается только подобрать такое произведение R*C, при котором экспонента дойдет до напряжения, соответствующего логическому уровню, за требуемое время. Вот такой вот весомо-грубо-зримо-толстый намек на тонкие обстоятельства.
Заголовок сообщения: Re: Аппаратный коротко временный сброс, или одна кнопка на в
Добавлено: Сб янв 09, 2016 18:24:00
Встал на лапы
Зарегистрирован: Чт сен 03, 2015 15:52:10 Сообщений: 109 Откуда: Сибирский федеральный округ
Рейтинг сообщения:0
Пока емкость будет разряжаться на входе будет ложный отрицательный уровень.
_________________ я повелитель электронов! Но иногда появляются электроны бунтари и делают, что им вздумается, например, прокладывают новые пути движения...
"Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного." Альберт Эйнштейн.
Пока емкость будет разряжаться на входе будет ложный отрицательный уровень.
Если схема - из первого поста (а другой что-то не видать), то после замыкания кнопки кондер будет заряжаться, а не разряжаться, а после ее размыкания, на ControlPin'е д.б. нулевой потенциал (Vcc - Vcc).
Заголовок сообщения: Re: Аппаратный коротко временный сброс, или одна кнопка на в
Добавлено: Сб янв 09, 2016 21:37:03
Встал на лапы
Зарегистрирован: Чт сен 03, 2015 15:52:10 Сообщений: 109 Откуда: Сибирский федеральный округ
Рейтинг сообщения:0
У резета же подтяжка включена постоянно (ну мне так кажется нужно даташит смотреть на конкретный кристал) так что перед резетом сопротивление будет меньше (примерно 7.5к), а так как на схеме стоят резисторы то подтяжка у входа отключена (зачем то они же нужны?).
_________________ я повелитель электронов! Но иногда появляются электроны бунтари и делают, что им вздумается, например, прокладывают новые пути движения...
"Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного." Альберт Эйнштейн.
Подтяжка ничего не изменила бы - при отпущенной кнопке кондер разряжен, при нажатой - заряжается через R1. По умолчанию она выключена и у ресета (смотрел по тиньке45).
Pnjom-Penb, я понимаю что вы хотите накормить бедняка научив его ловить рыбу а не дав её ему.
Но кот старый и тыкать носом в лоток бессмысленно, можно вас попросить правельный вариант а потом уже объяснение моего косяка ... так как я предпологал что разрядка будет идти через R2
DronVolk, вы туда же ...
можно исправленную схему а после объяснения ...
Насчет подтяжки, я както из за нехватки памяти сменил чип на PIC(что было под рукой) а у него её не было, и я пол дня думал почему девайс тупит , пока не покурил дата шит, дебильная привычка что у Меги всегда есть подтяжка, я больше скажу встречался с чипами у которых своего сброса при подаче питания нет ...
Я думал, об этом но тогда мне сильно не хватает 4к флэша, надо ставить чип мощнее, по расчетам примерно минимум мегу 64 надо а лучше 128, это удорожание это изменение компактности, по моему а нашёл самое оптимальное решение добавить кнопку и кондер, в SMD реализации размер ничтожен... Да и с таким подходом на универсальность не напосешся памяти ... не имеет смысла ... в основном устройство работает с прибором его период эксплуатации а они обычно живут 3-4 года ... за это время все в корне поменяется ...
В таком варианте возможно оптимальным будет смена платформы МК на АРМ (STM32F030C8 - LQFP48, 64 кБ флеша, например, - стоит 1 доллар малым оптом). Все равно это рано или поздно придется делать.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения