clock_set
Program an STM32 clock tree using RCC or friendly parameters, re-solve it via CubeMX, then save and return derived frequencies.
Instructions
Program the clock tree. Accepts explicit RCC parameters or the friendly keys: sysclk_hz, pll_mul, pll_source, sysclk_source, ahb_div, apb1_div, apb2_div, hse_mhz, hsi_mhz, lse_khz, lsi_khz. Runs clock resolution so CubeMX re-solves the tree, then saves and returns the derived frequencies.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| save | No | Persist to the .ioc | |
| params | No | Raw RCC parameter map, e.g. {PLLMUL: RCC_PLL_MUL9} | |
| ahb_div | No | AHB prescaler (RCC_SYSCLK_DIV1) | |
| hse_mhz | No | HSE crystal value in MHz | |
| hsi_mhz | No | HSI value in MHz | |
| lse_khz | No | LSE value in kHz | |
| lsi_khz | No | LSI value in kHz | |
| pll_mul | No | PLL multiplier token (RCC_PLL_MUL9 / PLLMUL9) | |
| apb1_div | No | APB1 prescaler (RCC_HCLK_DIV2) | |
| apb2_div | No | APB2 prescaler (RCC_HCLK_DIV1) | |
| hse_pins | No | Pin hints for the crystal (F1: PD0/PD1, F4/H7: PH0/PH1) | |
| route_hse | No | Mux OSC_IN/OSC_OUT to HSE when PLL sources from HSE | |
| sysclk_hz | No | Target HCLK in Hz (writes AHBFreq_Value) | |
| pll_source | No | PLL source (RCC_PLLSOURCE_HSE / HSI_DIV2) | |
| project_id | Yes | Project id | |
| sysclk_source | No | RCC_SYSCLKSOURCE_PLLCLK / HSI / HSE |