Ssylka

Как разблокировать и заблокировать защиту чтения памяти CH32V20x через OpenOCD?

Для микроконтроллеров WCH, работающих под Linux, существует метод разблокировки и блокировки защиты чтения памяти через OpenOCD, который расширяет стандартные возможности скрипта. Это достигается путем очистки области User Option Bytes и записи в поле RDPR значения 0xA5 для разблокировки, а для блокировки – сбросом области User Option Bytes. Для этого используются команды OpenOCD для чтения и записи регистров, а также созданные функции lock и unlock на языке Tcl.
Как разблокировать и заблокировать защиту чтения памяти CH32V20x через OpenOCD?
Изображение носит иллюстративный характер

Процедура разблокировки включает в себя проверку статуса защиты, разблокировку FLASH_CTLR и User Option Bytes, установку бита OBPG, запись значения 0xA5 в поле RDPR, а также ожидание завершения операции и верификацию. Функция lock аналогично проверяет статусы, разблокирует, устанавливает биты OBER и STRT для очистки, ожидает завершения, верифицирует результат и затем сбрасывает бит OBER.

Интеграция этих функций в скрипт OpenOCD позволяет вызывать их через IDE MounRiver, используя команды monitor lock и monitor unlock. Для автоматизированного процесса программирования со снятием и последующей установкой защиты можно использовать команды OpenOCD в командной строке.

Необходимо отметить, что значение байта RDPR после очистки области User Option Bytes может отличаться от указанного в документации (0xFF), принимая, например, значение 0x39 для ch32v203. Поэтому для микроконтроллера ch32v203 значение для lock должно быть 0xe339.


Новое на сайте

18607Золотой распад кометы ATLAS C/2025 K1 18606Секретный бренд древнего Рима на стеклянных шедеврах 18605Смогут ли чипсы без искусственных красителей сохранить свой знаменитый вкус? 18604Является ли рекордная скидка на Garmin Instinct 3 Solar лучшим предложением ноября? 18603Могла ли детская смесь ByHeart вызвать национальную вспышку ботулизма? 18602Готовы ли банки доверить агентскому ИИ управление деньгами клиентов? 18601Как сезонные ветры создают миллионы загадочных полос на Марсе? 18600Как тело человека превращается в почву за 90 дней? 18599Как ваш iPhone может заменить паспорт при внутренних перелетах по США? 18598Мозговой шторм: что происходит, когда мозг отключается от усталости 18597Раскрыта асимметричная форма рождения сверхновой 18596Скидки Ninja: как получить идеальную корочку и сэкономить на доставке 18595Почему работа на нескольких работах становится новой нормой? 18594Записная книжка против нейросети: ценность медленного мышления 18593Растущая брешь в магнитном щите земли