18 lines
602 B
C
18 lines
602 B
C
#pragma once
|
|
|
|
#include <stdbool.h>
|
|
#include <stdint.h>
|
|
|
|
// The RP2350 multicore FIFO holds eight 32-bit messages in each direction.
|
|
// These functions intentionally enforce the sending/receiving core roles.
|
|
|
|
// Try to send one word from core 1. Returns false instead of waiting when the
|
|
// FIFO is full.
|
|
bool core1_to_core0_try_write(uint32_t data);
|
|
|
|
// Send one word from core 1, waiting until core 0 has made FIFO space.
|
|
void core1_to_core0_write_blocking(uint32_t data);
|
|
|
|
// Try to read one word on core 0. Returns false when no message is available.
|
|
bool core0_try_read_from_core1(uint32_t *data);
|