Всем привет! В общем проблема такая - при запуске отладки из IAR - все работает замечательно. Если же отладчик не подключен - при перезапуске перестает работать половина периферии, например UART... С чем сие может быть связано? С отладчиком работает в любом случае, даже при запуске программы без прошивки
UPD: если отключить прерывание от DSP (это спецМК) все нормально запускается... странно все это
UART говорите? Может быть у вас просто отвалилась земля на RS-232 и поэтому при отключении разъёма отладчика данные перестают выдаваться ?
Возможно также проблема с раскачкой кварца, а запуск от отладчика даёт больше времени на раскачку, а при отключении всё переходит на встроенный HSI clock.
И кстати, почему IAR ? Вроде бы есть бесплатный и более удобный CooCox + GCC под ARM ?
Может быть у вас просто отвалилась земля на RS-232 и поэтому при отключении разъёма отладчика данные перестают выдаваться ?
я разъем отладчика не отключаю - J-Link на плате распаян. Просто передергиваю питание. Я с этим наполовину разобрался - в коде была неявная инициализация этой периферии. Моя была до нее. После того, как поставил в нужном порядке все ок, но это не объясняет почему с дебаггером все работало и так.
Zud писал(а):
И кстати, почему IAR ?
это промышленный стандарт. Все библиотеки и прочее на нем. В данном конкретном случае - демонстрационный проект на IAR. Там посмотрим, может и перейдем на gcc.
Заголовок сообщения: Re: STM32 работает нормально только с отладчиком
Добавлено: Пт мар 14, 2014 11:34:38
Опытный кот
Карма: 16
Рейтинг сообщений: 166
Зарегистрирован: Вс дек 02, 2012 16:58:33 Сообщений: 826 Откуда: Уже не город Белых гор
Рейтинг сообщения:0
C дебаггером инициализация проходит от предыдущей сессии. Питание проца не сбрасывается. У меня была подобная проблема из-за пропущенной инициализации периферии. Дебаггер обнулял периферию при запуске и всё работало, а при отдельной работе были глюки.
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Не знаю, как GARMIN, но у меня вся инициализация переферии при запуске ядра происходит через: - Разрешение работы переферии - Сброс переферии - Конфигурация переферии.
Ни разу после этого кристалл не зависал и не спотыкался на запуске чего-либо. Даже I2C стартует с первой попытки.
Не знаю, как GARMIN, но у меня вся инициализация переферии при запуске ядра происходит через: - Разрешение работы переферии - Сброс переферии - Конфигурация переферии.
Ни разу после этого кристалл не зависал и не спотыкался на запуске чего-либо. Даже I2C стартует с первой попытки.
Я пробовал вот так. Урезанный проект до нельзя. Тем не менее не стартует без отладчика. Проект пересобирал. Уж и не знаю с какой стороны подойти. Плата на stm32f100. Работаю в кейле.
atrel, а с какими ключами это дело собирается? Покажите Makefile. Может, оно там в каком-то дико отладочном режиме?
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
Ну нифига ж себе! Это как вообще возможно: не знать, как у тебя исходники собираются? А где лежат стартап, линкер-скрипт и CMSIS — тоже неизвестно?
А как тогда компиляция производится? Я, например, просто в консоли пишу make, читаю сообщения, если ошибок нет — пишу make dfuboot, make boot или make flash (в зависимости от способа заливки прошивки) и прошивка попадает в МК. Далее перехожу в соседнюю вкладку консольки, где открываю терминал и работаю с МК… А как это можно делать иначе?
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
Спасибо за ответ Мурик . Да, работает. В чём секрет? Я менял тактирование, пробовал играться с обнулением переферии, заново переделывал проект, а оно не работает.
Eddy_Em писал(а):
Ну нифига ж себе! Это как вообще возможно: не знать, как у тебя исходники собираются? А где лежат стартап, линкер-скрипт и CMSIS — тоже неизвестно?
А как тогда компиляция производится? Я, например, просто в консоли пишу make, читаю сообщения, если ошибок нет — пишу make dfuboot, make boot или make flash (в зависимости от способа заливки прошивки) и прошивка попадает в МК. Далее перехожу в соседнюю вкладку консольки, где открываю терминал и работаю с МК… А как это можно делать иначе?
Там есть "Option for target" и кнопка "Rebuild". Но это так, между нами.
Последний раз редактировалось atrel Ср мар 10, 2021 19:27:57, всего редактировалось 2 раз(а).
Там есть "Option for target" и кнопка "Rebuild". Но это так, между нами.
Абдурина что ли? Только там через жопу предлагается собирать исходники!
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
Я, например, просто в консоли пишу make, читаю сообщения, если ошибок нет — пишу make dfuboot, make boot или make flash (в зависимости от способа заливки прошивки) и прошивка попадает в МК. Далее перехожу в соседнюю вкладку консольки, где открываю терминал и работаю с МК…
Нормальный подход, чо... В то время, когда другие просто жмут одну кнопочку в IDE Каждый др.чет как хочет
Но всётаки уже месяц бъюсь и не понимаю почему у кого-то работает, а у меня нет
Думаю, что проблема в отсутствии понимания того, как оно должно работать. Тактирование включено правильно? Прошивка по правильному адресу загружается?
Ну, а насчет "нажать кнопочку" или "нажать клавосочетание" — это и у меня в qt-creator'е есть. Только там же экранчик для выхлопа совсем невменяемо мелких размеров. А в консольке полноценный - на весь экран. Удобно. Особенно в make debug видно весь выхлоп и какие баги возникают (в режиме debug я активирую -Wall -Wextra -Werror, чтобы не было соблазна проигнорировать варнинги).
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
Последний раз редактировалось Eddy_Em Чт мар 11, 2021 10:56:41, всего редактировалось 2 раз(а).
Весь секрет в том что я код что вы выложили скопировал в IDE и скомпилировал. Почему у вас не работает не знаю - кейлом не пользуюсь. Он слишком дорого стоит - больше 3500 долларов! Я использую бесплатную IDE.
Весь секрет в том что я код что вы выложили скопировал в IDE и скомпилировал. Почему у вас не работает не знаю - кейлом не пользуюсь. Он слишком дорого стоит - больше 3500 долларов! Я использую бесплатную IDE.
Благодарствую. Буду сличать настройки.
Но и я как бы не шикую. Демо версии для изучения МК, полагаю, должно хватить. Выбрал её исключительно из мнения, что работа в подобной IDE поможет сконцентрироваться на изучении STM-ок.
atrel, если вы именно на изучении STM'ок хотите сконцентрироваться, то сделайте сначала без излишне хитрых IDE: напишите стартап, ld-скрипт и Makefile, соберите простейший пример…
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения