|
-70 / 9 / 1
Регистрация: 18.09.2020
Сообщений: 1,546
|
||||||
Cube страчивает HAL_Delay (при переменной)12.10.2025, 20:13. Показов 2228. Ответов 21
Метки нет (Все метки)
Изучаю Cube: помигал светодиодом, теперь ловлю АЦП. По простачку - чтоб не выводить на ПК, хочу чтоб светодиод изменял скорость мигания в зависимости от АЦП. Подпаял переменник на первый порт, края - на питания; настроил всё по примеру; - соответствующая переменная изменения ловит. Листинг такой:
В отладке изменения "adcResult2" наблюдаю - но светодиод (при полном Ране) своё мигание не изменяет - почему? При этом: при перекомпиляции с явно заданным значением (1000 и др.) - нормально изменяет скорость. Это наводит на мысль - что оная функция не воспринимает переменки - а только константы. - прошу прокомментировать. В переменных два разных типа установил ради изучения - наследуются нормально. От АЦП приходят значения в диапазоне от 3800 до 4300 при полном провороте потенциометра (когда скручивается он от нуля до наибольшего - что пропагандирует изменения значений от 0 до 63350 примерно) - с чего-бы это?
0
|
||||||
| 12.10.2025, 20:13 | |
|
Ответы с готовыми решениями:
21
К знатокам кодогенератора Cube. Как добавить в проект, созданный Cube кубом еще одно прерывания без Cube PinboardV2+STM32F103C8T6+CUBE+KEIL Не работает рабочая прошивка в Led cube 8*8*8 |
|
-70 / 9 / 1
Регистрация: 18.09.2020
Сообщений: 1,546
|
||
| 13.10.2025, 17:42 [ТС] | ||
|
Вопрос, собственно, про восприимчивость переменных у HAL_Delay. *** Я переделал на реакцию на таймер - но не могу поймать внятное объяснение - как изменять период таймера на лету: инфы попадающиеся мне завалены темами про таймер и другими - вперемешку, - трудно понять моё. Собственно сам таймер у меня работает, и я не хочу помещать в листинг уже сделанное, осталось только сменить период - как? Я посмотрел переменные объекта - нашёл "Period" - но мне не удалось правильно вместить оное в листинг. Мне, собственно, надо изменять период таймера по значению из АЦП - прошу прояснить и кинуть ссылкой на пример. *** Сейчас сделал через HAL_Delay с константой - только закрутил это по циклу: вроде работает - но замечаются нестабильности: при постоянном положении потенциометра на АЦП значения из него изменяются; при крайних положениях - вообще происходят сбои - что надо перевключать платку; мне кажется - это связано с шумностью каналов. Открыт вопрос: почему значения из регистра АЦП получаются от 3800 до 4300? Я ожидал от 0 до 63350 примерно...
0
|
||
|
Windows must die
|
||||||
| 13.10.2025, 18:53 | ||||||
|
Кручу переменный резистор и меняю скважность ШИМ четырех светодиодов. Элементарным кодом:
0
|
||||||
|
60 / 185 / 31
Регистрация: 14.02.2013
Сообщений: 1,668
|
|
| 13.10.2025, 21:43 | |
|
Levontay, надо узнать int adcResult2 = 0; это по моему объявление переменной как 16 битной поэтому когда считаете adcResult2=(adcResult-3700)*3; то результат будет на выходе длинной 32 бита может от того и зависает. Кстати сразу говорю учитесь работать с АЦП без HAL.
1
|
|
|
-70 / 9 / 1
Регистрация: 18.09.2020
Сообщений: 1,546
|
|||
| 14.10.2025, 18:56 [ТС] | |||
|
- страхыття. Оный дэлэй представляет собой, собственно - цикл, - может я просто поставлю оный цикл себе или напишу собственную процедуру? *** Вопрос про таймер в силе. *** В видосе мастер смотрел переменные отладки через окно маониторинга программатора - где это? И как вообще лучше мониторить переменные в реальном времени? - чтоб я крутил переменник - и наблюдал увеличение и уменьшение значений (а не как щас - через F8)?
0
|
|||
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,851
|
|
| 14.10.2025, 21:54 | |
|
0
|
|
|
60 / 185 / 31
Регистрация: 14.02.2013
Сообщений: 1,668
|
|||||||||||
| 14.10.2025, 23:02 | |||||||||||
|
ValeryS, ещё в кубе есть способ после целочисленного значения ставить заглавную "U"
Levontay, это сама функция
0
|
|||||||||||
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,851
|
|||
| 14.10.2025, 23:24 | |||
|
0
|
|||
|
-70 / 9 / 1
Регистрация: 18.09.2020
Сообщений: 1,546
|
|||||||
| 15.10.2025, 08:21 [ТС] | |||||||
|
Я вошёл в процедуру:
Мне кажется - используется компилированный ранее код этой процедуры - при первоисточнике которого было использовано значение "2". *** Какими кнопками можно пошагово трассировать с заходом и "без" в процедуру? А-то я каждый раз делаю сборку по F11 и отладку с брек-поинтами по F8... Добавлено через 1 минуту
0
|
|||||||
|
|
|||||
| 15.10.2025, 11:59 | |||||
|
Проверьте при крайне правом, при среднем и крайне левом положении и напишите какие будут цифры. И еще объясните как так вышло что Откройте меню отладчика и посмотрите какие кнопки назначены на какие действия. Тем более не аппаратный. Наверное имелось в виду используете ST-Link, J-link или еще что-то? И со стороны компа что?
0
|
|||||
|
-70 / 9 / 1
Регистрация: 18.09.2020
Сообщений: 1,546
|
|||
| 15.10.2025, 13:21 [ТС] | |||
|
Щас замерил - напряжения "не те" - буду перепаивать. Собственно вопрос был не про напряжения - а про чихорду в библиотечной! процедуре (и, напомню - про таймер).
0
|
|||
|
|
||||
| 15.10.2025, 13:37 | ||||
![]() Может где-то накосячили при сборке или комплектующие неисправны, как мы это узнаем?
0
|
||||
|
-70 / 9 / 1
Регистрация: 18.09.2020
Сообщений: 1,546
|
||||||
| 15.10.2025, 14:20 [ТС] | ||||||
|
Подправил напряжения; проследил соответствие на АЦП: 200-3700 получается.
Для быстрого мелькания поделил выход на 5 - получил меньше тысячи периода для HAL_Delay. По трассировке "внутри" я замечаю что внутренняя переменная "wait" изменяется на единицу в любом случае (как я и писал выше), и происходит это в цикле:
Собственно мне кажется подозрительным - странное приращение в итерации - на "(uint32_t)(uwTickFreq)": это получается - что при каждой итерации мы объявляем новую переменную - так-ли? "uwTickFreq" типа "HAL_TickFreqTypeDef" имеет значение "HAL_TICK_FREQ_1KHZ" - это что с чем совместимо? - странно... *** Другая прога с АЦП - где задержка делается зацикливанием "HAL_Delay с константой" - заработала нормально.
0
|
||||||
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,851
|
||
| 15.10.2025, 16:14 | ||
|
Если это STM32CubeIDE то для проверки переменных без остановки программы нужно переменную подсоединить в окно Live Expressions
0
|
||
|
-70 / 9 / 1
Регистрация: 18.09.2020
Сообщений: 1,546
|
|||
| 15.10.2025, 20:07 [ТС] | |||
|
- пусто...
0
|
|||
|
Модератор
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,851
|
||
| 15.10.2025, 20:34 | ||
0
|
||
| 15.10.2025, 20:34 | |
|
Помогаю со студенческими работами здесь
20
Cube+Coocox+SD Card (SDIO) Документация к HAL и CUBE на русском cube + keil disk_timerproc STM32F103 + Cube + SD STM32F105 Cube USB VCP Unknown device Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1
У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\
А в самом низу файла-профиля. . .
|