Не могу набрать код sh после использования режима ожидания. Ошибка при инициализации устройства ST-LINK. Причина: (4) Не найдено устройство на цели - PullRequest
0 голосов
/ 29 января 2020

Я экспериментирую с режимом ожидания. IDE это STM32CubeIDE, mcu stm32f407vgt9. Таким образом, я прочитал в таблице данных, что mcu выходит из режима ожидания, если выполнено одно из следующих условий:

Передний фронт вывода WKUP, RT C тревога (Alarm A и Alarm B), RT C wake -вверх, событие подделки, событие отметки времени, внешний сброс на выводе NRST, сброс IWDG.

MCU входит в режим ожидания с помощью этой функции HAL_PWR_EnterSTANDBYMode (), если я хорошо понимаю. Я делаю это, и я ожидаю, что если mcu достигнет высокого уровня на выводе WKUP (PA0), mcu выйдет из режима ожидания. Я хочу, чтобы этот простой код выполнялся.

  while (1){
  HAL_PWR_EnterSTANDBYMode();

  HAL_GPIO_WritePin(GPIOD, GPIO_PIN_14, GPIO_PIN_SET);
  HAL_Delay(3000);

  HAL_GPIO_WritePin(GPIOD, GPIO_PIN_14, GPIO_PIN_RESET);
  HAL_Delay(3000);}

MCU go в режиме ожидания, но выход из режима ожидания никогда не происходит. Я пытаюсь подключить PA0 с высоким, но ничего не происходит.

Я хочу набрать sh другой код, но теперь это невозможно, потому что я go это ошибка из STM32CubeIDE:

Ошибка в последовательности окончательного запуска:

Ошибка при инициализации устройства ST-LINK.

Причина: (4) На цели не найдено устройство.

Как я могу решить эту проблему? Прежде чем экспериментировать с режимом ожидания, я несколько раз получал эту ошибку, и мне удалось ее устранить, подключив вывод NRST к GND (аппаратный перезапуск mcu), но теперь он не работает, потому что после сброса код будет выполняться автоматически. Соединить NRST с GND и попытаться набрать код sh невозможно, (возникнет новая ошибка, которая указывает, что в данный момент активирован аппаратный сброс: ошибка при инициализации устройства ST-LINK. Причина: (8) Цель удерживается при сбросе.).

Любая идея приветствуется

1 Ответ

0 голосов
/ 30 января 2020

Это решение:

Подключите NRST с GND и BOOT0 с 3 В, затем отключите NRST и GND после того, как попытаетесь прошить / отладить код.

...