С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
1

Не зашивается отладочная плата через программатор

12.11.2017, 00:08. Просмотров 1176. Ответов 23

Здравствуйте, уважаемые коллеги.

Ситуация обстоит следующим образом: купил stm32f103C8T6 и st-link(v2) программатор (ST-LINK/V2 (mini), Внутрисхемный программатор/отладчик JTAG для мк STM8 и STM32). Собрал проект. Проверил.сборка идёт как надо. При попытке загрузить программу на stm32 возникает вот такая ошибка:
!!!!!!!!!!!!!!!!!!!!!!

"Could not stop Cortex-M Device! Please check the JTAG cable" .

!!!!!!!!!!!!!!!!!!!!!!

Может кто-нибудь объяснить в чём дело и как с этим бороться?

за программатор я отдал 700 р , за stm32 210 р.

Заранее спасибо.

p.s. компьютер программатор видит хорошо
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2017, 00:08
Ответы с готовыми решениями:

Отладочная плата Discovery
Всем привет! Появилась необходимость "поднятия" армов. Решил остановиться пока...

Отладочная плата DK-LM3S9B96 от Luminary/TI
Значится, положил глаз некоторое время назад на следующую отладку:...

Отладочная плата olimex SAM7-EX256
1) Продам отладочную плату SAM7-EX256 фирмы OLIMEX на базе ядра ARM7 фирмы...

Самодельная отладочная плата для stm32f103
Запаял stm32f103 на плате - переходнике TQFP24-144. Расспаял питание, ресет,...

Китайская отладочная плата. Прошивка по USB.
Подскажите pls... В эту плату: http://ru.otyexpress.com/item/STM32-ARM ......

23
ValeryS
Модератор
7373 / 5574 / 707
Регистрация: 14.02.2011
Сообщений: 18,950
12.11.2017, 00:48 2
Цитата Сообщение от Renner Посмотреть сообщение
программатор (ST-LINK/V2 (mini), Внутрисхемный программатор/отладчик JTAG для мк STM8 и STM32).
покажи плату и программатор
и чем программируешь
0
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
12.11.2017, 01:08  [ТС] 3
вот здесь
0
Миниатюры
Не зашивается  отладочная плата через программатор   Не зашивается  отладочная плата через программатор  
ValeryS
Модератор
7373 / 5574 / 707
Регистрация: 14.02.2011
Сообщений: 18,950
12.11.2017, 08:12 4
Лучший ответ Сообщение было отмечено Renner как решение

Решение

про программатор ничего не скажу, не знаю
а вот про плату могу рассказать
она приходит прошитая демо программой, светодиод моргает
и прошивка защищена
необходимо снять защиту и соответственно стереть МК
как?
при помощи утилиты STM32 ST-LINK Utility
1 сконнектить плату
2 в меню Target выбрать Option Byte
3 в Появившемся окне в Read Out Protection выбрать disable
0
locm
2168 / 895 / 116
Регистрация: 28.10.2011
Сообщений: 2,866
Записей в блоге: 6
12.11.2017, 11:58 5

Не по теме:

Цитата Сообщение от Renner Посмотреть сообщение
за программатор я отдал 700 р
Вы сильно переплатили.
Его цена на данный момент 100 рублей https://ru.aliexpress.com/item/1-ST-...837620312.html
Можно было купить 7 программаторов...



Цитата Сообщение от ValeryS Посмотреть сообщение
прошивка защищена
Покупал такие платы в разное время у разных продавцов и ни в одном случае защита прошивки установлена не была. Но вероятность этого есть.
0
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
12.11.2017, 13:46  [ТС] 6
Как было первоначально. Купил плату. Светодиод в самом деле моргал. Нажимал ресет,-происходил сброс. Потом залил программу которая просто крутится. Вроде светодиодипогас. Потом решил залить программу которая просто зажигает светодиод, и тут началась "любовь". Сначала не прошивалось, ошибка... Ошибка. А потом светодиодик загорелся и всё. Даже ресетом ничего не сбрасывается.
0
locm
2168 / 895 / 116
Регистрация: 28.10.2011
Сообщений: 2,866
Записей в блоге: 6
12.11.2017, 14:04 7
Цитата Сообщение от Renner Посмотреть сообщение
Потом залил программу которая просто крутится.
Видимо в ней отключили отладочный интерфейс. Использовали STM32CubeMX?

Цитата Сообщение от Renner Посмотреть сообщение
А потом светодиодик загорелся и всё. Даже ресетом ничего не сбрасывается.
Т. е. при нажатой кнопке сброса светодиод не тухнет? Похоже что порт PC13 пробит на землю.
0
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
12.11.2017, 14:15  [ТС] 8
Не тухнет. А ножка А12 постоянно под напряжением

Добавлено через 6 минут
"Видимо в ней отключили отладочный интерфейс. Использовали STM32CubeMX?"

нет, только KeiluVision.

А как включить обратно?

