Пример #1
0
        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);
        }
Пример #2
0
        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);
        }