Skip to content

Commit

Permalink
cpu/stm32_common: added periph_apb_clk() function
Browse files Browse the repository at this point in the history
  • Loading branch information
haukepetersen committed Dec 9, 2016
1 parent ccb9179 commit 7979c3a
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 0 deletions.
11 changes: 11 additions & 0 deletions cpu/stm32_common/cpu_common.c
Expand Up @@ -18,8 +18,19 @@
* @}
*/

#include "periph_conf.h"
#include "periph_cpu_common.h"

uint32_t periph_apb_clk(uint8_t bus)
{
if (bus == APB1) {
return CLOCK_APB1;
}
else {
return CLOCK_APB2;
}
}

void periph_clk_en(uint8_t bus, uint32_t mask)
{
if (bus == APB1) {
Expand Down
20 changes: 20 additions & 0 deletions cpu/stm32_common/include/periph_cpu_common.h
Expand Up @@ -65,6 +65,26 @@ typedef uint32_t gpio_t;
*/
#define GPIO_PIN(x, y) ((GPIOA_BASE + (x << 10)) | y)

/**
* @brief Timer configuration
*/
typedef struct {
TIM_TypeDef *dev; /**< timer device */
uint32_t max; /**< maximum value to count to (16/32 bit) */
uint32_t rcc_mask; /**< corresponding bit in the RCC register */
uint8_t bus; /**< APBx bus the timer is clock from */
uint8_t irqn; /**< global IRQ channel */
} timer_conf_t;

/**
* @brief Get the actual bus clock frequency for the APB buses
*
* @param[in] bus target APBx bus
*
* @return bus clock frequency in Hz
*/
uint32_t periph_apb_clk(uint8_t bus);

/**
* @brief Enable the given peripheral clock
*
Expand Down

0 comments on commit 7979c3a

Please sign in to comment.