Или новую плату купить?
0
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
12.11.2017, 14:22  [ТС] 9
про программатор ничего не скажу, не знаю
а вот про плату могу рассказать
она приходит прошитая демо программой, светодиод моргает
и прошивка защищена
необходимо снять защиту и соответственно стереть МК
как?
при помощи утилиты STM32 ST-LINK Utility
1 сконнектить плату
2 в меню Target выбрать Option Byte
3 в Появившемся окне в Read Out Protection выбрать disable

вот такая вот ерунда появляется после того каксконнектил плату и и пытаюсь выполнить пункты 2 и 3
0
Миниатюры
Не зашивается  отладочная плата через программатор  
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
12.11.2017, 15:08  [ТС] 10
вот такая вот ерунда при попытке выбрать Disable и нажать apply. У вас также было, кто так делал?
0
Миниатюры
Не зашивается  отладочная плата через программатор   Не зашивается  отладочная плата через программатор  
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
12.11.2017, 15:11  [ТС] 11
А если всё-таки получается начать загрузку, он потом пишет
0
Миниатюры
Не зашивается  отладочная плата через программатор  
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
12.11.2017, 16:16  [ТС] 12
Обратил внимание вот на что: Продолжительность устойчивой связи меньше минуты. Выполнил Connect. Мк подключился. Проходит меньше минуты и связь обрывается. И приходится снова подключаться
0
ValeryS
Модератор
7373 / 5574 / 707
Регистрация: 14.02.2011
Сообщений: 18,950
12.11.2017, 19:43 13
Лучший ответ Сообщение было отмечено Renner как решение

Решение

Цитата Сообщение от Renner Посмотреть сообщение
Обратил внимание вот на что:
наверно своей программой ты запретил отладочный интерфейс
отключи плату,переставь перемычки на плате, потом подключи
плата перейдет в режим загрузки
посмотри погаснет светодиод или нет
о результатах сообщи, будем дальше думать
0
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
13.11.2017, 02:48  [ТС] 14
Всем снова здравствуйте. Новая беда) Вот как всё было. Я переставил джампер в другое положение и что то зашить получилось. Но тут вот какая ерунда случилась.

Написал программу которая должна зажечь светодиод.Залил. Светодиод зажёгся. НО... Написал программу которая должна заставить светодиод моргать( приведена ниже)
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stm32f10x.h"
#include "stm32f10x_rcc.h"
#include "stm32f10x_gpio.h"
int main(void) 
{
    int i=0;
//RCC_APB2Periph_GPIOC
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
    GPIO_InitTypeDef Init;
    Init.GPIO_Mode=GPIO_Mode_Out_PP;
    Init.GPIO_Pin=GPIO_Pin_14;
    Init.GPIO_Speed=GPIO_Speed_2MHz;
    
    GPIO_Init(GPIOC,&Init);
    while(1) 
    {
    GPIO_SetBits(GPIOC,GPIO_Pin_14);
        for(i=1;50000000000;i++);
    GPIO_ResetBits(GPIOC,GPIO_Pin_14);
        for(i=1;50000000000;i++);
    }
    
}
Светодиод просто горит и не гаснет!

Вообще этот МК может работать нормально?) Почему вечно какая то х.....с ним?)

PS.я использовал свой собственный светодиод. Встроенный горит несмотря ни на что( видимо в самом деле произошёл пробой)

Добавлено через 42 минуты
Почему то в цикле while(1) проблема. программа не выполнятся дальше первого for...

Может кто подсказать как найти и устранить ошибку?

