реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Проблема с тактовой частотой., STM32F103RBT6
antis
сообщение Oct 23 2013, 06:29
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 11-01-09
Пользователь №: 43 172



Цитата(Jenya7 @ Oct 23 2013, 10:15) *
SysClockInit() - это уже моя функция,сначала как я понимаю выполняется стартаповский SystemInit () который делает то что делает, а потом я запускаю свою функцию.


Сорь, перепутал название функции.
Но стандартный SystemInit () сам настраивает тактовую частоту, взависимости от значения SYSCLK_FREQ_xxx (файл system_stm32f10x.c)


Go to the top of the page
 
+Quote Post
Jenya7
сообщение Oct 23 2013, 08:28
Сообщение #17


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(antis @ Oct 23 2013, 12:29) *
Сорь, перепутал название функции.
Но стандартный SystemInit () сам настраивает тактовую частоту, взависимости от значения SYSCLK_FREQ_xxx (файл system_stm32f10x.c)

в том то и дело,что после SystemInit() у меня частота 24Мгц, хотя все дефайны
на 72Мгц. Поэтому я своей функцией переписываю частоту, но она остается 24Мгц.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Oct 23 2013, 09:24
Сообщение #18


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



На всякий случай спрошу - а у вас точно STM32F103, а не STM32F100?
А вы в стартапе замените вызов SystemInit на вызов своей функции. Я иногда так делал (а потом стал свою функцию называть SystemInit).
Go to the top of the page
 
+Quote Post
smk
сообщение Oct 23 2013, 09:27
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



Как я помню на лету так просто переписать регистры не выйдет. Проверьте, что настройки Ваши реально прописываются. А еще лучше настройте инициализацию по умолчанию, без своей функции. Или при создании проекта укажите, что стандартную инициализацию не применять.


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Oct 23 2013, 09:57
Сообщение #20


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



у меня STM32F103RBT6.
Мне кажется что system_stm32f10x.c игнорирует мои настройки, не пойму почему. Я выбрал #define STM32F10X_MD который по идее приводит к #define SYSCLK_FREQ_72MHz 72000000 и отсюда SystemInit () должен пойти к SetSysClockTo72().
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Oct 31 2013, 08:27
Сообщение #21


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



На всякий случай, если кто будет биться головой об стену (как это делал я в течении недели). У ИАР есть такая байда C/C++ Compiler->Preprocessor->Defined Symbols
и там прописано STM32F10X_MD_VL вместо моего STM32F10X_MD исправил и получил свои 72Мгц.
Причем если убрать дефайн вообще, не знаю как он компилируется но дефайны с хедеров он не берет и тактовая частота вообще не устанавливается.
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 21:15
Рейтинг@Mail.ru


Страница сгенерированна за 0.01379 секунд с 7
ELECTRONIX ©2004-2016