stm32f4 0 28 февраля, 2013 Опубликовано 28 февраля, 2013 · Жалоба Сразу к делу, пару часов назад случайно в проекте допустил ошибку, изменил состояние регистра MODER порта A 13-той ноги на OUTPUT, а это одна из линий(SWDIO) интерфейса SWD !!!!! RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN; GPIOA->MODER |= GPIO_MODER_MODER13_0; Собственно теперь никак не могу ни стереть не прошить МК(STM32f405) ((((((( Я уже и через CooCox,Keil и даже STM32 ST-LINK Utility пробовал, не помогают((Контроллер живет своей жизнью!!! Неужели из-за такой ерунды выбрасывать проц:-? что делать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HHIMERA 0 28 февраля, 2013 Опубликовано 28 февраля, 2013 · Жалоба А стереть через загрузчик по UART... не??? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nx6310 0 28 февраля, 2013 Опубликовано 28 февраля, 2013 · Жалоба попробуй перед началом прошивки кварц закоротить. По идее из-за этого программа должна зависнуть на этапе инициализации тактовой частоты HSE и не успеет инициализировать порты. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 28 февраля, 2013 Опубликовано 28 февраля, 2013 · Жалоба Что за распайка SWD разъёма, NRST присутствует? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 28 февраля, 2013 Опубликовано 28 февраля, 2013 · Жалоба При завешенном NRST стирание ERASE CHIP через SEGGER J-FLASH ARM по SWD не происходит. Проверил на STM32F101. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 28 февраля, 2013 Опубликовано 28 февраля, 2013 · Жалоба А ели он не завешен, а управляется программатором? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 28 февраля, 2013 Опубликовано 28 февраля, 2013 (изменено) · Жалоба Не могу проверить. Вы думаете, программатор успеет снять ресет и перешить? Изменено 28 февраля, 2013 пользователем Genadi Zawidowski Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 28 февраля, 2013 Опубликовано 28 февраля, 2013 · Жалоба Не могу проверить. Вы думаете, программатор успеет снять ресет и перешить? SWD позволяет подцепиться когда проц находится в ресете и задать остановку на ресет векторе. После снятия ресета проц встанет до исполнения первой команды! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MiklPolikov 0 1 марта, 2013 Опубликовано 1 марта, 2013 · Жалоба Надо сделать так : 1)Подтягиваете ногу NRST к земле, и пытаетесь шить по JTAG или SWD. Вылезает ошибка. 2)После этого отсоединяете NRST от земли, и снова шьёте. Должно начать шится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
drum1987 0 1 марта, 2013 Опубликовано 1 марта, 2013 · Жалоба Используйте пин boot0 чтобы при включении питания проц пытался загрузится не с флеш а с usart... Потом цепляйте SWD и стирайте память контроллера. Мне помогло. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
stm32f4 0 1 марта, 2013 Опубликовано 1 марта, 2013 · Жалоба Огромное спасибо всем откликнувшимся)Вообщем помог танец с бубном))))Закоротил NRST на землю и пытался прошить, он долго не прошивался, в итоге после смены проекта- прошился, что на мой взгляд немного странно, т.к строки : RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN; GPIOA->MODER |= GPIO_MODER_MODER13_0; я давно убрал!Ну и после очистки памяти изначальный проект заработал)))) Кстати в интернете нашел еще один 100 пудовый вариант: Просто подтянуть линию BOOT1 к единичке и подать питание. Контроллер войдет в bootloader, но при этом будет прекрасно прошиваться) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться