14.06.2018, 09:33
|
|
Временная регистрация
Регистрация: 15.12.2006
Сообщений: 74
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 3 сообщении(ях)
|
не могу отладить плату st-link
Отлаживаю плату собственной разработки. Моя плата подключается к компу через USB и от туда же берется питание 5 Вольт. А St-link я беру на плате discovery stm32f429, другого St-link-а у меня нет. В программе я еще не написал ни одной строчки, всю программу мне сгенерировал stm32cubemx, так что ошибок там нет. Прошивает этот St-link нормально, не выдает ошибок. После программирования в системе появляется виртуальный компорт COM7, на который я с помощью терминальной программы могу писать любые байты. Далее я хочу отладить эту программу, и запускаю ее в режиме debug из keil и ставлю точку останова на функциюstatic int8_t CDC_Receмеяive_FS (uint8_t* Buf, uint32_t *Len) и пытаюсь что либо передать терминальной программой и жду, когда отладка остановится на этой точке. Но терминал отказывается передавать и эта точка останова никогда не срабатывает. Терминальная программа начинает виснуть. Я подозреваю, что я плохо развел плату и поэтому два USB имея общую массу мешают друг другу, когда начинает работать STLink. Может попытаться использовать USB кабели с ферритовыми кольцами? Или может использовать два компа, один для подключения моей платы, другой для подключения Stlink-а?
Последний раз редактировалось retro55; 14.06.2018 в 09:50.
|
|
|
|
14.06.2018, 10:46
|
|
Модератор
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,257
Сказал спасибо: 11,170
Сказали Спасибо 3,858 раз(а) в 2,928 сообщении(ях)
|
Re: не могу отладить плату st-link
Из такой логики ни одно устройство с более чем одним USB портом не должно работать по определению…
Спокойно работают платы одновременно с внутренним USB PHY и USB-TTL и отладчиком на USB, при питании их от USB.
Попробуйте просто вариант пооператорного выполнения для начала - удасться ли так добраться до той точки. Может где-то логика в программе подкачала…
Неплохо бы проверить качество всех соединений между платами…
Провода можно сделать покороче…
В тексте поставьте XOR на порт со светодиодом - его моргание позволит судить о вызове той функции.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
|
|
|
|
14.06.2018, 11:42
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: не могу отладить плату st-link
Просто USB интерфейс не будет ждать, пока вы там в дебаге убедитесь, что ваша функция работает. Он вас по таймауту отбрасывает.
Вы вообще в main попадаете?
|
|
|
|
14.06.2018, 11:47
|
|
Временная регистрация
Регистрация: 15.12.2006
Сообщений: 74
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 3 сообщении(ях)
|
Re: не могу отладить плату st-link
Сообщение от retro55
|
k. Может попытаться использовать USB кабели с ферритовыми кольцами? Или может использовать два компа, один для подключения моей платы, другой для подключения Stlink-а?
|
Купил два кабеля с ферритовыми кольцами, только выбросил 100 грн, не помогло.
|
|
|
|
14.06.2018, 12:23
|
|
Модератор
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,257
Сказал спасибо: 11,170
Сказали Спасибо 3,858 раз(а) в 2,928 сообщении(ях)
|
Re: не могу отладить плату st-link
retro55, те кольца - просто фильтры синфазных помех. Их громкость на скорость никак не влияет
Таки проверить без отладчика работу с использованием светодиода.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
|
|
|
|
14.06.2018, 12:38
|
|
Временная регистрация
Регистрация: 15.12.2006
Сообщений: 74
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 3 сообщении(ях)
|
Re: не могу отладить плату st-link
Сообщение от Easyrider83
|
Просто USB интерфейс не будет ждать, пока вы там в дебаге убедитесь, что ваша функция работает. Он вас по таймауту отбрасывает.
Вы вообще в main попадаете?
|
для отладки написал пару строк в вечный цикл
while (1)
{HAL_Delay(1000) ;
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_ ;
/* USER CODE END WHILE */
Светодиод мигает с периодом 2 сек.
run stop работают нормально.
При старте debug сессии он останавливается один раз на первом операторе main(), затем не останавливается, пока не нажмешь stop. После запуска debug сессии запускаю терминальную программу, которая в режиме debug виснет. Дурной сайт 8 ) заменил смайликом.
Последний раз редактировалось retro55; 14.06.2018 в 12:41.
|
|
|
|
14.06.2018, 13:02
|
|
Модератор
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,257
Сказал спасибо: 11,170
Сказали Спасибо 3,858 раз(а) в 2,928 сообщении(ях)
|
Re: не могу отладить плату st-link
retro55, для кода есть целый набор тегов кнопками (Расширенный режим) или вручную из списка по ссылке "BB коды" чуть ниже слева от окна для текста.
А восемь со скобкой - таки смайлик , что вполне естественно для простого текста.
Кстати лишний пробел в той записи между 8 и ) никак не повлияет на ее интерпретацию как участниками, так и компилятором
А вот оператор HAL_GPIO_TogglePin ( GPIOA, GPIO_PIN_8 ); вполне можно перед той функцией вставить и посмотреть на выполнение. Светодиод будет менять состояние при каждом выполнении (та самая функция XOR для порта со светодиодом ). delay таки лучше не использовать без явной на то необходимости.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
Последний раз редактировалось mike-y-k; 14.06.2018 в 13:08.
|
|
|
|
14.06.2018, 13:16
|
|
Временная регистрация
Регистрация: 15.12.2006
Сообщений: 74
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 3 сообщении(ях)
|
Re: не могу отладить плату st-link
Сообщение от mike-y-k
|
retro55,
А вот оператор HAL_GPIO_TogglePin ( GPIOA, GPIO_PIN_8 ); вполне можно перед той функцией вставить и посмотреть на выполнение. Светодиод будет менять состояние при каждом выполнении (та самая функция XOR для порта со светодиодом ). delay таки лучше не использовать без явной на то необходимости.
|
Я говорю терминальная программа виснет, в нормальном не debug режиме она не виснет.
|
|
|
|
14.06.2018, 20:53
|
|
Временная регистрация
Регистрация: 15.12.2006
Сообщений: 74
Сказал спасибо: 1
Сказали Спасибо 13 раз(а) в 3 сообщении(ях)
|
Re: не могу отладить плату st-link
СЛАВА ВЕЛИКОМУ МАТЕМАТИКУ, позор Виктору Перестукину!
Стоило подключить внешнее питание и все пошло. Плата самопальная. Толи плата больше гребет, чем прописано в дискрипторе, толи наоборот в дискрипторе прописано много и хост не может обеспечить такой ток, буду копать. Хотелось, чтоб плат работала и от USB, и от внешнего питания. Кто знает как изменить дискриптор в части потребления платы? УРА УРА УРА! Я так понял нужно подправить три строки 0x32, /* MaxPower 100 mA */ ток деленный на 2, только в какую сторону.
Последний раз редактировалось retro55; 14.06.2018 в 22:52.
|
|
|
|
14.06.2018, 23:34
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,637
Сказал спасибо: 116
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
|
Re: не могу отладить плату st-link
Сообщение от retro55
|
Толи плата больше гребет, чем прописано в дискрипторе, толи наоборот в дискрипторе прописано много и хост не может обеспечить такой ток
|
А точно эти параметры хоть какое-то значение имеют? Помнится, делал пару железяк, которые обозначались как self-powered, но вполне нормально 300-400мА отжирали от USB…
__________________
Союз Советских Социалистических Округов Северной Америки
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 15:29.
|
|