PY32F002A (и другие от PUYA)- чудо микроконтроллер

Странная статья, схема от v7, скрин от v1, что за прошивка совсем не понятно.

отож, у меня обновился, пишет это:

SEGGER J-Link Commander V6.10 (Compiled Sep 14 2016 16:45:46)
DLL version V6.10, compiled Sep 14 2016 16:45:07

Connecting to J-Link via USB...O.K.
Firmware: J-Link ARM-OB STM32 compiled Aug 22 2012 19:52:04
Hardware version: V7.00
S/N: 20090928
License(s): RDI,FlashDL,FlashBP,JFlash,GDBFull
VTref = 3.300V


Type "connect" to establish a target connection, '?' for help
J-Link>

А должно быть так

там не только стек. вернее, не столько. операционка там, какая-никакая, в ESP-IDF куча разных компонентов.

если ты пишешь сразу для ESP-IDF, минуя Arduino API, и пользуешся их системой сборки (cmake) , то да, там можно что хочешь включить\отключить.

но Arduino Core поставляется с уже скомпилированным ESP-IDF.

На самом деле, да, размер кода изначально пухлый, но

  1. При добавлении кода размер начинает расти незначительно
  2. Исполняется оно все равно из флеша, поэтому какая разница. На ESP32 самое малое - 4 мегабайта флешки.

у меня серийник один раз обновился нормально, после этого и перешивал раза три, не даёт записать, видимо где-то в реестре программа отметилась

Вот сейчас не понял очем речь.
1 - v7 это очень старая версия.
2 - серийник прописывается один раз, если в прошивке, на его месте записано 0xffffffff, в реестр ничего не пишется.
3 - GDBFull это палево, должно быть GDB
Актуальная, сейчас, версия всех OB это v1.

Спрошу другое, у тебя openocd 0.12.0 видит JLINK?

у меня - 0.10.0 не видит JLINK, а 0.12.0 не находит прошивальщик:

Open On-Chip Debugger 0.12.0 (2023-01-14-23:37)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
swd
Error: flash driver 'py32f003' not found

Для продолжения нажмите любую клавишу . . .

JLink - это аппаратный ключ к фирменному софту, ради этого его и приобретают. Сам с openocd его не использовал, SEGGER GDBserver работает быстрее.
Вот тут пишут что openocd с jlink будет работать только после смены драйверов на winusb сторонними средствами, zadig тебе в помощь.

даже находил программу (не zadig) выводившую все установленые устройства и драйвера и можно было поменять на Winusb, вылетело из головы.

PS мне openocd помог познакомится с чипом PUYA, возможностей сильно больше pyocd.

Ну вот, через простейший адаптер jlink заработал PY32CubeProgrammer:


И на камне закрытом от считывания прошивки смотрим “фьюзы”

Интересно девки пляшут…может тут есть специалисты по STM32…
Вот я задействовал пин nRST под свои нужды и, два вопроса, как отлаживаться, как программировать…


зачем? Пинов не хватает?

Разработчик заложил эту возможность, он же не жопой думал, значит есть какая-то техническая возможность вернуть пин взат (это для программирования) а вот для отладки не знаю что и думать

Я конечно таким извращением не занимался, но насколько я помню, что читал давно - при сброс с любом случае есть возможность через st link запрограммировать.
Не уверен, надо тестировать.
При чем тут отладка - не понял. Оно с nRST вообще не завязано.

Да тролит он в своей манере…
Неужели не понятно.

Пофиг, в отпуске, почти пятница :grinning_face:
Можно и потрындеть.

я из openocd общаюсь с контроллером, чтобы в него что-то записать надо подтянуть сигнал reset к земле, по другому никак, читал. что ставят на SWDIO -SWCLK конденсаторы на землю и тогда вроде можно общаться с контроллером без сигнала RESET, но это на форуме, в даташите такого нет, логичней было бы тянуть reset вверх к +12, как это в attiny сделано…

Я ш говорил…

Таблетки с права, в коробочке…

Какую-то хрень читаете :grinning_face:
В даташите все есть.
Никаких крнденсаторов не требуется.
Я тупо stlink цепляю, пишу в cmsis, чтоб printf выводил swdio лог надо от силы несколько строк.