Чем отличается запись?
RCC->CFGR |= RCC_CFGR_SW_HSE;
от
RCC->CFGR |= RCC_CFGR_SW;
Это из-за того, что SW отвечает за 2 бита, а не один? Нашёл на
http://eugenemcu.ru/publ/13-1-0-73Но там же есть итакая запись
RCC->CFGR|=RCC_CFGR_PLLSRC_HSE; // Тактировать PLL от HSE (8 MHz).
А HSE отвечает за 1 бит...
Нашёл в stm32f10x.h
#define RCC_CFGR_SWS_HSI ((uint32_t)0x00000000) /*!< HSI oscillator used as system clock */
#define RCC_CFGR_SWS_HSE ((uint32_t)0x00000004) /*!< HSE oscillator used as system clock */
#define RCC_CFGR_SWS_PLL ((uint32_t)0x00000008) /*!< PLL used as system clock */
а всё-таки правомерна такая запись
RCC->CFGR|=RCC_CFGR_PLLSRC;