Я вообще не понимаю как в отладчике работать( А подсказать мне,кроме вас, некому(

Добавлено через 39 минут
А при попытке посадить на шину А
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include "stm32f10x.h"
#include "stm32f10x_rcc.h"
#include "stm32f10x_gpio.h"
int main(void) 
{
    uint32_t i=0;
//RCC_APB2Periph_GPIOC
    //RCC_AHBPeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
    GPIO_InitTypeDef Init;
    Init.GPIO_Mode=GPIO_Mode_Out_PP;
    Init.GPIO_Pin=GPIO_Pin_15;
    Init.GPIO_Speed=GPIO_Speed_2MHz;
    
    GPIO_Init(GPIOA,&Init);
    while(1) 
    {
        
    GPIO_SetBits(GPIOA,GPIO_Pin_15);
        
        for( i=1;i<50000000;i++){}
        
    GPIO_ResetBits(GPIOA,GPIO_Pin_15);
        
        for(i=1;i<50000;i++) {}
        
    }
    
}
Ничего вообще не работает. Несмотря на то что Keil говорит что всё прошилось и ok

Добавлено через 29 минут
А этот код работает через раз.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include "stm32f10x.h"
#include "stm32f10x_rcc.h"
#include "stm32f10x_gpio.h"
int main(void) 
{
    uint32_t i;
//RCC_APB2Periph_GPIOC
    //RCC_AHBPeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
    GPIO_InitTypeDef Init;
    Init.GPIO_Mode=GPIO_Mode_Out_PP;
    Init.GPIO_Pin=GPIO_Pin_15;
    Init.GPIO_Speed=GPIO_Speed_2MHz;
    
    GPIO_Init(GPIOC,&Init);
    while(1) 
    {
        
    GPIO_SetBits(GPIOC,GPIO_Pin_15);
        
        for( i=1;i<5000000;i++){}
        
    GPIO_ResetBits(GPIOC,GPIO_Pin_15);
        
        for(i=1;i<5000000;i++) {}
        
    }
    
}
если уменьшать предел счёта от 5000000, то результат более менее напоминает действительность, если увеличивать, то уже ерунда какая то. вот при этих данных светодиод просто горит. И нет ни намёка на моргание или мерцание,хотя оно уже должно быть заметным. Подозреваю что есть что то в файлах к проекту, что не даёт нормально работать программе. при работе с шиной А результатов нет совсем никаких. Светодиод просто не горит. С ножкой С14....просто блики и мерцания-хаотичные какие то.

Если кто может помочь разобраться, буду очень благодарен. Всем до завтра
0
_SayHello
583 / 335 / 110
Регистрация: 30.07.2015
Сообщений: 1,223
13.11.2017, 09:27 15
Renner, Первый пример очевидно не работает, так как у вас прога не выйдет из цикла первого же. Ибо 50000000000 явно выходит за рамки int. Сделайте вы аппаратную задержку на таймере. Либо чтобы сделать большую задержку вашими циклами и не переполнять переменную, сделайте цикл в цикле

Добавлено через 4 минуты
Вот тут недавно делал задержки, можешь попробовать STM32F303 задержка базовым таймером
0
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
13.11.2017, 09:58  [ТС] 16
С первой программой согласен, ну а последняя почему может не работать?
0
locm
2168 / 895 / 116
Регистрация: 28.10.2011
Сообщений: 2,866
Записей в блоге: 6
13.11.2017, 12:48 17
Цитата Сообщение от Renner Посмотреть сообщение
Вообще этот МК может работать нормально?)
Может, когда он в хороших руках.
На вас какая одежда? Случайно не генерирующая статическое электричество? Возможно вы сами того не понимая, испортили МК статикой?

Цитата Сообщение от Renner Посмотреть сообщение
Я вообще не понимаю как в отладчике работать
Это не сложно. Только я кейлом не пользуюсь. Его лицензия слишком дорогая. Стоит несколько тысяч долларов.

Цитата Сообщение от Renner Посмотреть сообщение
А подсказать мне,кроме вас, некому
Весь инет кроме этого форума у вас заблокирован?

В архиве программа, которая нормально работает на этой плате. Светодиод последовательно с резистором на 510 ом, нужно подключить между выводом B12 и общим проводом (GND).
Прошивка находится в папке bin\Release\
0
Вложения
Тип файла: zip SysTimer.zip (271.2 Кб, 14 просмотров)
Renner
0 / 0 / 0
Регистрация: 27.05.2014
Сообщений: 37
13.11.2017, 13:25  [ТС] 18
Если я сюда пишу, значит в интернете я ничего для себя не нашёл. И если не знаете что посоветовать, необязательно что то писать. Ваши шутки неуместным.
0
locm
2168 / 895 / 116
Регистрация: 28.10.2011
Сообщений: 2,866
Записей в блоге: 6
13.11.2017, 13:34 19
Цитата Сообщение от Renner Посмотреть сообщение
Ваши шутки неуместным.
Почему шутки? Микроконтроллер можно вывести из строя статикой. Это общеизвестный факт.

Программа из архива работает? Если да, тогда напишите аналогичную (использующую вывод B12) в кейле и проверьте будет ли она работать.
0
ValeryS
Модератор
7373 / 5574 / 707
Регистрация: 14.02.2011
Сообщений: 18,950
13.11.2017, 13:53 20
Цитата Сообщение от locm Посмотреть сообщение
Но вероятность этого есть.
Те которые я покупал позиционировались как заменитель ARDUINO я так понял что внутри зашит загрузчик, и чтобы его случайно не стерли он и заблокирован
Правда с ардуино ничего не вышло,чтобы запустить поморгушку, там такие танцы с бубнами
Но не очень то и хотелось стер их и использую в своих поделках, когда разводить плату и паять лень

Добавлено через 1 минуту
Цитата Сообщение от locm Посмотреть сообщение
Только я кейлом не пользуюсь. Его лицензия слишком дорогая.
до 32 кБ бесплатная, на такую фигушку хватит
0
13.11.2017, 13:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2017, 13:53

STM32F407ZET6 V3.0 китайская отладочная плата. Ищу доки.
Друзья, помогите отыскать схему платы. &lt;Изображение удалено&gt;Продавец вернул...

TI. Отладочная плата на OMAP-L138 C6000 DSP+ARM
Добрый день, в программировании микропроцессоров полный новичок, до этого писал...

USART (вывод на ПК натуральных чисел). Отладочная плата STM32f4discovery
Всем привет. Помогите разобраться с USORT в СТМ-ке. Нужно вывести данные с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru