Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

Re: STM32 новичку в ARM что к чему

Вт июн 14, 2022 17:06:12

Не, кубами и халами не пользуюсь принципиально, только низкоуровневыми либами.

Re: STM32 новичку в ARM что к чему

Вт июн 14, 2022 17:13:36

Одна из SWD'шных ног сожжена статикой? Можно проверить и поногодрыжить…

Re: STM32 новичку в ARM что к чему

Вт июн 14, 2022 21:42:51

Если бы SWD-шные ноги были бы сожжены, то МК не прошивался бы даже.

Re: STM32 новичку в ARM что к чему

Вт июн 14, 2022 22:04:04

Значит, остается лишь грепать по всем исходникам флаги отключения SWD/JTAG: вполне возможно, что с копипастой из старого кода, оно где-то пролезло.

Re: STM32 новичку в ARM что к чему

Ср июн 15, 2022 06:02:48

только низкоуровневыми либами.
Искать где "низкоуровневая либа" с GPIOA->MODER нарукоблудила.

Re: STM32 новичку в ARM что к чему

Ср июн 15, 2022 12:05:07

Вывел на экранчик железки, которую делаю, состояния некоторых регистров.
1) GPIOA->MODER для SWD в состоянии альтернативной функции как по умолчанию для порта А.
2) RCC->APB2RSTR->DBGMCURST = 0
3) RCC->APB2ENR->DBGMCUEN = 1 - включал вручную, так как по умолчанию был выключен
4) DBGMCU->CR = 6, изменение значения на работу не влияло

Вроде бы с SWD больше ничего не связано. Программирование остаётся всё равно только под ресетом.

Re: STM32 новичку в ARM что к чему

Ср июн 15, 2022 16:08:17

А как насчет альтернативной функции? Что в GPIOA->AFR[1]? GPIOA->PUPDR? Посмотри в мануале табличку 25 в разделе 9.4.12 (GPIO register map and reset values).
И нет ли защиты?
Последний раз редактировалось Eddy_Em Ср июн 15, 2022 16:11:18, всего редактировалось 1 раз.

Re: STM32 новичку в ARM что к чему

Ср июн 15, 2022 16:08:38

Программирование остаётся всё равно только под ресетом

Такое бывает, когда в коде меняется функция пина. Возможно, ты не всё нашёл.

Re: STM32 новичку в ARM что к чему

Ср июн 15, 2022 18:38:56

Serj_K, если вы прошиваете через ST-Link Utility, тогда в его настройках (Settings) переключите режим соединения на Hot Plug и режим сброса выберите Software System Reset (не обязательно). Потому что если назначение пинов PA13, PA14 не менялось, то подключение по SWD "на ходу" без сброса производится отправкой особой комбинации сигналов. Для этого программатор-отладчик должен быть переключен в соответствующий режим. IDE обычно самостоятельно это делает. Либо, если через IDE прошиваете, то в ее настройках проверьте подобный режим

Re: STM32 новичку в ARM что к чему

Чт июн 16, 2022 10:00:32

Up2805, спасибо, с Software System Reset даже в нормальном режиме коннектится нормально. Теперь хоть прошивать можно без аппаратной кнопки сброса. Жаль, что BlackMagik пока не заработал. Если не заработает, придётся перенастраивать отладку под ST-Link, а он мне меньше нравится, так как не хавает китайские псевдо-стмки.
Вообще ситуация странная. Порт А был изначально настроен и отладка работала, а потом без перенастройки порта отладка отвалилась. Попробую разобраться в процессе работы.

Re: STM32 новичку в ARM что к чему

Ср июн 22, 2022 18:22:26

всем привет пол дня убил пол дня на энокодер, купленный в чипе новый но валялся давно, так и не смог его нормально запустить а оказалось что с ним что-то не так он в одну сторону ведет себя как нормальный энкодер а в другую у него почему то совпадает старт фронта, я и во и так и так пока понял что дело то в бобине :shock: ....
Изображение
тут еще кокой то прикол кайл мой почему-то не запускает прерывания таймера на котором энкодер, я че тока не делал и HAL и LL и CMSIS. Потом этот же проект компилирую под CUBIDE и там все заработало сразу не пойму раньше такого не было, я его недавно скачал с оф. сайта через vpn, может кто сталкивался?

