whale 6 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба Всем привет. Есть stm32 который работает с сетью через W3150, очень хочется обновлять прошивку в нем по сети, есть что нить готовое или близко расположенное по этой теме или все придеться делать врукопашную ? Те я так понимаю нужно: 1. прога на ПК для загрузки 2. бутлодер на stm32 который будет принимать, сохранять новую версию в озу по каким то командам и потом переписывать ее на место старой (те прошивка должна занимать менее половины озу ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 59 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба Первая ссылка в гугле https://www.feaser.com/openblt/doku.php?id=homepage и еще 100500 далее Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
whale 6 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба Спасибо, ничего правда пока не понятно но интересно ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 59 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба 26 minutes ago, whale said: Спасибо, ничего правда пока не понятно но интересно ) Как не понятно ? Все же написано черным по белому https://www.feaser.com/openblt/doku.php?id=manual:net_demo Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
whale 6 13 апреля, 2021 Опубликовано 13 апреля, 2021 (изменено) · Жалоба Непонятно какие и куда программы класть в мк, тем более что интерфейс не TCP а только UDP, который по сути сам мк и поддерживает, те принимет и рассовывает пакеты определенной длинны в программе, как это все объеденить с этим программатром неясно а как загружать прошивку в винде конечно проблем нет. Изменено 13 апреля, 2021 пользователем whale Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 59 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба 3 hours ago, whale said: как загружать прошивку в винде конечно проблем нет. Тогда и на стороне МК тоже не должно быть проблем. Протокол Вам известен (со стороны windows). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
whale 6 13 апреля, 2021 Опубликовано 13 апреля, 2021 (изменено) · Жалоба По моему проще взять все и написать с нуля под конкретную задачу чем разбираться в тоннах чужого кода, писал как то бутлодер под i2c полностью рукопашный просто думал мож как то упростить и убыстрить ) В принципе задача то не такая и сложная единственный пока непонятный момент это перезапись залитой прошивки в рабочую облаcть на stm32 или же можно писать сразу в рабочею область, сэкономить на этом память. Изменено 13 апреля, 2021 пользователем whale Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 59 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба Можно через память, можно напрямую. Нарисуйте на бумажке алгоритм работы и затем или готовый переделать, или свой написать. Есть TFTP протокол. Можно свой протокол нагородить. Тут вариантов 100500. А телепаты все в отпуске. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба 2 часа назад, whale сказал: или же можно писать сразу в рабочею область, сэкономить на этом память. Если нужно безопасное обновление (устойчивое к внезапным перезагрузкам) то нельзя. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
whale 6 13 апреля, 2021 Опубликовано 13 апреля, 2021 (изменено) · Жалоба Just now, jcxz said: Если нужно безопасное обновление (устойчивое к внезапным перезагрузкам) то нельзя. Это понятно, тут на крайний случай придеться прошивать пока не прошьется, единственно нужно чтобы уст-во себя не убило если что то не так пойдет ) Изменено 13 апреля, 2021 пользователем whale Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба 1 час назад, whale сказал: Это понятно, тут на крайний случай придеться прошивать пока не прошьется, единственно нужно чтобы уст-во себя не убило если что то не так пойдет ) Ну вот оно и убьёт себя если будете прошиваться из ОЗУ и дёрнется питание. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 59 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба 1 hour ago, jcxz said: Ну вот оно и убьёт себя если будете прошиваться из ОЗУ и дёрнется питание. Не совсем так. Загрузчик может проверить код и если он некорректный, то сразу перейти в режим загрузки и большой брат ещё раз пришлёт ему программу. Зависит от сценария, нарисованного ручкой на бумажке. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба 11 hours ago, whale said: В принципе задача то не такая и сложная единственный пока непонятный момент это перезапись залитой прошивки в рабочую облаcть на stm32 или же можно писать сразу в рабочею область, сэкономить на этом память. Конечно надо писать сразу туда где будет исполняться. Я б вообще DMA использовал для этого, с W3150 это же очень просто. Вэлкам снова к телепатам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
whale 6 14 апреля, 2021 Опубликовано 14 апреля, 2021 (изменено) · Жалоба DMA то ту зачем ? мне скорость не важна, по любому пакеты через ядро пройдут. Just now, AlexandrY said: Вэлкам снова к телепатам А вы телепат ? сможете назвать мое имя ? 7 hours ago, jcxz said: Ну вот оно и убьёт себя если будете прошиваться из ОЗУ и дёрнется питание. Так загрузчик то остается в него не пишут, а при перезагрузке сначала сразу идем в него и ждем 5-10 сек придет что нить или нет а потом уже в основную, также можно при загрузке сделать проверку кода программы на crc Изменено 14 апреля, 2021 пользователем whale Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 59 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба 15 minutes ago, whale said: а потом уже в основную, также можно при загрузке сделать проверку кода программы на crc Перед тем как идти и надо проверить хотя бы CRC и решить - стоит туда ходить или остаться и ждать загрузки программы (иногда отправлять broadcast udp - "у меня сдохла прошивка, дайте кто-нибудь код для записи прошивки" и для наглядности обреченно моргать лампочкой). А будет там DMA или не будет - это пофиг. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться