Я разработал простую плату STM32. Ниже приведены схемы и рисунки макета печатной платы:
Печатная плата с подсветкой VDD:
Расположение печатной платы с выделенным GND:
Только части этого дизайна, которые имеют отношение к моему вопросу, показаны на рисунках выше.
Моя проблема: я пытался использовать встроенную ST-Link платы обнаружения STM32 для программирования этой пользовательской платы, но пока не смог добиться успеха. Приложение ST-Link Utility на ПК может распознавать программатор, но не может определить целевой MCU. Полученные сообщения об ошибках: «Цель не подключена» и «Ошибка связи USB ST-Link».
Вот несколько фактов о моей проблеме:
- Плата обнаружения STM32 работает нормально: я могу использовать встроенный ST-Link для программирования встроенного микроконтроллера STM32. Хорошо.
- Микроконтроллер STM32 был припаян с правильной ориентацией на специальной плате. Я проверил это дважды.
- Я проверил следы VDD и SWD. Они хорошо подключены (нет проблем с пайкой). Pin Boot0 находится на 0V. Контакт NRST находится на 3,3 В.
- Кабель SWD короткий, всего 7-8 см в длину.
- STM32 на моей пользовательской плате того же типа, что и на плате обнаружения.
Я следовал инструкциям в руководстве к плате обнаружения STM32 о том, как использовать плату обнаружения для программирования внешнего микроконтроллера STM32. Чтобы быть более точным, я удалил 2 перемычки CN3, а затем подключил платы, как показано в этой таблице:
Я также удалил паяную перемычку SB11 на плате обнаружения (чтобы вывод NRST мог работать правильно).
- Я пробовал и приложение ST-Link Utility, и Keil. Сообщения об ошибках, которые я получил, такие же.
- Сначала я не подключал контакт 6 на приведенной выше таблице (SWO), потому что, насколько мне известно, это не нужно. Однако после этого я тоже это подключил, но ничего не вышло.
- Я также добавил крышку 100 нФ от контакта NRST к GND, а затем резистор 100 кОм от этого контакта к VDD. Проблема все еще остается.
- Я также пытался использовать режим подключения по сбросу программы ST-Link Utility. Не повезло тоже.
Я подозреваю, что может быть что-то не так с дизайном, но я не уверен. Пожалуйста, помогите мне решить проблему.
Большое спасибо :)
Ответы:
Спасибо за ваши замечательные комментарии. Из-за них я был уверен, что мой дизайн без ошибок. Вот почему я сосредоточил свое внимание на поиске ошибок в оборудовании. И я нашел ошибку! Это ошибка пайки.
Я обнаружил эту ошибку после выполнения этой инструкции: «Используйте мультиметр и проверьте все соединения на наличие короткого замыкания или отсутствия соединения. Не забудьте прикасаться к штырям / контактным площадкам / к чему-либо очень осторожному, потому что, если вы сильно нажмете на датчик, вы можете» исправить «соединение временно (например, вы нажимаете вывод IC на трассу на печатной плате, и проверка в порядке, но как только вы отпускаете, вывод снова изгибается)». Оригинальный пост здесь .
источник