Использование пина RESET в качестве ввода вывода
- Сообщения: 64
- Зарегистрирован: Вт сен 10, 2019 16:18:33
Здравствуйте знатоки,подскажите ребят как сделать его таковым и какие посдедствия будут,мк атмега 328,нарисовал плату в попыхах орентировался по протэусу
и заказал изготовление платы,лажанул жестко ребят
- Реклама
Делается он переключением соответствующего фьюз бита (RSTDSBL).
Последствия - прошивать можно будет только HV программатором или после сброса фьюз-доктором.
Последствия - прошивать можно будет только HV программатором или после сброса фьюз-доктором.
Для тех, кто не учил магию мир полон физики 
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
- Сообщения: 64
- Зарегистрирован: Вт сен 10, 2019 16:18:33
Печаль у меня ток usbasp,чтож благодарю за ответ
Добавлено after 17 minutes 30 seconds:
Кста в какой проге этот фьюз бит переключать можно галкой,а то,в моей нету
Добавлено after 17 minutes 30 seconds:
Кста в какой проге этот фьюз бит переключать можно галкой,а то,в моей нету
В распространённых программах, таких как: AVR Studio; Code Vision AVR; AVRDUDE_PROG 3.3 и тд.
Ошибка только если ВСЕ выводы МК заняты.
Иначе - режем дорожку и перебрасываем проволочкой на любой свободный вывод.

Иначе - режем дорожку и перебрасываем проволочкой на любой свободный вывод.
- Реклама
- Сообщения: 64
- Зарегистрирован: Вт сен 10, 2019 16:18:33
Не все заняты,но как то не кашерно получается проволочкой,сейчас подумываю о фьюз докторе,кокраз есть несколько залоченых аврок 328 под среду ардуино "грамматическая ошибка на уровне 4 класса")
Добавлено after 2 minutes 17 seconds:
Граматическая ошибка))))муахаха что за прикол
Добавлено after 2 minutes 17 seconds:
Граматическая ошибка))))муахаха что за прикол
- Сообщения: 45
- Зарегистрирован: Вс янв 22, 2012 21:57:43
"Печаль у меня ток usbasp..."
если уверены в прошивке - то прошивайте сначала hex, затем изменяйте фьюз. и (если в прошивке нет ошибок) будет все работать.
только перепрошивка будет доступна только с применением спец. средств. как то так...
если уверены в прошивке - то прошивайте сначала hex, затем изменяйте фьюз. и (если в прошивке нет ошибок) будет все работать.
только перепрошивка будет доступна только с применением спец. средств. как то так...
если нет чегото вроде 866 прогера на 326 и даже на 8 крайне не рекомендуется такое луче перебросить не незанятй порт ка сорветовал калегаBOB51,
менше проблем с прошифкой и отладкой
менше проблем с прошифкой и отладкой
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
- Сообщения: 1978
- Зарегистрирован: Ср июл 17, 2013 13:55:57
Альтернативный вариант:
Зашить бутлоадер. Если UART ноги также не задействовали как-нибудь хитро не как UART, то можно взять Optiboot. Вход в бутлоадер сделать из своей программы по MAGIC последовательности по тому же UART.
Я так на меге 8ой делал, ногу RESET не выводил. Вывел только RX, TX, GND и шил через переходник USB-UART и модифицированную avrdude, которая вместо дерганья ресета слала MAGIC последовательность. Хотя можно и бут переделать просто, чтобы или таймаут большой был или вообще не выходил просто так. В общем варианты через бут есть.
Но если "что пойдет не так", и бут слетит, то конечно без фьюз доктора и т.п. не вернуть МК к ответу уже. Но если быть внимательным, этого не должно произойти )
Добавлено after 35 minutes 53 seconds:
Хотя если UART не разведен на плате... и не хочется припаивать проводки - всё-равно тогда не вариант получается. Хотя я бы всё-равно посоветовал бут зашить, если RSTDSBL фьюз бит планируется включать. Подпаяться к ногам RX,TX куда проще, чем собирать фьюзбит доктора )
Зашить бутлоадер. Если UART ноги также не задействовали как-нибудь хитро не как UART, то можно взять Optiboot. Вход в бутлоадер сделать из своей программы по MAGIC последовательности по тому же UART.
Я так на меге 8ой делал, ногу RESET не выводил. Вывел только RX, TX, GND и шил через переходник USB-UART и модифицированную avrdude, которая вместо дерганья ресета слала MAGIC последовательность. Хотя можно и бут переделать просто, чтобы или таймаут большой был или вообще не выходил просто так. В общем варианты через бут есть.
Но если "что пойдет не так", и бут слетит, то конечно без фьюз доктора и т.п. не вернуть МК к ответу уже. Но если быть внимательным, этого не должно произойти )
Добавлено after 35 minutes 53 seconds:
Хотя если UART не разведен на плате... и не хочется припаивать проводки - всё-равно тогда не вариант получается. Хотя я бы всё-равно посоветовал бут зашить, если RSTDSBL фьюз бит планируется включать. Подпаяться к ногам RX,TX куда проще, чем собирать фьюзбит доктора )
это точно, да и проводов: 3 для бутлоадера и около 20 для доктора...
к тому-же на ресет подаётся 12в и тому, что на его дорожке висит может и поплохеть... т.ч. "доктор" или другой HV прогер == выпаивание мк для перепрошивки
к тому-же на ресет подаётся 12в и тому, что на его дорожке висит может и поплохеть... т.ч. "доктор" или другой HV прогер == выпаивание мк для перепрошивки
Для тех, кто не учил магию мир полон физики 
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
ОШИБКА!!!
Бутлоадеры, относящиеся к АРДУИНО в обязательном порядке ИСПОЛЬЗУЮТ вывод RESET!!!
Кристалл в пациенты для фузедохтора перейдет...
Пам-трам -папам... RIP...

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

