Перейти к содержанию

Внутреннее тактирование HSI на STM32F103C8T6


Prominence

Рекомендуемые сообщения

Здравствуйте, в силу поставленных передо мной ограничений (на плате нет внешнего резонатора), я вынужден пытаться запустить STM32F103 от внутреннего тактирования, да ещё и под 72МГц.

Правильный ли код?

    RCC_DeInit();  //Сброс
    RCC_HSEConfig(RCC_HSE_OFF); //Выключение внешнего тактирования (на всякий случай)
    RCC_PLLConfig( RCC_PLLSource_HSI_Div1, RCC_PLLMul_9); //использование множителя 9 для получения 72МГц, но компилятор ругается на делитель Div1

Дескать, минимум можно использовать Div2, а совсем без делителя нельзя, как ещё можно выставить множитель?


    RCC_PLLCmd( ENABLE); //Включение PLL как такового
    RCC_SYSCLKConfig( RCC_SYSCLKSource_PLLCLK); //Использование PLL в качестве основного источника тактирования

Вышеперечисленная шняга будет вызываться в мэйне, но это совсем другая история, пока что с этим туплю.

Изменено пользователем Prominence
Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, Prominence сказал:

Правильный ли код?

Двумя строками оно не настраивается. Открываем поисковик, вбиваем STM32 HSI, заходим по первой же ссылке http://easyelectronics.ru/arm-uchebnyj-kurs-taktovyj-generator-stm32.html и видим подробнейшее описание работы источников тактирования и их настройки. В чем сложность?

 

2 часа назад, Prominence сказал:

да ещё и под 72МГц.

В чем необходимость именно такой частоты?

Ссылка на комментарий
Поделиться на другие сайты

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Для определения правильных параметров загружаю stm32cubemx, выставляю нужные частоты делители и все получается наглядно. Затем эти значения вношу в проект (не HAL).  HAL не использую. Только для визуального понимания настроек частот и разных пинов.

Ссылка на комментарий
Поделиться на другие сайты

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

19 часов назад, BARS_ сказал:

Двумя строками оно не настраивается. Открываем поисковик, вбиваем STM32 HSI, заходим по первой же ссылке http://easyelectronics.ru/arm-uchebnyj-kurs-taktovyj-generator-stm32.html и видим подробнейшее описание работы источников тактирования и их настройки. В чем сложность?

 

В чем необходимость именно такой частоты?

Сложность в недостатке навыков программирования, помноженных на сжатые сроки. Получается, что и учиться некогда, и сделать надо. Глупо и нагло конечно, но другого выхода нет.

 

Ссылка на комментарий
Поделиться на другие сайты

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

1 час назад, Prominence сказал:

Сложность в недостатке навыков программирования, помноженных на сжатые сроки.

Нуль помноженный на нечто, в итоге один хрен даст нуль

Ссылка на комментарий
Поделиться на другие сайты

может ошибаюсь, но насколько я понял, из своего опыта, когда включаешь выключаешь модули тактирования надо отслеживать флаг который устанавливается когда модуль HSI например, или любой другой вышел на рабочий уровень, если не отслеживать в цикле флаг, а шагать дальше возможно зависание. Да и с HSI он стартует при сбросе

Ссылка на комментарий
Поделиться на другие сайты

Интересно халокубщики что вообще не смотрят в документацию. Вот как будет проходить сигнал:

5b140c48deace_12.thumb.JPG.7394097f0715f63ce983705f3d1da5c8.JPG

я даже специально одну сносочку скопировал тоже.

Ссылка на комментарий
Поделиться на другие сайты

Сложность в недостатке навыков программирования, помноженных на сжатые сроки. Получается, что и учиться некогда, и сделать надо. Глупо и нагло конечно, но другого выхода нет.
 
Я же дал статью, где все есть. Потратить 10 минут на прочтение тоже нельзя?
 HSI хоть и стартует сам при смерти резонатора - он стартует с залоченными портами в аварийном режиме (не помню уже где вычитал).
Бред. МК стартует абсолютно нормально, просто на тактовой 8МГц
Ссылка на комментарий
Поделиться на другие сайты

11 час назад, BARS_ сказал:

Бред. МК стартует абсолютно нормально, просто на тактовой 8МГц

То есть можно вообще не париться, не инициировать ничего, и он сам от внутреннего заведётся? Я запутался ещё больше, начал с того, что пытался внутреннему тактированию просто добавить множитель, который с минимальным делителем Div1 не компилировался.

Статью я прочитал, много статей читал, и то, что там пишут - зачастую разнится, а конкретных примеров в коде видел мало.

12 часа назад, MasterElectric сказал:

Интересно халокубщики

Хуже, коксо-воды. Не пойму этих предубеждений в стиле "Начинать надо с кейла, или не мужик".

Ссылка на комментарий
Поделиться на другие сайты

При наличии кварца МК автоматом запустится с внешним источником. Причём сразу умножит его частоту. Так, например, 100 и 103 серия умножает на 9. И по умолчанию предполагают наличие кварца 8 МГц. Если же кварца не будет, то МК за ведётся от внутреннего источника на 8 МГц. А как накинуть множители, написано в статье, что выше давал. Да и не в ней одной. Более того, там готовый кусок кода есть.

