rcbench
Servo and ESC test bench: panel, IOmcu and shared C
Loading...
Searching...
No Matches
servo_link_ctx_t Struct Reference

What the module reaches of the panel. More...

#include <servo_link.h>

Data Fields

link_host_t * host
const link_port_t * port
prog_link_t * prog
void * ctx
bool(*) armed (void *ctx)
 Whether the output bank is armed (outputs_armed()).
bool(*) stopped (void *ctx)
 A stop applied, or a disarm asked for since the write began.
void(*) alert (void *ctx, servo_link_alert_t a)
void(*) disarm (void *ctx, bool link_up)
uint32_t(*) stop_count (void *ctx)
 The arming policy's count of stops (arming_stop_count()).
void(*) arm_surfaces (void *ctx)
 Ask the arming policy to arm the surfaces and the programming ports, and no motor.

Detailed Description

What the module reaches of the panel.

host and port carry every exchange (link_write_acked()) and port's now_ms is the clock; prog is the programming ports' page (prog_link.h). Each callback takes ctx.

Field Documentation

◆ alert

void(*) servo_link_ctx_t::alert(void *ctx, servo_link_alert_t a)

Raise a for the operator.

◆ ctx

void* servo_link_ctx_t::ctx

passed to every callback

◆ disarm

void(*) servo_link_ctx_t::disarm(void *ctx, bool link_up)

Disarm the bench, and tell the far end while link_up.

◆ host

link_host_t* servo_link_ctx_t::host

the link host for every exchange

◆ port

const link_port_t* servo_link_ctx_t::port

the port, and its clock

◆ prog

prog_link_t* servo_link_ctx_t::prog

the programming ports' state


The documentation for this struct was generated from the following file: