ВОПРОС Проблема с отладкой GD32F303VGT6

ATI3D

ЧТО-ТО УЖЕ ЧИРКАНУЛ
ПРОВЕРЕННЫЙ
Регистрация
24.08.2026
Сообщения
2
Реакции
0
Баллы
1
Город
Москва
Имя
Александр
Последнее редактирование:
Добрый день!

МК стоит на дисплейной плате Melitta Barista TS F85/0-102. Проявлялись постепенно «кракозябры» при перерисовке интерфейса, затем периодические отказы cold boot. На рабочем экземпляре машина могла работать месяц непрерывно; после полного shutdown снова не стартовала. Кварц/резонатор ранее менялся электронщиком, без результата.

Подпоялся к сервисному разъему и подключился через ST-Link v2.

Код:
GD32F303VGT6
Cortex-M4 r0p1
Target voltage ~3.24 V
SWD/DAP отвечает
IDCODE = 0x2BA01477
CPUID = 0x410FC241

CoreDebug:
DEMCR читается/пишется

Но:
DHCSR = 0x00010003
S_HALT = 0
HALT не срабатывает

AHB недоступен:
SRAM 0x20000000 → зависание/timeout
Flash 0x08000000 → зависание/timeout

SYSRESETREQ не работает
Физический NRST → GND → release ситуацию не меняет


Подскажите кто разбирается или сталкивался, это приговор?
Ниже результат выполнения команды openocd.

Код:
Open On-Chip Debugger 0.12.0
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
hla_swd
adapter speed: 100 kHz


Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
Info : clock speed 1000 kHz
Info : STLINK V2J37S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.262074
Info : [stm32f3x.cpu] Cortex-M4 r0p1 processor detected
Info : [stm32f3x.cpu] target has 6 breakpoints, 4 watchpoints
Info : starting gdb server for stm32f3x.cpu on 3333
Info : Listening on port 3333 for gdb connections
Info : Halt timed out, wake up GDB.
Error: timed out while waiting for target halted
 
Какие назначения в Target->Settings?
1787600223961.png
Что пишет в окне Target->MCU Core при нажатии Run->Halt?
1787600261679.png
 
Какие назначения в Target->Settings?
1787600223961.png
Что пишет в окне Target->MCU Core при нажатии Run->Halt?
1787600261679.png

Target Settings:
  • Port: SWD
  • Frequency: 1 MHz (также пробовал 100 kHz)
  • Access Port: 0
  • Mode: Connect Under Reset
  • Reset Mode: Hardware Reset
  • NRST подключён физически

Target определяется:
  • IDCODE = 0x2BA01477
  • CPUID = 0x410FC241 (Cortex-M4 r0p1)
Run → Halt не работает: OpenOCD выдаёт timed out while waiting for target halted.
DHCSR = 0x00010003: C_DEBUGEN=1, C_HALT=1, но S_HALT=0.
CoreDebug/PPB регистры читаются и пишутся нормально (например, DEMCR записывается/читается обратно).
При этом доступ через системную шину не работает: чтение SRAM 0x20000000, Flash 0x08000000 и option bytes приводит к зависанию/timeout OpenOCD.

Также пробовал физически замыкать NRST на GND, после чего подключаться заново — ситуация не меняется.

Что ещё можно проверить, чтобы отделить проблему clock/reset/core от физической неисправности GD32?
 
Сверху Снизу