|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
||||||||||||||||||||||||||
Задание тактовой частоты от внешнего генератора10.09.2019, 11:29. Показов 5531. Ответов 13
Вопрос довольно распространенный, однако поиски не дали особых результатов. Хочу задать тактовую частоту ядра 100 МГц на stm32f411. Использую Keil и отладочную плату stm32f411 discovery.
В файле system_stm32f4xx.c меняю HSE_VALUE на 8000000 (рисунок 1), SystemCoreClock на 100000000 (рисунок 2), дальше функцию SystemCoreClockUpdate : Кликните здесь для просмотра всего текста
Меняю значения PLL: tmp = 8 - чтобы выполнялся case 0x08 pllsource = 22 - не знаю почему именно 22, просто из условий:
pllvco = 200000000 pllm = 4 plln - почему-то нету Исходя из этого:
Однако при отладке сначала SystemCoreClock показывается как 100 МГц (на breakpoint), однако на следующем шаге уже 16 МГц, не могу понять почему и откуда 16 МГц?
0
|
||||||||||||||||||||||||||
| 10.09.2019, 11:29 | |
|
Ответы с готовыми решениями:
13
Повышение тактовой частоты
Определение тактовой частоты процессора. |
|
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
|
|||||||||||
| 10.09.2019, 12:11 | |||||||||||
|
DmitryDDDD, А вы описание функции
Эта функция вообще ни разу не настраивает этот модуль. Таким образом Вам просто показало цифру 100 МГц. А потом показало сколько на самом деле.
0
|
|||||||||||
|
|
|||||||||||
| 10.09.2019, 12:30 | |||||||||||
|
Вы не ту функцию правили. Тактирование настраивается в SetSysClock.
В файле system_stm32f4xx.c есть строки.
0
|
|||||||||||
|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
||||||
| 10.09.2019, 12:53 [ТС] | ||||||
|
У меня почему-то другой файл system_stm32f4xx.c
Кликните здесь для просмотра всего текста
0
|
||||||
|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
||||||
| 10.09.2019, 12:54 [ТС] | ||||||
|
продолжение
Кликните здесь для просмотра всего текста
Я в нем искал параметры PLL, но нашел только то, что исправил выше, теперь понял, что исправлял не то, данный файл необходимо заменить на другой system_stm32f4xx.c?
0
|
||||||
|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
|
| 11.09.2019, 15:30 [ТС] | |
|
locm, _SayHello, заменил файл, исправил PLL, выдает ошибку: RTE\Device\STM32F411VETx\system_stm32f4x x.c(185): error: #147: declaration is incompatible with "const uint8_t AHBPrescTable[16]" (declared at line 76 of "D:\Soft\Keil\ARM\PACK\Keil\STM32F4xx_DF P\2.13.0\Drivers\CMSIS\Device\ST\STM32F4 xx\Include\system_stm32f4xx.h")
на 185 строку: __I uint8_t AHBPrescTable[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9}; Но это .h файл, его тоже необходимо заменить?
0
|
|
|
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
|
||||||
| 11.09.2019, 15:50 | ||||||
Сообщение было отмечено DmitryDDDD как решение
Решение
locm, насколько я знаю, этот файл не обязательно одинаковый для всех. У ТСа просто нет функции SetSysClock и SystemInit в стартапе просто устанавливает дефолтные настройки системы тактирования.
В сучае TCa надо просто самому руками написать функцию настройки тактирования и вызвать ее в main либо вставить в SystemInit Добавлено через 17 минут DmitryDDDD, добавь в main функцию: Если кварц 8 МГц, то должна получиться частота 100 на HCLK, SYSCLK, APB2CLK, 50 на APB1CLK
0
|
||||||
|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
|
| 11.09.2019, 16:00 [ТС] | |
|
Попробовал добавить данную функцию, SystemCoreClock показывается в отладчике как 16МГц, а код по отправке данных с АПЦ по USART стал работать некорректно
0
|
|
|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
|
| 11.09.2019, 16:05 [ТС] | |
|
_SayHello Частоту считал в CubeMX, скрин прикладываю. Ядро F411
0
|
|
|
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
|
||||||
| 11.09.2019, 16:06 | ||||||
|
DmitryDDDD,
0
|
||||||
|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
|
| 11.09.2019, 16:23 [ТС] | |
|
_SayHello добавил, теперь SystemCoreClock показывает 100 МГц, но данные, приходящие на ПК по USART не корректны. Т.е. раньше приходил буфер: 255,0,0,0,0,0,0,255 что соответствует подключению ножек на плате, теперь в терминал приходит: что-то состоящее из нулей и 192, видимо настройки USART поплыли
0
|
|
|
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
|
|
| 11.09.2019, 16:25 | |
|
DmitryDDDD, а ты функции куда вставил? до инициализации USART или после? Ставь самыми первыми в main
0
|
|
|
4 / 4 / 0
Регистрация: 12.11.2018
Сообщений: 511
|
|
| 11.09.2019, 16:28 [ТС] | |
|
_SayHello, ну да, я инициализировал их после, исправил, заработало. Вы меня сегодня весь день выручаете, спасибо) Сейчас еще попробую переделать это под 12 разрядный АЦП
0
|
|
| 11.09.2019, 16:28 | |
|
Помогаю со студенческими работами здесь
14
Определение разрядности и тактовой частоты мк. STM32F103 установка тактовой частоты Определение тактовой частоты процессора Скачки тактовой частоты процессора Вывод тактовой частоты процессора Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|