Время запуска программы
- Войдите на сайт для отправки комментариев
Втр, 09/06/2020 - 23:44
Плата ардуино уно.
Есть некая программка, выдающаяся в сериал на D1 (TX) данные. Так вот вопрос.
Почему при подаче питания на плату данные с D1 начинают поступать моментально., а вот после ресета проходит около 1,6 секунды прежде чем появятся данные с D1?
Неужели при подаче питания бутлоадер не делает выжидательную паузу?
Неужели в самом деле как же так, кто разрешил, а самое главное, как так "моментально" у тебя инициировался usb и открылся терминал?
Неужели при подаче питания бутлоадер не делает выжидательную паузу?
Бутлоадеры разные бывают. Посмотреть примеры кода можно ...\arduino-1.8.5\hardware\arduino\avr\bootloaders\
Но "обычно" работает как вы описали - если не RESET, то сразу идет на выполнение основной программы.
Неужели при подаче питания бутлоадер не делает выжидательную паузу?
А зачем?
Видимо с той же целью, что и при ресете, ждет не зальют ли ему скетч.
Просто непонятно, как включение питания контроллер отличает от ресета.
Неужели при подаче питания бутлоадер не делает выжидательную паузу?
Бутлоадеры разные бывают. Посмотреть примеры кода можно ...\arduino-1.8.5\hardware\arduino\avr\bootloaders\
Но "обычно" работает как вы описали - если не RESET, то сразу идет на выполнение основной программы.
А как он отличает, ресет ему нажали или питание включили?
Есть регистр событий и по флагам видно как стартанул проц.
Народ любит часами ждать ответа на форуме, нежели моментально получить ответ от Гугла...(
Видимо с той же целью, что и при ресете, ждет не зальют ли ему скетч.
Он, в отличие от Вас, знает, что когда собираются заливать, то ресет делают обязательно :-)
Видимо с той же целью, что и при ресете, ждет не зальют ли ему скетч.
Он, в отличие от Вас, знает, что когда собираются заливать, то ресет делают обязательно :-)
Я всегда считал, что при включении питания ресет должен удерживать проц от запуска до установления нормальных уровней напряжения в цепях питания. Но, в данном случае, как оказалось, это не так.
А Вы попробуйте HEX программатором записать и сравните результат. Времена уйдут как раз под ресет.
А Вы попробуйте HEX программатором записать и сравните результат. Времена уйдут как раз под ресет.
Да, именно это и хочу сделать, как только доберусь до второй ардуинки.
Итак, залил свой скетч в ардуинку через ISP. Теперь программа запускается в течении 150 мс, что при подаче питания, что при ресете.
SergCh А фьюзы ?
SergCh А фьюзы ?
фьюзы не трогал.
:-)))) Тогда перед тем как запуститься вашему коду - МК молотит NOP размером с загрузчик !!! Причем теперь и при подаче питания и при Reset ... Надо фьюзами выставить загрузку с 0000 без загрузчика !
Оп. Не оно.
:-)))) Тогда перед тем как запуститься вашему коду - МК молотит NOP размером с загрузчик !!! Причем теперь и при подаче питания и при Reset ... Надо фьюзами выставить загрузку с 0000 без загрузчика !
Да пускай молотит, главное что задержка начала работы основной программы после ресета теперь не 1.6с, а 150 мс.