get data from the fifo without removing
address of the fifo to be used
address where to store the data
This reads the data from the fifo without removing it from the fifo.
It returns 0 if the fifo was empty. Otherwise it returns the number
Note that with only one concurrent reader and one concurrent
writer, you don't need extra locking to use these macro.