MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / ringbuffer_example

Function ringbuffer_example

examples/test/ringbuffer_test.c:25–45  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23
24
25int ringbuffer_example(void)
26{
27 rb_example_t data = {
28 .a = 1,
29 .b = 2,
30 };
31
32 struct rt_ringbuffer * rb = rt_ringbuffer_create(sizeof(rb_example_t) * 2);
33 RT_ASSERT(rb != RT_NULL);
34
35 rt_kprintf("Put data to ringbuffer, a: %d b: %d size: %d\n", data.a, data.b, sizeof(data));
36 rt_ringbuffer_put(rb, (rt_uint8_t *)&data, sizeof(data));
37
38
39 rb_example_t recv_data;
40 rt_size_t recv = rt_ringbuffer_get(rb, (rt_uint8_t *)&recv_data, sizeof(recv_data));
41 RT_ASSERT(recv == sizeof(recv_data));
42 rt_kprintf("Get data from ringbuffer, a: %d b: %d size: %d\n", recv_data.a, recv_data.b, sizeof(recv_data));
43
44 return 0;
45}
46MSH_CMD_EXPORT(ringbuffer_example, ringbuffer example);
47
48

Callers

nothing calls this directly

Calls 4

rt_ringbuffer_createFunction · 0.85
rt_kprintfFunction · 0.85
rt_ringbuffer_putFunction · 0.85
rt_ringbuffer_getFunction · 0.85

Tested by

no test coverage detected