NavHAL
0.1.0
NAVRobotec's architecture-agnostic HAL for embedded systems.
Loading...
Searching...
No Matches
clock.h
Go to the documentation of this file.
1
16
17
#ifndef CORTEX_M4_CLOCK_H
18
#define CORTEX_M4_CLOCK_H
19
20
#include "
utils/clock_types.h
"
21
29
typedef
struct
{
30
hal_clock_source_t
input_src
;
31
uint8_t
pll_m
;
32
uint16_t
pll_n
;
33
uint8_t
pll_p
;
34
uint8_t
pll_q
;
35
}
hal_pll_config_t
;
36
45
void
hal_clock_init
(
hal_clock_config_t
*
cfg
,
hal_pll_config_t
*
pll_cfg
);
46
52
uint32_t
hal_clock_get_sysclk
(
void
);
53
59
uint32_t
hal_clock_get_ahbclk
(
void
);
60
66
uint32_t
hal_clock_get_apb1clk
(
void
);
67
73
uint32_t
hal_clock_get_apb2clk
(
void
);
74
75
#endif
// CORTEX_M4_CLOCK_H
hal_clock_init
void hal_clock_init(hal_clock_config_t *cfg, hal_pll_config_t *pll_cfg)
Initialize the system clock.
Definition
clock.c:55
hal_clock_get_apb1clk
uint32_t hal_clock_get_apb1clk(void)
Get the APB1 bus clock frequency.
Definition
clock.c:234
hal_clock_get_apb2clk
uint32_t hal_clock_get_apb2clk(void)
Get the APB2 bus clock frequency.
Definition
clock.c:246
hal_clock_get_ahbclk
uint32_t hal_clock_get_ahbclk(void)
Get the AHB bus clock frequency.
Definition
clock.c:222
hal_clock_get_sysclk
uint32_t hal_clock_get_sysclk(void)
Get the system clock frequency (SYSCLK).
Definition
clock.c:129
clock_types.h
Clock HAL type definitions.
hal_clock_source_t
hal_clock_source_t
Enumeration of possible system clock sources.
Definition
clock_types.h:23
pll_cfg
hal_pll_config_t pll_cfg
Definition
main.c:108
cfg
hal_clock_config_t cfg
System clock configuration.
Definition
main.c:37
hal_clock_config_t
System clock configuration structure.
Definition
clock_types.h:35
hal_pll_config_t
PLL (Phase Locked Loop) configuration structure.
Definition
clock.h:29
hal_pll_config_t::pll_q
uint8_t pll_q
Definition
clock.h:34
hal_pll_config_t::input_src
hal_clock_source_t input_src
Definition
clock.h:30
hal_pll_config_t::pll_m
uint8_t pll_m
Definition
clock.h:31
hal_pll_config_t::pll_n
uint16_t pll_n
Definition
clock.h:32
hal_pll_config_t::pll_p
uint8_t pll_p
Definition
clock.h:33
include
core
cortex-m4
clock.h
Generated by
1.14.0