Hardware Tick API. More...
Typedefs | |
typedef enum tick_gen_num_rp2350 | tick_gen_num_t |
Tick generator numbers on RP2350 (used as typedef tick_gen_num_t) | |
typedef enum tick_gen_num_rp2040 | tick_gen_num_t |
Tick generator numbers on RP2040 (used as typedef tick_gen_num_t) More... | |
Enumerations | |
enum | tick_gen_num_rp2350 { TICK_PROC0 = 0 , TICK_PROC1 = 1 , TICK_TIMER0 = 2 , TICK_TIMER1 = 3 , TICK_WATCHDOG = 4 , TICK_RISCV = 5 , TICK_COUNT } |
Tick generator numbers on RP2350 (used as typedef tick_gen_num_t) | |
enum | tick_gen_num_rp2040 { TICK_WATCHDOG = 0 , TICK_COUNT } |
Tick generator numbers on RP2040 (used as typedef tick_gen_num_t) More... | |
Functions | |
void | tick_start (tick_gen_num_t tick, uint cycles) |
Start a tick generator. More... | |
void | tick_stop (tick_gen_num_t tick) |
Stop a tick generator. More... | |
bool | tick_is_running (tick_gen_num_t tick) |
Check if a tick genererator is currently running. More... | |
Hardware Tick API.
RP2040 only has one tick generator, and it is part of the watchdog hardware.
The RP2350 has a dedicated Tick block that is used to supply ticks to TIMER0, TIMER1, RISC-V platform timer, Arm Cortex-M33 0 timer, Arm Cortex-M33 1 timer and the WATCHDOG block.
typedef enum tick_gen_num_rp2040 tick_gen_num_t |
Tick generator numbers on RP2040 (used as typedef tick_gen_num_t)
RP2040 only has one tick generator, and it is part of the watchdog hardware
enum tick_gen_num_rp2040 |
Tick generator numbers on RP2040 (used as typedef tick_gen_num_t)
RP2040 only has one tick generator, and it is part of the watchdog hardware
bool tick_is_running | ( | tick_gen_num_t | tick | ) |
Check if a tick genererator is currently running.
tick | The tick generator number |
void tick_start | ( | tick_gen_num_t | tick, |
uint | cycles | ||
) |
Start a tick generator.
tick | The tick generator number |
cycles | The number of clock cycles per tick |
void tick_stop | ( | tick_gen_num_t | tick | ) |
Stop a tick generator.
tick | The tick generator number |