Пытаюсь запустить STM32F030R8 от внутреннего HSI:
Спойлер
Код: Выделить всё
RCC->CR = 0;
RCC->CR |= RCC_CR_HSION;
while((RCC->CR &RCC_CR_HSIRDY)==0){}
RCC->CR &=~(RCC_CR_PLLON); // Отключаем PLL
while((RCC->CR & RCC_CR_PLLRDY) == 1){}
RCC->CFGR &=~(RCC_CFGR_SW_PLL | RCC_CFGR_PLLSRC | RCC_CFGR_PLLMUL); // Обнуление CFGR
RCC->CFGR |= RCC_CFGR_SW_PLL;
RCC->CFGR |= RCC_CFGR_PLLMUL2; // Умножить частоту PLL_MUL (2...16)
RCC->CR |= RCC_CR_PLLON; // Запустить PLL
while((RCC->CR &RCC_CR_PLLRDY)==0){} // Ожидание готовности PLL
RCC->CFGR &= ~(RCC_CFGR_SW); // Очистить биты SW0 и SW1
RCC->CFGR |= RCC_CFGR_SW_PLL; // Тактирование с выхода PLL
while((RCC->CFGR & RCC_CFGR_SW) != RCC_CFGR_SW_PLL) {} // Ожидание переключения на PLL
А ещё у меня что то МК в ресет уходит раз в 200-300 мс. Это вижу по контрольному светодиоду на пине PF4. Может я его перегрел когда ставил? Маловероятно. Такого циклического сброса не происходило на первой макетке с STM32F030F4P6.


