public void _build_config() { if (_is_static) { _mcu.add_config_cmd($"set_digital_out pin={_pin} value={(_start_value ? 1 : 0)}"); return; } _oid = _mcu.create_oid(); _mcu.add_config_cmd($"config_digital_out oid={_oid} pin={_pin} value={(_start_value ? 1 : 0)} default_value={(_shutdown_value ? 1 : 0)} max_duration={_mcu.seconds_to_clock(_max_duration)}"); var cmd_queue = _mcu.alloc_command_queue(); _set_cmd = _mcu.lookup_command("schedule_digital_out oid=%c clock=%u value=%c", cq: cmd_queue); }
public void _build_config() { _oid = _mcu.create_oid(); _mcu.add_config_cmd($"config_end_stop oid={_oid} pin={_pin} pull_up={(_pullup ? 1 : 0)} stepper_count={_steppers.Count}"); _mcu.add_config_cmd($"end_stop_home oid={_oid} clock=0 sample_ticks=0 sample_count=0 rest_ticks=0 pin_value=0", is_init: true); for (int i = 0; i < _steppers.Count; i++) { var s = _steppers[i]; _mcu.add_config_cmd($"end_stop_set_stepper oid={_oid} pos={i} stepper_oid={s.get_oid()}", is_init: true); } var cmd_queue = _mcu.alloc_command_queue(); _home_cmd = _mcu.lookup_command("end_stop_home oid=%c clock=%u sample_ticks=%u sample_count=%c rest_ticks=%u pin_value=%c", cq: cmd_queue); _query_cmd = _mcu.lookup_command("end_stop_query oid=%c", cq: cmd_queue); _mcu.register_msg(_handle_end_stop_state, "end_stop_state", _oid); }