You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
2.2 KiB
78 lines
2.2 KiB
|
|
#include "reg_index.hpp"
|
|
|
|
#include <stdint.h>
|
|
|
|
namespace iflytop {
|
|
|
|
#define REG_ITERM(enum) \
|
|
{ enum, #enum }
|
|
|
|
static reginfo_t table[] = {
|
|
REG_ITERM(kreg_module_version),
|
|
REG_ITERM(kreg_module_type),
|
|
REG_ITERM(kreg_module_status),
|
|
REG_ITERM(kreg_module_errorcode),
|
|
|
|
REG_ITERM(kreg_opt_module_do_action0),
|
|
REG_ITERM(kreg_opt_module_action_param1),
|
|
REG_ITERM(kreg_opt_module_action_param2),
|
|
REG_ITERM(kreg_opt_module_action_param3),
|
|
REG_ITERM(kreg_opt_module_action_ack1),
|
|
REG_ITERM(kreg_opt_module_action_ack2),
|
|
|
|
|
|
REG_ITERM(kreg_step_motor_pos),
|
|
REG_ITERM(kreg_step_motor_dpos),
|
|
REG_ITERM(kreg_step_motor_shift),
|
|
REG_ITERM(kreg_step_motor_shaft),
|
|
REG_ITERM(kreg_step_motor_one_circle_pulse),
|
|
REG_ITERM(kreg_step_motor_one_circle_pulse_denominator),
|
|
REG_ITERM(kreg_step_motor_default_velocity),
|
|
REG_ITERM(kreg_step_motor_ihold),
|
|
REG_ITERM(kreg_step_motor_irun),
|
|
REG_ITERM(kreg_step_motor_iholddelay),
|
|
REG_ITERM(kreg_step_motor_iglobalscaler),
|
|
REG_ITERM(kreg_step_motor_run_to_zero_speed),
|
|
REG_ITERM(kreg_step_motor_look_zero_edge_speed),
|
|
REG_ITERM(kreg_step_motor_max_d),
|
|
REG_ITERM(kreg_step_motor_min_d),
|
|
REG_ITERM(kreg_step_motor_in_debug_mode),
|
|
REG_ITERM(kreg_step_motor_vstart),
|
|
REG_ITERM(kreg_step_motor_a1),
|
|
REG_ITERM(kreg_step_motor_amax),
|
|
REG_ITERM(kreg_step_motor_v1),
|
|
REG_ITERM(kreg_step_motor_dmax),
|
|
REG_ITERM(kreg_step_motor_d1),
|
|
REG_ITERM(kreg_step_motor_vstop),
|
|
REG_ITERM(kreg_step_motor_tzerowait),
|
|
REG_ITERM(kreg_mini_servo_pos),
|
|
REG_ITERM(kreg_mini_servo_limit_velocity),
|
|
REG_ITERM(kreg_mini_servo_limit_torque),
|
|
REG_ITERM(kreg_mini_servo_protective_torque),
|
|
|
|
|
|
};
|
|
|
|
reginfo_t *get_reginfo_by_index(int32_t index) {
|
|
for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
|
|
if (table[i].index == index) {
|
|
return &table[i];
|
|
}
|
|
}
|
|
return nullptr;
|
|
}
|
|
|
|
const char *regindex2str(int32_t index) {
|
|
for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
|
|
if (table[i].index == index) {
|
|
return table[i].regname;
|
|
}
|
|
}
|
|
return "unknown reg";
|
|
}
|
|
|
|
reginfo_t *reg_get_table() { return table; }
|
|
int reg_get_table_size() { return sizeof(table) / sizeof(table[0]); }
|
|
|
|
} // namespace iflytop
|