0 / 0 / 0
Регистрация: 20.07.2012
Сообщений: 620
|
|
1 | |
Сбой stm32f407, тактируемого от pll.11.12.2016, 18:30. Показов 4556. Ответов 4
Метки нет Все метки)
(
Раньше для инициализации переферии пользовался StomdartPeriphLibrary, а тут вот захотелось настроиться самому.
На этапе настройки PLL тактирования от внешнего кварца возникает непонятная мне проблема. Оно вроде работает, но после аппаратного risit отказывается включаться. Приходится заводить с толкача. Вот типовые действия, которые пытаюсь предпринимать: Код
RCC->CR |= (uint32_t)0x00000001; RCC->CFGR = (uint32_t)0x00000000; RCC->CR &= (uint32_t)0xFEF6FFFF; RCC->PLLCFGR = (uint32_t)0x00000000; RCC->CR &= (uint32_t)0xFFFBFFFF; RCC->CIR = (uint32_t)0x00000000; //Запуск HSE и ожидание включения RCC->CR |= RCC_CR_HSEON; while(!(RCC->CR & RCC_CR_HSERDY)); RCC->CFGR |= RCC_CFGR_HPRE_DIV1 | RCC_CFGR_PPRE1_DIV4 | RCC_CFGR_PPRE2_DIV2; //SYSCLK = HSE /M *N /P RCC->PLLCFGR = (RCC_PLLCFGR_PLLSRC_HSE | (RCC_PLLCFGR_PLLM & (4 << 0)) | (RCC_PLLCFGR_PLLN & (168 << 6)) | (RCC_PLLCFGR_PLLP & (0 << 16)) | (RCC_PLLCFGR_PLLQ & (7 << 24)) ); RCC->CR |= RCC_CR_PLLON; while(!(RCC->CR & RCC_CR_PLLRDY)); //Тактируем шину от PLL //RCC->CFGR &= ~(RCC_CFGR_SW); RCC->CFGR |= (RCC_CFGR_SW_PLL); while((RCC->CFGR & RCC_CFGR_SWS_PLL) != RCC_CFGR_SWS_PLL);
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
11.12.2016, 18:30 | |
Ответы с готовыми решениями:
4
Как сформировать SYSCLK от PLL на STM32F407 и выдать на MCO1 [РЕШЕНО] STM32F407+LSM303C, STM32F407 (дискавери) По схемотехнике . Нарисовать на временной диаграмме выходы тактируемого RS триггера Сбой в компьютере, время от времени синий экран смерти, критический сбой |
0 / 0 / 0
Регистрация: 18.08.2014
Сообщений: 50
|
|
11.12.2016, 20:03 | 2 |
![]() RCC->APB1ENR |= RCC_APB1ENR_PWREN; PWR->CR |= PWR_CR_VOS; 2. какие задержки по памяти и включен ли cache FLASH->ACR = FLASH_ACR_PRFTEN |FLASH_ACR_ICEN |FLASH_ACR_DCEN |FLASH_ACR_LATENCY_5WS; 3. правильно ли коэффициент PLL P выбран ? 4. RCC->CFGR &= ~(RCC_CFGR_SW); убрать //
0
|
0 / 0 / 0
Регистрация: 20.07.2012
Сообщений: 620
|
|
12.12.2016, 11:13 | 3 |
Кварц 8Мгц. Какая результирующая частота - неважно. Пытаюсь понять, что происходит.
Буду благодарен, если теоретически. На что влияют задержки по памяти и активация кэша? Что делает PWR_CR_VOS?
0
|
0 / 0 / 0
Регистрация: 20.07.2012
Сообщений: 620
|
|
12.12.2016, 12:07 | 4 |
Спасибо. После настройки флеша все заработало. С флешем понятно. Он не может работать на такой скорости...
Но что с PWR_CR_VOS?
0
|
0 / 0 / 0
Регистрация: 18.08.2014
Сообщений: 50
|
|
12.12.2016, 13:30 | 5 |
![]() This bit controls the main internal voltage regulator output voltage to achieve a trade-off between performance omd power consumption when the divice does not operate at the maximum frequency. 0: Scale 2 mode 1: Scale 1 mode (default value at risit) Все остальное о нем можете прочитать в RM
0
|
12.12.2016, 13:30 | |
Помогаю со студенческими работами здесь
5
СМА INDESIT IWB 6105CIS непонятный сбой, Сбой программы Управление PLL STM32F4Discovery PLL Глюк PLL STM32F091? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |