Использование пина RESET в качестве ввода вывода

Обсуждаем контроллеры компании Atmel.
Ответить
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт сен 10, 2019 16:18:33

Сообщение shrus43 »

Здравствуйте знатоки,подскажите ребят как сделать его таковым и какие посдедствия будут,мк атмега 328,нарисовал плату в попыхах орентировался по протэусу :facepalm: и заказал изготовление платы,лажанул жестко ребят
Реклама
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

Делается он переключением соответствующего фьюз бита (RSTDSBL).
Последствия - прошивать можно будет только HV программатором или после сброса фьюз-доктором.
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Реклама
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт сен 10, 2019 16:18:33

Сообщение shrus43 »

Печаль у меня ток usbasp,чтож благодарю за ответ

Добавлено after 17 minutes 30 seconds:
Кста в какой проге этот фьюз бит переключать можно галкой,а то,в моей нету
Самсусамыч

Сообщение Самсусамыч »

В распространённых программах, таких как: AVR Studio; Code Vision AVR; AVRDUDE_PROG 3.3 и тд.
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 15595
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Ошибка только если ВСЕ выводы МК заняты.
Иначе - режем дорожку и перебрасываем проволочкой на любой свободный вывод.
8)
Реклама
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт сен 10, 2019 16:18:33

Сообщение shrus43 »

Не все заняты,но как то не кашерно получается проволочкой,сейчас подумываю о фьюз докторе,кокраз есть несколько залоченых аврок 328 под среду ардуино "грамматическая ошибка на уровне 4 класса")

Добавлено after 2 minutes 17 seconds:
Граматическая ошибка))))муахаха что за прикол
Реклама
Открыл глаза
Сообщения: 45
Зарегистрирован: Вс янв 22, 2012 21:57:43

Сообщение malex66 »

"Печаль у меня ток usbasp..."
если уверены в прошивке - то прошивайте сначала hex, затем изменяйте фьюз. и (если в прошивке нет ошибок) будет все работать.
только перепрошивка будет доступна только с применением спец. средств. как то так...
Друг Кота
Аватара пользователя
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Сообщение musor »

если нет чегото вроде 866 прогера на 326 и даже на 8 крайне не рекомендуется такое луче перебросить не незанятй порт ка сорветовал калегаBOB51,
менше проблем с прошифкой и отладкой
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

Альтернативный вариант:
Зашить бутлоадер. Если UART ноги также не задействовали как-нибудь хитро не как UART, то можно взять Optiboot. Вход в бутлоадер сделать из своей программы по MAGIC последовательности по тому же UART.
Я так на меге 8ой делал, ногу RESET не выводил. Вывел только RX, TX, GND и шил через переходник USB-UART и модифицированную avrdude, которая вместо дерганья ресета слала MAGIC последовательность. Хотя можно и бут переделать просто, чтобы или таймаут большой был или вообще не выходил просто так. В общем варианты через бут есть.

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

Добавлено after 35 minutes 53 seconds:
Хотя если UART не разведен на плате... и не хочется припаивать проводки - всё-равно тогда не вариант получается. Хотя я бы всё-равно посоветовал бут зашить, если RSTDSBL фьюз бит планируется включать. Подпаяться к ногам RX,TX куда проще, чем собирать фьюзбит доктора )
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

