реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
stm32f4
сообщение Feb 28 2013, 10:21
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 11-08-12
Пользователь №: 73 098



Сразу к делу, пару часов назад случайно в проекте допустил ошибку, изменил состояние регистра MODER порта A 13-той ноги на OUTPUT, а это одна из линий(SWDIO) интерфейса SWD !!!!!
[PHP] RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;
GPIOA->MODER |= GPIO_MODER_MODER13_0;[/PHP]

Собственно теперь никак не могу ни стереть не прошить МК(STM32f405) (((((((
Я уже и через CooCox,Keil и даже STM32 ST-LINK Utility пробовал, не помогают((Контроллер живет своей жизнью!!!
Неужели из-за такой ерунды выбрасывать проц:-?
что делать?
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Feb 28 2013, 10:56
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



А стереть через загрузчик по UART... не???
Go to the top of the page
 
+Quote Post
nx6310
сообщение Feb 28 2013, 11:00
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 28-06-10
Пользователь №: 58 174



попробуй перед началом прошивки кварц закоротить. По идее из-за этого программа должна зависнуть на этапе инициализации тактовой частоты HSE и не успеет инициализировать порты.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Feb 28 2013, 12:18
Сообщение #4


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Что за распайка SWD разъёма, NRST присутствует?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Feb 28 2013, 14:51
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



При завешенном NRST стирание ERASE CHIP через SEGGER J-FLASH ARM по SWD не происходит. Проверил на STM32F101.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Feb 28 2013, 15:46
Сообщение #6


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(Genadi Zawidowski @ Feb 28 2013, 18:51) *
А ели он не завешен, а управляется программатором?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Feb 28 2013, 20:56
Сообщение #7


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Не могу проверить. Вы думаете, программатор успеет снять ресет и перешить?

Сообщение отредактировал Genadi Zawidowski - Feb 28 2013, 20:56
Go to the top of the page
 
+Quote Post
KRS
сообщение Feb 28 2013, 23:19
Сообщение #8


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(Genadi Zawidowski @ Mar 1 2013, 00:56) *
Не могу проверить. Вы думаете, программатор успеет снять ресет и перешить?

SWD позволяет подцепиться когда проц находится в ресете и задать остановку на ресет векторе. После снятия ресета проц встанет до исполнения первой команды!
Go to the top of the page
 
+Quote Post
MiklPolikov
сообщение Mar 1 2013, 02:41
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702



Надо сделать так :
1)Подтягиваете ногу NRST к земле, и пытаетесь шить по JTAG или SWD. Вылезает ошибка.
2)После этого отсоединяете NRST от земли, и снова шьёте. Должно начать шится.



--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
Go to the top of the page
 
+Quote Post
drum1987
сообщение Mar 1 2013, 05:08
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 255
Регистрация: 3-02-09
Из: Омск
Пользователь №: 44 323



Используйте пин boot0 чтобы при включении питания проц пытался загрузится не с флеш а с usart... Потом цепляйте SWD и стирайте память контроллера. Мне помогло.
Go to the top of the page
 
+Quote Post
stm32f4
сообщение Mar 1 2013, 05:51
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 11-08-12
Пользователь №: 73 098



Огромное спасибо всем откликнувшимся)Вообщем помог танец с бубном))))Закоротил NRST на землю и пытался прошить, он долго не прошивался, в итоге после смены проекта- прошился, что на мой взгляд немного странно, т.к строки :
Цитата
RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;
GPIOA->MODER |= GPIO_MODER_MODER13_0;

я давно убрал!Ну и после очистки памяти изначальный проект заработал))))
Кстати в интернете нашел еще один 100 пудовый вариант: Просто подтянуть линию BOOT1 к единичке и подать питание. Контроллер войдет в bootloader, но при этом будет прекрасно прошиваться)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th June 2025 - 08:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.07273 секунд с 7
ELECTRONIX ©2004-2016