Форум myROBOT.ru » Шаг за шагом » Программирование микроконтроллеров » Запрет прошивки МК.

Страниц (2): [1] 2 »
 

1. nestandart - 05 Ноября, 2013 - 16:46:38 - перейти к сообщению
Всем доброго дня.

Для одного проекта (не суть какого) требутся полноценная презагрузка МК.
Раз в сутки.

Дело в общем то простое. Оптопара между резетом и землей. Открывается оптопара с ноги МК.

Но , где то на форуме читал что это не совсем безопасно в плане автозагрузчика. Есть мнение что бутлоудер, в момент перезагрузки , может поймать случайную наводку. Ну а дальше может быть все что угодно.

Логично было бы прижать Rx к земле или +5. Чтобы быть увереным что МК ничего не сможет принять по Rx.

Вопрос в том куда и как лучше прижать Rx ? Какой резистор будет оптимален (10КОм ?) ?
2. Predator - 05 Ноября, 2013 - 21:12:42 - перейти к сообщению
если RX уартовая нога контроллера, то 0- соответствует отсутствию сигнала, а начинается сигнал со стартового бита в 1, стало-быть тянуть к земле, если это не индастриал железка в силовом шкафу, то 10 кОм достаточно, иначе я-бы 1 кОм повесил.
3. nestandart - 05 Ноября, 2013 - 21:19:53 - перейти к сообщению
Это обычный ардуиновский атмега168. Да, вы правы ,это UART.

Но ведь получается что это простая подтяжка. И первый же бит , по идее должен проскочить. Или я ошибаюсь ?
4. Predator - 06 Ноября, 2013 - 20:40:44 - перейти к сообщению
да, бит должен проскочить, а наводка нет. Если там буфер к 232 интерфейсу стоит (или 422 или ...), то тянуть надо его к соответствующему напряжению, а если там что-то биты шлет, то надо полюбому какой нибудь ключик городить.
5. nestandart - 06 Ноября, 2013 - 21:01:23 - перейти к сообщению
Биты ничто не шлет. Пин болтается в воздухе. Боюсь как бы не поймал чего.
6. Predator - 07 Ноября, 2013 - 21:20:20 - перейти к сообщению
если вообще никогда никто ничего не шлет (в том числе в рабочем режиме), то можно на землю сажать намертво и не заморачиваться.
тут главное, чтобы наведенная ЭДС не превысила полпитания (если не ошибаюсь), для этого ее (ЭДС) проще всего на землю слить.
7. nestandart - 07 Ноября, 2013 - 21:22:02 - перейти к сообщению
Цитата:
если вообще никогда никто ничего не шлет (в том числе в рабочем режиме)


Именно так. Какой номинал посоветуете ?
8. Predator - 07 Ноября, 2013 - 22:03:19 - перейти к сообщению
если никто ничего не шлет, то на самую землю КЗ-ой сажать и не заморачиваться, подтягивать резисторами надо - чтобы кто-нибудь своим выходом сигнал перетянул.
9. cjA - 09 Ноября, 2013 - 20:44:56 - перейти к сообщению
вернемся к нашим вопросам. RX- его имярек, который им управляет, - как называется?
10. nestandart - 09 Ноября, 2013 - 20:47:00 - перейти к сообщению
Цитата:
RX- его имярек, который им управляет, - как называется?


Не понял.
(Добавление)
Прошивка МК идет через UART (пин Rx). Шью через ft232 USB-UART преобразователь.
11. Петр Киселев - 09 Ноября, 2013 - 21:09:33 - перейти к сообщению
nestandart, вашу "случайную наводку" можно рассматривать как вирус. Мне кажется просто надо сделать так, чтобы каждый раз просчитывалась контрольная сумма вашего кода и сравнивалась с правильной. При совпадении - код запускался, в случае несовпадения, происходила бы перезагрузка.
12. cjA - 10 Ноября, 2013 - 04:02:49 - перейти к сообщению
А вам то чиво? скучно? Я шью пртоссом. Подделки протоса под что-то еще- не пошли. Шью старым провереным протоссомм.
(Добавление)
Петр КиселевВот вы и сдедайьДте. В GNAT у меня эта проверка стоит с 1997 года.
13. Predator - 10 Ноября, 2013 - 12:30:43 - перейти к сообщению
не, тут дело в том, что еще до возможности проверки чексумм и прочего, когда контроллер только загружается-инициализируется, на ноге RX может навестись некий (совершенно неадекватный) сигнал, который контроллер воспримет как сигнал загрузки с UART (может даже в режиме отладки... надо датащит читать), а дальше естественно не загрузится и повиснет до передергивания питания (строжевой собака-то тоже пока не работает).
14. nestandart - 10 Ноября, 2013 - 12:42:59 - перейти к сообщению
Цитата:
когда контроллер только загружается-инициализируется, на ноге RX может навестись некий (совершенно неадекватный) сигнал, который контроллер воспримет как сигнал загрузки с UART (может даже в режиме отладки... надо датащит читать), а дальше естественно не загрузится и повиснет до передергивания питания


В точку.
Но что то не хочу я коротить Rx на землю. Опасаюсь КЗ есть КЗ.
15. Predator - 10 Ноября, 2013 - 16:39:57 - перейти к сообщению
скажем так:
у выхода 2 транзистора поочереди открываются: к питанию - 1, к земле -0, у входа это затвор того самого транзистора, ну или на крайний случай вход операционника (грубоватая аналогия, но типа того) т.е. бесконечно большое сопротивление.
Таким образом: если посадить ногу на землю, то вход будет "пожизненно" видеть 0, выход при переключении в 1 отгорит.
если опасаетесь - посадите на землю через 1 кОм - все наведенные ЭДС стекут, и даже выход не отшибёт.