это точно, да и проводов: 3 для бутлоадера и около 20 для доктора...
к тому-же на ресет подаётся 12в и тому, что на его дорожке висит может и поплохеть... т.ч. "доктор" или другой HV прогер == выпаивание мк для перепрошивки :(
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Друг Кота
Аватара пользователя
Сообщения: 15595
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

ОШИБКА!!!
Бутлоадеры, относящиеся к АРДУИНО в обязательном порядке ИСПОЛЬЗУЮТ вывод RESET!!!
:kill: :kill: :kill:
Кристалл в пациенты для фузедохтора перейдет...
Пам-трам -папам... RIP...
:cry: :( :cry:
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

BOB51, вы невнимательно прочитали. Прочитайте еще раз моё сообщение:
Вход в бутлоадер сделать из своей программы по MAGIC последовательности по тому же UART.
Друг Кота
Аватара пользователя
Сообщения: 15595
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Это как и в случае с самодельным бутлоадером - не для начинающего...
8)
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

Там же ничего сложного. С тем же оптибутом есть пример прям как в него ходить с основной программы:

Код: Выделить всё

typedef void (*ptr_t)(void);
const ptr_t bootloader_start = (ptr_t)((FLASHEND - 511) >> 1);
Делов-то. И кода надо просто вызываем bootloader_start();
И уж ТС и так собрался фьюздоктора собирать, так что "Кристалл в пациенты для фузедохтора перейдет..." - не страшно. Без бутлоадера он точно туда перейдет.

Добавлено after 8 hours 46 minutes 34 seconds:
Если уж ТС захочет бутлоадер сделать, тут на пальцах на форуме объяснить и расписать всё можно. И проверить прошивку через бут до того, как фьюз трогать. Лучше, чем его не предусмотреть вообще и прошить RSTDSBL.

Добавлено after 13 minutes 45 seconds:
https://github.com/Optiboot/optiboot/bl ... ega328.hex - вот уже готовый бут для 328ой меги. Только взять да прошить. Даже фьюзы на заход в бут при сбросе можно не ставить, т.к. входить будем с основной программы.
Я даже подумал - можно же не по MAGIC с UART'а входить, а любую свободную ногу взять. И с DTR переходника USB-UART подключаться к ней и всё. По смене на ноге прыгать в бутлоадер. Элементарно. Любую ногу свободную берем. Подтягиваем к +. Ждем провала в 0, по прерыванию или еще как. DTR подключаем к ней вместо RESET. Провалились в 0 - переходник подключен. Теперь ждем возврата в 1 - значит или программатор отключен, или нас требуют прошивать. В любом случае прыгаем в бут bootloader_start() - всё. Дальше бут сам сбросит МК что при удачной, что при неудачной прошивке. И прошиваем avrdude как ардуину.
Друг Кота
Аватара пользователя
Сообщения: 15595
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Если в проекте уже ИСПОЛЬЗОВАНЫ ВСЕ ВЫВОДЫ (как намякнул топикстартер), то активация бутлоадера сопряжена с особенностями схемотехники... Не факт, что удастся корректно встроить в уже имеющееся.
С другой стороны - неуж-то все на единственном кристалле сошлось?
можно и любой другой с большим количеством выводов использовать или схемотехнику поменять - сегодня нет критичных ограничений.
Зачем такой садомазохизм с абсолютным расходом выводов-то?
:dont_know:
Друг Кота
Аватара пользователя
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Сообщение musor »

вы невнимателно читали ТС заняты НЕ ВСЕ ПОРТЫ
Не все заняты,но как то не кашерно получается проволочкой,
просто в погоне за простотой разводки и иза своей неопытности он этот момент профукал при заказе плат... не знаю чем вариант трахоф с отладкой лучше 1 реза и пары пусочкоф МГТФ?
замечу что напроизводстве когда долступен паралелнвый прогер(и чипы шьются ДО ВПАЯ) и прошивка 100% вылизано это вполне допустимо
а вот любителю такой гемор зачем?
что до бутлодероф -а есть ли место? а доступны ли пины UART ? да и сам бутлодер не отестеный должно может както влиять на работу програмы
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

где Вы такое прочитали? я вижу [uquote="shrus43",url="/forum/viewtopic.php?p=3843844#p3843844"]Не все заняты,но как то не кашерно получается проволочкой...[/uquote]
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Сообщение NStorm »

BOB51, да не писал он такого, это только вы написали. Ну внимательнее же :) ТС явно написал:
Не все заняты
У ТС вопрос возник, потому что плату переделывать не хочет и перекинуть одну линию проводком. А вы предлагаете целиком МК заменить. Плата уже заказана. Всё. Уже не переделать. Или заказывать новую или как-то выкрутиться. Вы предложили перерезать дорогу и кинуть проводок. Нормальное решение для 1 линии. Но ТС от него отказался. Я предложил альтернативу с бутлоадером. В некоторых смыслах это даже удобнее, чем прошивать через ICSP.
Открыл глаза
Сообщения: 64
Зарегистрирован: Вт сен 10, 2019 16:18:33

Сообщение shrus43 »

Благодарю ребят за советы,ток не ругайтесь пожалуйсто,я обзаведусь доктором,другие варики для меня сложны и требуют много времени,я действительно не опытен,для меня это хобби,а так думаю всем будет интересно эту тему размусолить и развить,еще возник вопросик походу,если пины SPI моси мисо итд для прошивки тоже заняты програмно и в момент прошивки,когда программа сразу сходу заработает ,начнется движуха на этих пинах,не будет ли плохо МК или USBASу) ?,стоит ли что-то делать?и что?
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1231
Зарегистрирован: Вс май 21, 2006 16:07:59
Откуда: Алтай

Сообщение wws63 »

Собрать доктора, и забудешь все проблемы, платы продаются, сделаны качественно. Только вот Attiny2313 не всегда поддается лечению, о чем производитель сообщил в даташите. Экспериментировал с Atmega8, Atmega16, Attiny13a. Восстанавливает на ура, поэтому активно стал использовать на тиньке13 все 6 выводов.
Последний раз редактировалось wws63 Пн май 25, 2020 10:13:43, всего редактировалось 1 раз.
Ответить

Вернуться в «AVR»