C2000 3 21 февраля Опубликовано 21 февраля · Жалоба Можно ли через OpenOCD прошивать МК, только если программа в нём не соответствует той которую собираемся отлаживать? В идеале перепрошивать только те сектора которые отличаются. J-Link к примеру делает это по умолчанию, сначала верифицирует и только при несовпадении перепрошивает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 39 23 февраля Опубликовано 23 февраля · Жалоба J-Link это всего лишь адаптер, он ничего сам не делает. Делает программа, которая с его помощью прошивает. Программ этих чуть больше чем дофига и каждая делает посвоему. Собственно и OpenOCD через J-link шить умеет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
one_eight_seven 6 23 февраля Опубликовано 23 февраля · Жалоба On 2/21/2024 at 8:02 PM, C2000 said: Можно ли через OpenOCD прошивать МК, только если программа в нём не соответствует той которую собираемся отлаживать? В идеале перепрошивать только те сектора которые отличаются. J-Link к примеру делает это по умолчанию, сначала верифицирует и только при несовпадении перепрошивает. Да. В OpenOCD есть команда verify_image, по результатам которой можно определить, требуется ли прошивка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 24 февраля Опубликовано 24 февраля · Жалоба Да, но OpenOCD проверяет целиком, а сеггеровский софт поблочно и переписывает только там, где не совпадает, также пропускает пустые места (сплошные 0xFF). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
one_eight_seven 6 24 февраля Опубликовано 24 февраля · Жалоба Пустые места OpenOCD по умолчанию тоже пропускает, если брать elf в качестве источника. Но именно пустые области памяти, а не те, которые заполнены единицами намеренно - в коде. А переписывать только несовпадающие места - это зависит от того, написано это в драйвере флэш памяти в OpenOCD, например, я, когда писал драйвера всегда делал так, чтобы пользователи всегда использоовали полное стирание памяти при прошивке, и очень часто заказчикам этого хватало, и они после не улучшали. Хотя, я не щупал самую последнюю версию OpenOCD, поэтому со 100% вероятностью утверждать не буду, может там есть уже более аккуратная версия работы с flash, но скорее всего до сих пор так, как я описываю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться