rcbench
Servo and ESC test bench: panel, IOmcu and shared C
Loading...
Searching...
No Matches
tone_core1.h
Go to the documentation of this file.
1
27#ifndef RCBENCH_TONE_CORE1_H
28#define RCBENCH_TONE_CORE1_H
29
30#include <stdbool.h>
31#include <stdint.h>
32
33#include "tone_page.h"
34#include "tone_svc.h"
35
39#define TONE_Q_LEN 32u
40
44void tone_core1_init(void);
45
55void tone_core1_order(const tone_cmd_t *cmd, uint64_t t0_us);
56
69bool tone_core1_quiesce(void);
70
76#define TONE_CORE1_WAIT_US 5000u
77
81void tone_core1_step(void);
82
92
93#endif /* RCBENCH_TONE_CORE1_H */
The order from core 0.
Definition tone_svc.h:65
The TONE page state: the set-up, what core 1 last reported, and the beep ring of the capture.
Definition tone_page.h:49
void tone_core1_order(const tone_cmd_t *cmd, uint64_t t0_us)
A new order for core 1, taken at its next tick.
Definition tone_core1.c:72
void tone_core1_sync(tone_page_t *page)
Core 0: take what core 1 has handed over into page: the beeps in the queue and the newest status.
Definition tone_core1.c:186
void tone_core1_step(void)
Core 1's pass, once a tick.
Definition tone_core1.c:167
bool tone_core1_quiesce(void)
Core 0: wait until core 1 has finished a pass under the latest order.
Definition tone_core1.c:84
void tone_core1_init(void)
Claim the spin lock; before core 1 starts.
Definition tone_core1.c:64
The TONE link page at the IOmcu: the phase tap that hears an ESC's (electronic speed controller) beep...
The tone service: what core 1 runs for the phase tap each 1ms tick.