Ссылка на комментарий
Поделиться на другие сайты

Только что, BARS_ сказал:

там готовый кусок кода есть

Подправил немного то, что у меня есть, но проверить пока нет возможности. Фиг с ней с частотой, просто повесил делитель и всё закомпилировалось:

    RCC_DeInit(); 
    RCC_PLLConfig(RCC_PLLSource_HSI_Div2,RCC_PLLMul_9);
    RCC_PLLCmd( ENABLE);
    RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);

Если я правильно понял - ничего не запускать и не выключать, просто настроить PLL.

Ссылка на комментарий
Поделиться на другие сайты

Один говорит что всё само заработает, другой уверяет, что надо читать статьи про настройки внешнего резонатора, мол, там даже код есть. (Ну выдернул я куски кода, которые исходя из статей были нужны, почём мне знать какие правильные?)

Понимаю конечно, местные гуру с закрытыми глазами силой мысли всё это делают, есть ведь проблемы и по-глобальнее, но мне не очевидно что нужно сделать, чтобы просто заставить эту дичь работать с нужной частотой. Не сдвинулся ни на йоту, извиняюсь за потраченное время.

Ссылка на комментарий
Поделиться на другие сайты

Вся проблема в том, что тактирование НЕ настраивается одной строкой и нужен ВЕСЬ код, который приводится в статье. Неужели так трудно это понять? Я ведь ещё в самом начале написал, что одной строкой не обойтись.

Ссылка на комментарий
Поделиться на другие сайты

12 минуты назад, BARS_ сказал:

одной строкой не обойтись

Вон откуда ветер дует, т.е. файлик не перезаписывает значения, а целиком заменяет собой системный? Так бы сразу и сказали.
В статьях как правило приводится участок кода, где кое-как запускают HSE, и всё обрывается циклом-заглушкой, в который скатывается МК, когда этот самый HSE не работает, а всё что я мог - это переделывать инструкции для HSI.

Вообще всякие ардуиноподобные среды сильно расслабляют, когда периферию запускать не надо - всё само, а ты только пины задаёшь, непривычно говорить чайнику как надо кипятить воду, обычно говоришь кипятить, и он не спрашивает как пользоваться спиралью.

Изменено пользователем Prominence
Ссылка на комментарий
Поделиться на другие сайты

Да расслабляет до степени что не надо читать Reference Manual и ДШ на МК. У АВР то что фьюзы прошил и все.

1 час назад, BARS_ сказал:

При наличии кварца МК автоматом запустится с внешним источником. Причём сразу умножит его частоту. Так, например, 100 и 103 серия умножает на 9. И по умолчанию предполагают наличие кварца 8 МГц. Если же кварца не будет, то МК за ведётся от внутреннего источника на 8 МГц.

Что прям автоматом? Это скорее от среды зависит.

@Prominence На картинке что я давал изображена функциональная схема системы тактирования. Из нее видно что от HSI не выдавить частоту из PLL до 72 МГц. Ладно раз статьи не читаються я расскажу.

При включении МК он тактируеться от HSI на частоте 8МГц. Тебе нужно:

1. Настроить контроллер флеш памяти и указать латентность при ее чтении.

2. Настроить делители, множители PLL.

3. Настроить делители всех шин МК.

4. Включить PLL и подождать пока он запуститься и стабилизируеться.

5. Выбрать PLL источником тактирования системной частоты.  

Ссылка на комментарий
Поделиться на другие сайты

Прям автоматом. От среды вообще не зависит, CMSIS одинаковые для всех сред и с ними по дефолту HSI стартует автоматом, если не удаётся кварц запустить.

Ссылка на комментарий
Поделиться на другие сайты

4 часа назад, BARS_ сказал:

При наличии кварца МК автоматом запустится с внешним источником. Причём сразу умножит его частоту. Так, например, 100 и 103 серия умножает на 9. И по умолчанию предполагают наличие кварца 8 МГц. Если же кварца не будет, то МК за ведётся от внутреннего источника на 8 МГц. А как накинуть множители, написано в статье, что выше давал. Да и не в ней одной. Более того, там готовый кусок кода есть.

Из написанного следует что МК сам все это делает. Стартапы пишут разработчики сред, у всех они разные. Я вообще выкашиваю этот код и делаю то что мне надо.

Ссылка на комментарий
Поделиться на другие сайты

В 02.06.2018 в 14:20, dosikus сказал:

Пора начать работать а не тыкаться - 

 

Чертовски нудный урок...

Открытое видео осталось воспроизводиться фоном, и уже через час хотелось повеситься.

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, Darth_Vader сказал:

А использовал бы Куб - уже давно бы начал решать основную задачу

Ага с нулевыми знаниями как оно устроено... вперед...

@AVI-crak Home Он единственный кто вещает на таком уровне про регистры и устройство МК, пусть так чем никак. Ну то что рассказывает не все и по своему это уже такое.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...