3 #include "pico/stdlib.h"
4 #include "pico/multicore.h"
29 bool push(uint32_t data,
bool is_blocking=
true){
32 result = multicore_fifo_wready();
35 multicore_fifo_push_blocking(data);
41 bool pop(uint32_t &data,
bool is_blocking=
true){
47 data = multicore_fifo_pop_blocking();
54 return !multicore_fifo_rvalid();
59 return !multicore_fifo_wready();
64 multicore_fifo_drain();
The RP2040 contains two FIFOs for passing data, messages or ordered events between the two cores....
Definition: PicoMulticoreFifo.h:15
void clear()
Removes all entries.
Definition: PicoMulticoreFifo.h:63
bool isFull()
Checks if the fifo is full.
Definition: PicoMulticoreFifo.h:58
bool pop(uint32_t &data, bool is_blocking=true)
Retrieves the next element (from the front) and removes it from the collection.
Definition: PicoMulticoreFifo.h:41
bool isEmpty()
Checks if the fifo is empty.
Definition: PicoMulticoreFifo.h:53
MuliticoreFifo()
Construct a new Muliticore Fifo object.
Definition: PicoMulticoreFifo.h:21
bool push(uint32_t data, bool is_blocking=true)
Adds an elelment to the end.
Definition: PicoMulticoreFifo.h:29
Pico Arduino Framework.
Definition: Arduino.cpp:26