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

 
 
> stm35f105 тактирование от hsi, поделитесь кодом
super_puper
сообщение Jul 29 2015, 08:17
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 222
Регистрация: 14-12-12
Из: новосибирск
Пользователь №: 74 845



хочу от внутреннего генератора hsi запустить дайте плиз код или наработки или ссылки
использую iar и библиотеку стандартную cmsis
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 6)
ViKo
сообщение Jul 29 2015, 08:21
Сообщение #2


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

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



Reference Manual, ссылка прямее некуда. В нем RCC.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jul 29 2015, 08:23
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(super_puper @ Jul 29 2015, 11:17) *
хочу от внутреннего генератора hsi запустить дайте плиз код

запросто:
Код
void main()
{

}


Цитата(super_puper @ Jul 29 2015, 11:17) *
или ссылки
www.st.com


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
super_puper
сообщение Jul 29 2015, 09:25
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 222
Регистрация: 14-12-12
Из: новосибирск
Пользователь №: 74 845



нужен код такого формата.. вот у меня например был рабочий год тактирования от HSE а нужен от HSI
с референс мануалом и поиском граблей я так месяц просижу на этом месте))

Код
/ Сбрасываем клокинг в "0"
  RCC_DeInit();

// Включаем внешний кварц
  RCC_HSEConfig(RCC_HSE_ON);

// Ждём пока устанавливается внешний ВЧ тактовый сигнал
  HSEStartUpStatus = RCC_WaitForHSEStartUp();

  if(HSEStartUpStatus != ERROR)
  {
    // Внешний тактовый сигнал появился, стабильный
    // разрешаем использование буфера команд
   // FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);

    //-------------------------------------------------------------------
    // итак
    //Внешний кварц 25МГц
    //Тактовая частота ядра: 72МГц
    // частота шины PCLK2=72МГц
    // частота шины PCLK1=36МГц
    //-------------------------------------------------------------------

    // Flash 2 wait state
   // FLASH_SetLatency(FLASH_Latency_2);
    // HCLK(core memory and DMA) = SYSCLK
    RCC_HCLKConfig(RCC_SYSCLK_Div1);// bilo 1 HCLK это core memory и DMA) = SYSCLK/1
    
    RCC_PCLK2Config(RCC_HCLK_Div1);// bilo 1 PCLK2 это APB2 переферия PCLK2 = HCLK/1
    //PCLK1 = HCLK/2
    RCC_PCLK1Config(RCC_HCLK_Div2);// bilo 2 PCLK1 это APB1 переферия PCLK1 = HCLK/2
    // ADCCLK = PCLK2/4
  //  RCC_ADCCLKConfig(RCC_PCLK2_Div2);// bilo 6 ADCCLK тактирование ацп от PCLK2/6 (2,4,6,8) но не более 14МГц  

// Выставляем делители / множители частоты тактирования
//   RCC_PREDIV2Config(RCC_PREDIV2_Div5);// bilo 5
//   RCC_PLL2Config(RCC_PLL2Mul_8);// bilo 8

//Разрешаем PLL2
//   RCC_PLL2Cmd(ENABLE);

// Ждём пока устаканится PLL2
  //  while (RCC_GetFlagStatus(RCC_FLAG_PLL2RDY) == RESET)
  //  {}

// PLL2 - устаканился    
// конфигурируем PLL1
  //  RCC_PREDIV1Config(RCC_PREDIV1_Source_PLL2, RCC_PREDIV1_Div5);// bilo 5
  //  RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_9);// bilo 1,9

// Разрешаем PLL
  //  RCC_PLLCmd(ENABLE);

// Ждём готовности PLL
//   while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)
  //  {}

// Выбираем PLL как источник тактирования системы
//   RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);

// Ждём пока PLL не станет клокингом системы
//   while (RCC_GetSYSCLKSource() != 0x08)
//   {}
  }

// RCC_GetClocksFreq(&RCC_ClockFreq);

// Тактирование портов АЦП и USB
//  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA |
//                         RCC_APB2Periph_GPIOC |
//                         RCC_APB2Periph_GPIOD |
//                         RCC_APB2Periph_AFIO | //
//                         /*RCC_APB2Periph_ADC1, ENABLE*/ // АЦП тактирование
//                         );

// Выбираем тактирование для USB
// RCC_OTGFSCLKConfig(RCC_OTGFSCLKSource_PLLVCO_Div3);

  // Подключаем выбранное тактирование
// RCC_AHBPeriphClockCmd(RCC_AHBPeriph_OTG_FS, ENABLE);
}


Сообщение отредактировал super_puper - Jul 29 2015, 09:26
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jul 29 2015, 10:48
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(super_puper @ Jul 29 2015, 12:25) *
с референс мануалом и поиском граблей я так месяц просижу на этом месте))
"Лучше день потерять, потом долететь за пять минут". Вот я прочитал руководство пользователя и знаю, что при включении процессор всегда тактируется от HSI. То есть для решения вашей задачи - "тактироваться от HSI" ни одной строчки кода не требуется.

Цитата(super_puper @ Jul 29 2015, 12:25) *
нужен код такого формата...
Я не раздаю рыбу, но могу помочь научиться пользоваться удочкой. К тому же этот код использует библиотеки. Они же специально писались для переносимости кода между разными процессорами одним щелчком пальцев. Что, не переносится? tongue.gif

P.S. И, честно говоря, мне неинтересно помогать человеку, который не знает, что предложения начинаются с прописной (заглавной) буквы и так скупится на знаки препинания.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
WHALE
сообщение Jul 31 2015, 08:25
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



Цитата(Сергей Борщ @ Jul 29 2015, 14:48) *
P.S. И, честно говоря, мне неинтересно помогать человеку, который не знает, что предложения начинаются с прописной (заглавной) буквы и так скупится на знаки препинания.


И вдобавок имеющего такой ник.. biggrin.gif


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post
super_puper
сообщение Aug 1 2015, 08:05
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 222
Регистрация: 14-12-12
Из: новосибирск
Пользователь №: 74 845



Цитата(WHALE @ Jul 31 2015, 14:25) *
И вдобавок имеющего такой ник.. biggrin.gif

ник означает что мои разработки начинаются с банальных вопросов новичка а заканчиваются супер устройствами не имеющими аналогов biggrin.gif
Go to the top of the page
 
+Quote Post

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

 


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


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