std1.0.0-beta-7 SafeC docs

std :: interrupt::clock

Struct std::ClockConfig

#include <std/interrupt/clock.h> source

struct ClockConfig {
    &volatile unsigned int base;
    int source;
    unsigned int sys_freq;
    unsigned int ahb_div;
    unsigned int apb1_div;
    unsigned int apb2_div;
}

Fields

§&volatile unsigned int basesource

clock control MMIO base

§int sourcesource

CLK_SRC_HSI, CLK_SRC_HSE, or CLK_SRC_PLL

§unsigned int sys_freqsource

system clock frequency in Hz

§unsigned int ahb_divsource

AHB prescaler divider

§unsigned int apb1_divsource

APB1 prescaler divider

§unsigned int apb2_divsource

APB2 prescaler divider

Methods

§void set_source(int source)source · definition

Select clock source.

§int configure_pll(unsigned int mul, unsigned int div)source · definition

Configure PLL multiplier and divider. Returns 1 on success.

§void set_ahb_div(unsigned int div)source · definition

Set AHB bus prescaler.

§void set_apb1_div(unsigned int div)source · definition

Set APB1 bus prescaler.

§void set_apb2_div(unsigned int div)source · definition

Set APB2 bus prescaler.

§unsigned int get_freq() constsource · definition

Get current system clock frequency in Hz.

§static struct ClockConfig new(&volatile unsigned int base)source · definition

Initialize clock configuration at base.