- Сообщения: 1978
- Зарегистрирован: Ср июл 17, 2013 13:55:57
Там же ничего сложного. С тем же оптибутом есть пример прям как в него ходить с основной программы:
Делов-то. И кода надо просто вызываем 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 как ардуину.
Код: Выделить всё
typedef void (*ptr_t)(void);
const ptr_t bootloader_start = (ptr_t)((FLASHEND - 511) >> 1);
И уж ТС и так собрался фьюздоктора собирать, так что "Кристалл в пациенты для фузедохтора перейдет..." - не страшно. Без бутлоадера он точно туда перейдет.
Добавлено 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 как ардуину.
Если в проекте уже ИСПОЛЬЗОВАНЫ ВСЕ ВЫВОДЫ (как намякнул топикстартер), то активация бутлоадера сопряжена с особенностями схемотехники... Не факт, что удастся корректно встроить в уже имеющееся.
С другой стороны - неуж-то все на единственном кристалле сошлось?
можно и любой другой с большим количеством выводов использовать или схемотехнику поменять - сегодня нет критичных ограничений.
Зачем такой садомазохизм с абсолютным расходом выводов-то?

С другой стороны - неуж-то все на единственном кристалле сошлось?
можно и любой другой с большим количеством выводов использовать или схемотехнику поменять - сегодня нет критичных ограничений.
Зачем такой садомазохизм с абсолютным расходом выводов-то?
вы невнимателно читали ТС заняты НЕ ВСЕ ПОРТЫ
замечу что напроизводстве когда долступен паралелнвый прогер(и чипы шьются ДО ВПАЯ) и прошивка 100% вылизано это вполне допустимо
а вот любителю такой гемор зачем?
что до бутлодероф -а есть ли место? а доступны ли пины UART ? да и сам бутлодер не отестеный должно может както влиять на работу програмы
просто в погоне за простотой разводки и иза своей неопытности он этот момент профукал при заказе плат... не знаю чем вариант трахоф с отладкой лучше 1 реза и пары пусочкоф МГТФ?Не все заняты,но как то не кашерно получается проволочкой,
замечу что напроизводстве когда долступен паралелнвый прогер(и чипы шьются ДО ВПАЯ) и прошивка 100% вылизано это вполне допустимо
а вот любителю такой гемор зачем?
что до бутлодероф -а есть ли место? а доступны ли пины UART ? да и сам бутлодер не отестеный должно может както влиять на работу програмы
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
где Вы такое прочитали? я вижу [uquote="shrus43",url="/forum/viewtopic.php?p=3843844#p3843844"]Не все заняты,но как то не кашерно получается проволочкой...[/uquote]
Для тех, кто не учил магию мир полон физики 
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
- Сообщения: 1978
- Зарегистрирован: Ср июл 17, 2013 13:55:57
BOB51, да не писал он такого, это только вы написали. Ну внимательнее же
ТС явно написал:
У ТС вопрос возник, потому что плату переделывать не хочет и перекинуть одну линию проводком. А вы предлагаете целиком МК заменить. Плата уже заказана. Всё. Уже не переделать. Или заказывать новую или как-то выкрутиться. Вы предложили перерезать дорогу и кинуть проводок. Нормальное решение для 1 линии. Но ТС от него отказался. Я предложил альтернативу с бутлоадером. В некоторых смыслах это даже удобнее, чем прошивать через ICSP.Не все заняты
- Сообщения: 64
- Зарегистрирован: Вт сен 10, 2019 16:18:33
Благодарю ребят за советы,ток не ругайтесь пожалуйсто,я обзаведусь доктором,другие варики для меня сложны и требуют много времени,я действительно не опытен,для меня это хобби,а так думаю всем будет интересно эту тему размусолить и развить,еще возник вопросик походу,если пины SPI моси мисо итд для прошивки тоже заняты програмно и в момент прошивки,когда программа сразу сходу заработает ,начнется движуха на этих пинах,не будет ли плохо МК или USBASу) ?,стоит ли что-то делать?и что?
Собрать доктора, и забудешь все проблемы, платы продаются, сделаны качественно. Только вот Attiny2313 не всегда поддается лечению, о чем производитель сообщил в даташите. Экспериментировал с Atmega8, Atmega16, Attiny13a. Восстанавливает на ура, поэтому активно стал использовать на тиньке13 все 6 выводов.
Последний раз редактировалось wws63 Пн май 25, 2020 10:13:43, всего редактировалось 1 раз.