Re: STM32 новичку в ARM что к чему

Чт июн 30, 2022 10:59:17

Всем добра строи все свой бп на мк набросал уже почти программу осталось только настройка. Скажу несколько слов в защиту не любителей халакуба, пытался запустить обычный ацп на мк f373с применением библиотеки LL, на регулярном канале все быстро заработало а вот на ижекционном(прошу извинить за мой французский) ничего так и не заработало переписал инициализацию вручную и все очень быстро заработало. Так что самый большой плюс куба скорость в данном случае как то сильно пострадали, вот и выходит что лучше бы вручную все прописывал меньше времени ушло бы... Ну да бог с ним двигаемся дальше Спрошу тут, т.к. не знаю как разбить вопрос и отправить его часть в "питание". У меня будет вполне себе обычная схема БП коих на просторах интерната много т.к. 2 операционника управляют одним или более транзисторами, один отвечает за ток другой за напряжение. Вот только опорное напряжение будет формировать МК от поворота энкодера, это я уже все запрограммировал и сам себя МК меряет нормально, т.е. АЦП меряет выход ЦАП. Теперь вопрос стоит об измерение на выходе, думки у меня такие как обычно операционник и МК ну тоесть вариант 2, но тут мучают всякие нехорошие мысли у сигма-дельта АЦП можно вывести оба вывода в наружу и + и - а еще и можно включить усиление в 32 раза вот и думаю о варианте 1, но тут возникнет другая проблема как защитить выводы МК хватит ли этого коэф.... Что скажут знатоки?
Изображение Изображение Изображение

Re: STM32 новичку в ARM что к чему

Сб июл 02, 2022 12:37:59

Калибруй смещение при пуске, и всё будет ОК.

Re: STM32 новичку в ARM что к чему

Сб июл 02, 2022 12:52:24

Пин BOOT0 сидит на земле, то есть используется запуск из прошивки флеш
При отладке под эмулятором, лучше делать как раз наоборот. Чтобы предыдущее содержимое флеши никак не влияло на старт новой отладочной сессии.

Re: STM32 новичку в ARM что к чему

Чт сен 22, 2022 21:30:07

есть такой вопросик. можно ли уговорить компилятор более активно использовать адресацию со смещением? (F103, Keil.v5, C (не плюсы), оптимизация -время) Конкретизирую:
в обработчике исп. 9 адресов (2 переменные, 3 рег. SPI, 4 рег. TIM1) компиль только для трех из них исп. обращение по смещению.
или альтернатива только вставка asm?
сейчас мне пока не критично, но на будущее заинтересовал этот вопрос.
(в рабочее время выхода в тырнет не имею, если что отвечу только вечером)

Re: STM32 новичку в ARM что к чему

Пт сен 23, 2022 09:18:46

a797945, переходите на 6-й компилятор. Оптимизация -O3.

Re: STM32 новичку в ARM что к чему

Пт сен 23, 2022 17:42:42

понял. наглядно.
Спасибо

Re: STM32 новичку в ARM что к чему

Вс сен 25, 2022 22:38:00

ковыряю один из клонов stm32 на m4f.
обработчик прерывания таймера завершается кодом:
Код:
TIM4->SR &= ~(0x01);

проблема в том, что флаг прерывания не снимается с первого раза. прерывание отрабатывает по два раза. поставил барьерную инструкцию DSB после упомянутого кода, заработало как надо.
это нормальное поведение для STM32? кто-нибудь сталкивался?

Re: STM32 новичку в ARM что к чему

Вс сен 25, 2022 23:41:42

Нормально. Барьер не нужен, нужна задержка. Просто переместите команду очистки флага ближе к началу обработчика прерывания. А саму команду я бы упростил до записи нуля.

Re: STM32 новичку в ARM что к чему

Пн сен 26, 2022 06:35:06

Нормально. Барьер не нужен, нужна задержка. Просто переместите команду очистки флага ближе к началу обработчика прерывания. А саму команду я бы упростил до записи нуля.

угу. проверил на F103. та же самая фигня.
Ответить