我是靠谱客的博主 内向外套,最近开发中收集的这篇文章主要介绍3D打印机 G代码解释,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 * -----------------
 *
 *“G”代码
 *
 * G0 -> G1
 * G1 - 协调运动 X Y Z E
 * G2 - 顺时针弧
 * G3 - 逆时针弧
 * G4 - 停留 S<秒> 或 P<毫秒>
 * G5 - 具有 XYZE 目标和 IJPQ 偏移的三次 B 样条
 * G10 - 根据 M207 的设置收回料丝(需要 FWRETRACT)
 * G11 - 根据 M208 的设置收回恢复料丝(需要 FWRETRACT)
 * G12 - 清洁工具(需要 NOZZLE_CLEAN_FEATURE)
 * G17 - 选择平面 XY(需要 CNC_WORKSPACE_PLANES)
 * G18 - 选择平面 ZX(需要 CNC_WORKSPACE_PLANES)
 * G19 - 选择平面 YZ(需要 CNC_WORKSPACE_PLANES)
 * G20 - 将输入单位设置为英寸(需要 INCH_MODE_SUPPORT)
 * G21 - 将输入单位设置为毫米(需要 INCH_MODE_SUPPORT)
 * G26 - 网格验证模式(需要 G26_MESH_VALIDATION)
 * G27 - 停车喷嘴(需要 NOZZLE_PARK_FEATURE)
 * G28 - 一个或多个轴归位
 * G29 - 开始或继续床调平探头程序(需要床调平)
 * G30 - 单 Z 探头,在 X Y 位置探测床(默认为当前 XY 位置)
 * G31 - 底座雪橇(仅限 Z_PROBE_SLED)
 * G32 - 脱离底座(仅限 Z_PROBE_SLED)
 * G33 - Delta 自动校准(需要 DELTA_AUTO_CALIBRATION)
 * G34 - Z Stepper 使用测头自动对齐:I<iterations> T<accuracy> A<amplification>(需要 Z_STEPPER_AUTO_ALIGN)
 * G35 - 读取床角以帮助调整床螺丝:T<screw_thread>(需要 ASSISTED_TRAMMING)
 * G38 - 使用 Z_MIN_PROBE 在任何方向上探测(需要 G38_PROBE_TARGET)
 * G42 - 协调移动到网格点(需要 MESH_BED_LEVELING、AUTO_BED_LEVELING_BLINEAR 或 AUTO_BED_LEVELING_UBL)
 * G60 - 保存当前位置。 (需要 SAVED_POSITIONS)
 * G61 - 应用/恢复保存的坐标。 (需要 SAVED_POSITIONS)
 * G76 - 校准第一层温度偏移。 (需要 PTC_PROBE 和 PTC_BED)
 * G80 - 取消当前运动模式(需要 GCODE_MOTION_MODES)
 * G90 - 使用绝对坐标
 * G91 - 使用相对坐标
 * G92 - 将当前位置设置为给定的坐标
 *
 *“M”代码
 *
 * M0 - 无条件停止 - 等待用户按下 LCD 上的按钮(仅当启用 ULTRA_LCD 时)
 * M1 -> M0
 * M3 - 打开激光 |主轴(顺时针),设置功率 |速度。 (需要 SPINDLE_FEATURE 或 LASER_FEATURE)
 * M4 - 打开激光 |主轴(逆时针),设置功率 |速度。 (需要 SPINDLE_FEATURE 或 LASER_FEATURE)
 * M5 - 关闭激光 |主轴。 (需要 SPINDLE_FEATURE 或 LASER_FEATURE)
 * M7 - 打开雾状冷却液。 (需要 COOLANT_CONTROL)
 * M8 - 打开溢流冷却液。 (需要 COOLANT_CONTROL)
 * M9 - 关闭冷却液。 (需要 COOLANT_CONTROL)
 * M10 - 打开真空或鼓风机电机(需要 AIR_EVACUATION)
 * M11 - 关闭真空或鼓风机电机(需要 AIR_EVACUATION)
 * M12 - 建立闭环控制系统。 (需要EXTERNAL_CLOSED_LOOP_CONTROLLER)
 * M16 - 预期的打印机检查。 (需要 EXPECTED_PRINTER_CHECK)
 * M17 - 启用/为所有步进电机供电
 * M18 - 禁用所有步进电机;与M84相同
 *
 *** 从媒体打印 (SDSUPPORT) ***
 * M20 - 列出 SD 卡。 (需要 SDS 支持)
 * M21 - 初始化 SD 卡。 (需要 SDS 支持)
 * M22 - 释放 SD 卡。 (需要 SDS 支持)
 * M23 - 选择 SD 文件:“M23 /path/file.gco”。 (需要 SDS 支持)
 * M24 - 开始/恢复标清打印。 (需要 SDS 支持)
 * M25 - 暂停标清打印。 (需要 SDS 支持)
 * M26 - 以字节为单位设置 SD 位置:“M26 S12345”。 (需要 SDS 支持)
 * M27 - 报告 SD 打印状态。 (需要 SDS 支持)
 * 或者,使用 'S<seconds>' 设置 SD 状态自动报告间隔。 (需要 AUTO_REPORT_SD_STATUS)
 * 或者,使用 'C' 获取当前文件名。
 * M28 - 开始 SD 写入:“M28 /path/file.gco”。 (需要 SDS 支持)
 * M29 - 停止 SD 写入。 (需要 SDS 支持)
 * M30 - 从 SD 中删除文件:“M30 /path/file.gco”(需要 SDSUPPORT)
 * M31 - 自上次 M109 或 SD 卡开始串行报告以来的时间。
 * M32 - 选择文件并开始 SD 打印:“M32 [S<bytepos>] !/path/file.gco#”。 (需要 SDS 支持)
 * 使用 P 将其他文件作为子程序运行:“M32 P !filename#”
 * 从 sd 文件中调用时,'#' 是必需的,因为它会停止缓冲区预读
 * M33 - 获取路径的长名称版本。 (需要 LONG_FILENAME_HOST_SUPPORT)
 * M34 - 设置 SD 卡排序选项。 (需要 SDCARD_SORT_ALPHA)
 *
 * M42 - 通过 gcode 更改引脚状态:M42 P<pin> S<value>。如果省略 P,则假定为 LED 引脚。 (需要 DIRECT_PIN_CONTROL)
 * M43 - 显示管脚状态、观察管脚变化、观察停止和切换 LED、Z 伺服探针测试、切换管脚(需要 PINS_DEBUGGING)
 * M48 - 测量 Z 探头重复性:M48 P<points> X<pos> Y<pos> V<level> E<engage> L<legs> S<chizoid>。 (需要 Z_MIN_PROBE_REPATABILITY_TEST)
 *
 * M73 - 设置进度百分比。 (需要 LCD_SET_PROGRESS_MANUALLY)
 * M75 - 启动打印作业计时器。
 * M76 - 暂停打印作业计时器。
 * M77 - 停止打印作业计时器。
 * M78 - 显示有关打印作业的统计信息。 (需要打印计数器)
 *
 * M80 - 打开电源。 (需要 PSU_CONTROL)
 * M81 - 关闭电源。 (需要 PSU_CONTROL)
 *
 * M82 - 设置 E 代码绝对值(默认)。
 * M83 - 在绝对 (G90) 模式下设置 E 代码相对。
 * M84 - 在下一步移动之前禁用步进器,或使用 S<seconds> 指定空闲
 * 步进器应关闭的持续时间。 S0 禁用超时。
 * M85 - 使用参数 S<seconds> 设置不活动关闭计时器。禁用置零(默认)
 * M92 - 为一个或多个轴设置 planner.settings.axis_steps_per_mm。
 *
 * M100 - Watch Free Memory(用于调试)(需要 M100_FREE_MEMORY_WATCHER)
 *
 * M104 - 设置挤出机目标温度。
 * M105 - 报告当前温度。
 * M106 - 设置打印风扇速度。
 * M107 - 打印风扇关闭。
 * M108 - 断开加热回路(M109、M190、M303)。在没有控制器的情况下,从 M0/M1 中断。 (需要 EMERGENCY_PARSER)
 * M109 - S<temp> 等待挤出机当前温度达到目标温度。 ** 仅在加热时等待! **
 * R<temp> 等待挤出机当前温度达到目标温度。 ** 等待加热或冷却。 **
 * 如果启用 AUTOTEMP,则 S<mintemp> B<maxtemp> F<factor>。没有 F 的任何 M109 退出 autotemp
 *
 * M110 - 设置当前行号。 (主机打印使用)
 * M111 - 设置调试标志:“M111 S<flagbits>”。请参阅 enum.h 中定义的标志位。
 * M112 - 完全关机。
 *
 * M113 - 获取或设置主机 Keepalive “忙”消息的超时间隔。 (需要 HOST_KEEPALIVE_FEATURE)
 * M114 - 报告当前位置。
 * M115 - 报告功能。 (扩展功能需要 EXTENDED_CAPABILITIES_REPORT)
 * M117 - 在控制器屏幕上显示一条消息。 (需要液晶显示器)
 * M118 - 在主机控制台中显示一条消息。
 *
 * M119 - 报告终点站状态。
 * M120 - 启用终点检测。
 * M121 - 禁用终端检测。
 *
 * M122 - 调试步进器(需要至少一个定义为 TMC2130/2160/5130/5160/2208/2209/2660 或 L6470 的 _DRIVER_TYPE)
 * M123 - 报告风扇转速表。 (需要 En_FAN_TACHO_PIN)可选择设置自动报告间隔。 (需要 AUTO_REPORT_FANS)
 * M125 - 保存当前位置并移动到灯丝更换位置。 (需要 PARK_HEAD_ON_PAUSE)
 *
 * M126 - 电磁空气阀打开。 (需要 BARICUDA)
 * M127 - 电磁空气阀关闭。 (需要 BARICUDA)
 * M128 - EtoP 打开。 (需要 BARICUDA)
 * M129 - EtoP 关闭。 (需要 BARICUDA)
 *
 * M140 - 设置床目标温度。 S<温度>
 * M141 - 设置加热室目标温度。 S<temp>(需要室内加热器)
 * M143 - 设置冷却器目标温度。 S<temp>(需要激光冷却装置)
 * M145 - 在 LCD 上设置材料的加热值。 H<hotend> B<bed> F<fan speed> for S<material> (0=PLA, 1=ABS)
 * M149 - 设置温度单位。 (需要 TEMPERATURE_UNITS_SUPPORT)
 * M150 - 将状态 LED 颜色设置为 R<red> U<green> B<blue> W<white> P<bright>。值 0-255。 (需要 BLINKM、RGB_LED、RGBW_LED、NEOPIXEL_LED、PCA9533 或 PCA9632)。
 * M154 - 以 S<秒> 的间隔自动报告位置。 (需要 AUTO_REPORT_POSITION)
 * M155 - 以 S<秒> 为间隔自动报告温度。 (需要 AUTO_REPORT_TEMPERATURES)
 * M163 - 为混合挤出机设置单一比例。 (需要 MIXING_EXTRUDER)
 * M164 - 提交混合并保存到虚拟工具(当前,或由“S”指定)。 (需要 MIXING_EXTRUDER)
 * M165 - 使用参数 ABCDHI 为混合挤出机(和当前虚拟工具)设置混合。 (需要 MIXING_EXTRUDER 和 DIRECT_MIXING_IN_G1)
 * M166 - 设置混合挤出机的梯度混合。 (需要 GRADIENT_MIX)
 * M190 - 设置床目标温度并等待。 R<temp> 设置目标温度并等待。 S<temp> 设置,但仅在加热时等待。 (需要 TEMP_SENSOR_BED)
 * M192 - 等待探头达到目标温度。 (需要 TEMP_SENSOR_PROBE)
 * M193 - R<temp> 等待冷却器达到目标温度。 ** 等待冷却。 **
 * M200 - 设置灯丝直径,D<直径>,将 E 轴单位设置为立方。 (使用 S0 恢复为线性单位。)
 * M201 - 以单位/s^2 为打印移动设置最大加速度:“M201 X<accel> Y<accel> Z<accel> E<accel>”
 * M202 - 以单位/s^2 为移动移动设置最大加速度:“M202 X<accel> Y<accel> Z<accel> E<accel>” ** 在 MARLIN 中未使用! **
 * M203 - 设置最大进给率:“M203 X<fr> Y<fr> Z<fr> E<fr>”单位/秒。
 * M204 - 以单位/秒^2 设置默认加速度:P<printing> R<extruder_only> T<travel>
 * M205 - 设置高级设置。当前单位适用:
            S<print> T<travel> 最低速度
            B<最短分段时间>
            X<max X jerk>, Y<max Y jerk>, Z<max Z jerk>, E<max E jerk>
 * M206 - 设置额外的归位偏移。 (被 NO_WORKSPACE_OFFSETS 或 DELTA 禁用)
 * M207 - 设置退回长度:S<长度>,进给率:F<单位/分钟>,Z 提升:Z<距离>。 (需要 FWRETRACT)
 * M208 - 设置恢复(取消)附加(!)长度:S<长度>和进给率:F<单位/分钟>。 (需要 FWRETRACT)
 * M209 - 打开/关闭自动缩回检测:S<0|1>(适用于不支持 G10/11 的切片机)。 (需要 FWRETRACT_AUTORETRACT)
          每个正常的仅拉伸移动都将根据方向归类为缩回。
 * M211 - 启用、禁用和/或报告软件终点站:S<0|1>(需要 MIN_SOFTWARE_ENDSTOPS 或 MAX_SOFTWARE_ENDSTOPS)
 * M217 - 设置灯丝交换参数:“M217 S<length> P<feedrate> R<feedrate>”。 (需要单喷嘴)
 * M218 - 设置/获取刀具偏移:“M218 T<index> X<offset> Y<offset>”。 (需要 2 台或更多挤出机)
 * M220 - 设置进给率百分比:“M220 S<percent>”(即 LCD 上的“FR”)
 * 使用“M220 B”备份进给率百分比和“M220 R”恢复它。 (需要 MMU_MODEL 版本 2 或 2S)
 * M221 - 设置流量百分比:“M221 S<percent>”(需要挤出机)
 * M226 - 等待引脚处于给定状态:“M226 P<pin> S<state>”(需要 DIRECT_PIN_CONTROL)
 * M240 - 触发相机拍照。 (需要 PHOTO_GCODE)
 * M250 - 设置 LCD 对比度:“M250 C<对比度>”(0-63)。 (需要液晶显示器支持)
 * M256 - 设置 LCD 亮度:“M256 B<亮度>”(0-255)。 (需要带亮度控制的 LCD)
 * M260 - i2c 发送数据(需要 EXPERIMENTAL_I2CBUS)
 * M261 - i2c 请求数据(需要 EXPERIMENTAL_I2CBUS)
 * M280 - 设置伺服绝对位置:“M280 P<index> S<angle|µs>”。 (需要伺服)
 * M281 - 设置伺服最小|最大位置:“M281 P<index> L<min> U<max>”。 (需要 EDITABLE_SERVO_ANGLES)
 * M282 - 分离伺服:“M282 P<index>”。 (需要 SERVO_DETACH_GCODE)
 * M290 - Babystepping(需要 BABYSTEPPING)
 * M300 - 播放哔声 S<频率 Hz> P<持续时间 ms>
 * M301 - 设置 PID 参数 P I 和 D。(需要 PIDTEMP)
 * M302 - 允许冷挤压,或设置最小挤压 S<温度>。 (需要 PREVENT_COLD_EXTRUSION)
 * M303 - PID 继电器自动调谐 S<温度> 设置目标温度。默认150C。 (需要 PIDTEMP)
 * M304 - 设置床PID参数PI和D。(需要PIDTEMPBED)
 * M305 - 设置用户热敏电阻参数 R T 和 P。(需要 TEMP_SENSOR_x 1000)
 * M309 - 设置腔室 PID 参数 P I 和 D。(需要 PIDTEMPCHAMBER)
 * M350 - 设置微步模式。 (需要数字微步进引脚。)
 * M351 - 直接切换 MS1 MS2 引脚。 (需要数字微步进引脚。)
 * M355 - 设置机箱灯开/关并设置亮度。 (需要 CASE_LIGHT_PIN)
 * M380 - 激活主动挤出机上的螺线管。 (需要 EXT_SOLENOID)
 * M381 - 禁用所有螺线管。 (需要 EXT_SOLENOID)
 * M400 - 完成所有动作。
 * M401 - 部署和激活 Z 探针。 (需要探头)
 * M402 - 停用并收起 Z 探头。 (需要探头)
 * M403 - 为 PRUSA MMU2 设置灯丝类型
 * M404 - 显示或设置标称灯丝宽度:“W<直径>”。 (需要 FILAMENT_WIDTH_SENSOR)
 * M405 - 启用灯丝传感器流量控制。 “M405 D<延迟_厘米>”。 (需要 FILAMENT_WIDTH_SENSOR)
 * M406 - 禁用灯丝传感器流量控制。 (需要 FILAMENT_WIDTH_SENSOR)
 * M407 - 以毫米为单位显示测量的灯丝直径。 (需要 FILAMENT_WIDTH_SENSOR)
 * M410 - 快速停止。中止所有计划的移动。
 * M412 - 启用/禁用灯丝跳动检测。 (需要 FILAMENT_RUNOUT_SENSOR)
 * M413 - 启用/禁用断电恢复。 (需要 POWER_LOSS_RECOVERY)
 * M414 - 按索引设置语言。 (需要 LCD_LANGUAGE_2...)
 * M420 - 启用/禁用调平(使用当前值) S1=启用 S0=禁用(需要 MESH_BED_LEVELING 或 ABL)
 * M421 - 在网格调平网格中设置单个 Z 坐标。 X<units> Y<units> Z<units>(需要 MESH_BED_LEVELING、AUTO_BED_LEVELING_BILINEAR 或 AUTO_BED_LEVELING_UBL)
 * M422 - 使用探针设置 Z Stepper 自动对齐位置。 X<单位> Y<单位> A<轴>(需要 Z_STEPPER_AUTO_ALIGN)
 * M425 - 启用/禁用和调整反向间隙校正。 (需要 BACKLASH_COMPENSATION 和 BACKLASH_GCODE)
 * M428 - 根据 current_position 设置 home_offset。最近的边缘适用。 (被 NO_WORKSPACE_OFFSETS 或 DELTA 禁用)
 * M430 - 读取系统电流、电压和功率(需要 POWER_MONITOR_CURRENT、POWER_MONITOR_VOLTAGE 或 POWER_MONITOR_FIXED_VOLTAGE)
 * M486 - 识别和取消对象。 (需要 CANCEL_OBJECTS)
 * M500 - 将参数存储在 EEPROM 中。 (需要 EEPROM_SETTINGS)
 * M501 - 从 EEPROM 恢复参数。 (需要 EEPROM_SETTINGS)
 * M502 - 恢复到默认的“出厂设置”。 ** 不将它们写入 EEPROM! **
 * M503 - 打印当前设置(在内存中):“M503 S<verbose>”。 S0 指定紧凑输出。
 * M504 - 验证 EEPROM 内容。 (需要 EEPROM_SETTINGS)
 * M510 - 锁定打印机(需要 PASSWORD_FEATURE)
 * M511 - 解锁打印机(需要 PASSWORD_UNLOCK_GCODE)
 * M512 - 设置/更改/删除密码(需要 PASSWORD_CHANGE_GCODE)
 * M524 - 中止以 M24 开始的当前 SD 打印作业。 (需要 SDS 支持)
 * M540 - 在 endstop 命中时启用/禁用 SD 卡中止:“M540 S<state>”。 (需要 SD_ABORT_ON_ENDSTOP_HIT)
 * M552 - 获取或设置 IP 地址。启用/禁用网络接口。 (需要启用以太网端口)
 * M553 - 获取或设置 IP 网络掩码。 (需要启用以太网端口)
 * M554 - 获取或设置 IP 网关。 (需要启用以太网端口)
 * M569 - 启用轴上的stealthChop。 (至少需要一个_DRIVER_TYPE 为TMC2130/2160/2208/2209/5130/5160)
 * M575 - 更改串行波特率。 (需要 BAUD_RATE_GCODE)
 * M600 - 灯丝更换暂停:“M600 X<pos> Y<pos> Z<raise> E<first_retract> L<later_retract>”。 (需要 ADVANCED_PAUSE_FEATURE)
 * M603 - 配置灯丝更换:“M603 T<tool> U<unload_length> L<load_length>”。 (需要 ADVANCED_PAUSE_FEATURE)
 * M605 - 设置双 X-Carriage 移动模式:“M605 S<mode> [X<x_offset>] [R<temp_offset>]”。 (需要 DUAL_X_CARRIAGE)
 * M665 - 设置增量配置:“M665 H<delta 高度> L<diagonal rod> R<delta radius> S<segments/s> B<calibration radius> X<Alpha angle trim> Y<Beta angle trim> Z<Gamma角度修剪>(需要 DELTA)
 * 设置 SCARA 配置:“M665 S<segments-per-second> P<theta-psi-offset> T<theta-offset> Z<z-offset>(需要 MORGAN_SCARA 或 MP_SCARA)
 * M666 - 设置/获取增量(需要 DELTA)或双终点站的偏移量。 (需要 [XYZ]_DUAL_ENDSTOPS)
 * M672 - 设置/重置 Duet Smart Effector 的灵敏度。 (需要 DUET_SMART_EFFECTOR 和 SMART_EFFECTOR_MOD_PIN)
 * M701 - 加载灯丝(需要 FILAMENT_LOAD_UNLOAD_GCODES)
 * M702 - 卸载灯丝(需要 FILAMENT_LOAD_UNLOAD_GCODES)
 * M808 - 设置或转到重复标记(需要 GCODE_REPEAT_MARKERS)
 * M810-M819 - 定义/执行 G 代码宏(需要 GCODE_MACROS)
 * M851 - 以当前单位设置 Z 探头的 XYZ 偏移。 (负值:X=左,Y=前,Z=下)
 * M852 - 设置偏斜系数:“M852 [I<xy>] [J<xz>] [K<yz>]”。 (需要 SKEW_CORRECTION_GCODE,加上 IJ 的 SKEW_CORRECTION_FOR_Z)
 *
 *** I2C_POSITION_ENCODERS ***
 * M860 - 报告位置编码器模块的位置。
 * M861 - 报告位置编码器模块的状态。
 * M862 - 对位置编码器模块执行轴连续性测试。
 * M863 - 对位置编码器模块执行每毫米步数校准。
 * M864 - 更改位置编码器模块 I2C 地址。
 * M865 - 检查位置编码器模块固件版本。
 * M866 - 报告或重置位置编码器模块错误计数。
 * M867 - 启用/禁用或切换位置编码器模块的纠错。
 * M868 - 报告或设置位置编码器模块纠错阈值。
 * M869 - 报告位置编码器模块错误。
 *
 * M871 - 打印/重置/清除第一层温度偏移值。 (需要 PTC_PROBE、PTC_BED 或 PTC_HOTEND)
 * M876 - 处理提示响应。 (需要 HOST_PROMPT_SUPPORT 而不是 EMERGENCY_PARSER)
 * M900 - 获取或设置线性提前 K 因子。 (需要 LIN_ADVANCE)
 * M906 - 使用轴代码 XYZE 等设置或获取以毫安为单位的电机电流。如果没有给出轴代码,则报告值。 (需要至少一个 _DRIVER_TYPE 定义为 TMC2130/2160/5130/5160/2208/2209/2660 或 L6470)
 * M907 - 使用轴代码设置数字微调电机电流。 (需要带有数字微调器的板)
 * M908 - 直接控制数字微调器。 (需要 HAS_MOTOR_CURRENT_DAC 或 DIGIPOTSS_PIN)
 * M909 - 打印数字电位器/DAC 电流值。 (需要 HAS_MOTOR_CURRENT_DAC)
 * M910 - 通过 I2C 将数字电位器/DAC 值提交到外部 EEPROM。 (需要 HAS_MOTOR_CURRENT_DAC)
 * M911 - 报告步进驱动器过热预警情况。 (需要至少一个 _DRIVER_TYPE 定义为 TMC2130/2160/5130/5160/2208/2209/2660)
 * M912 - 清除步进驱动器过热预警条件标志。 (需要至少一个 _DRIVER_TYPE 定义为 TMC2130/2160/5130/5160/2208/2209/2660)
 * M913 - 设置 HYBRID_THRESHOLD 速度。 (需要 HYBRID_THRESHOLD)
 * M914 - 设置 StallGuard 灵敏度。 (需要 SENSORLESS_HOMING 或 SENSORLESS_PROBING)
 * M916 - L6470 调整:增加 KVAL_HOLD 直到热警告。 (至少需要一个 _DRIVER_TYPE L6470)
 * M917 - L6470 调整:找到最小电流阈值。 (至少需要一个 _DRIVER_TYPE L6470)
 * M918 - L6470 调整:提高速度直到最大或错误。 (至少需要一个 _DRIVER_TYPE L6470)
 * M919 - 使用轴代码 XYZE 等获取或设置电机斩波器时间(time_off、hysteresis_end、hysteresis_start)。如果没有给出参数,报告。 (需要至少一个 _DRIVER_TYPE 定义为 TMC2130/2160/5130/5160/2208/2209/2660)
 * M951 - 设置磁性停车挤出机参数。 (需要 MAGNETIC_PARKING_EXTRUDER)
 * M3426 - 通过 I2C 读取 MCP3426 ADC。 (需要 HAS_MCP3426_ADC)
 * M7219 - 控制 Max7219 矩阵 LED。 (需要MAX7219_GCODE)
 *
 *** 斯卡拉 ***
 * M360 - SCARA 校准:移动到校准位置 ThetaA(0 度校准)
 * M361 - SCARA 校准:移动到校准位置 ThetaB(90 度校准 - 每度步数)
 * M362 - SCARA 校准:移动到校准位置 PsiA(0 度校准)
 * M363 - SCARA 校准:移动到校准位置 PsiB(90 度校准 - 每度步数)
 * M364 - SCARA 校准:移动到校准位置 PSIC(90 度到 Theta 校准位置)
 *
 *** 自定义代码(可以更改以适应未来的 G 代码标准)***
 * G425 - 使用导电物体进行校准。 (需要 CALIBRATION_GCODE)
 * M928 - 开始 SD 记录:“M928 文件名.gco”。停在 M29 上。 (需要 SDS 支持)
 * M993 - 备份 SPI 闪存到 SD
 * M994 - 将备份从 SD 加载到 SPI 闪存
 * M995 - TFT 显示器的触摸屏校准
 * M997 - 执行应用内固件更新
 * M999 - 错误停止后重启
 *
 * D... - 自定义开发 G 代码。为“gcode_D.cpp”添加挂钩,供开发人员测试功能。 (需要 MARLIN_DEV_MODE)
 * D576 - 设置缓冲区监控选项。 (需要 BUFFER_MONITORING)
 *
 ***“T”代码***
 *
 * T0-T3 - 按索引选择挤出机(工具):“T<n> F<units/min>”
 */
 *
 * -----------------
 *
 * "G" Codes
 *
 * G0   -> G1
 * G1   - Coordinated Movement X Y Z E
 * G2   - CW ARC
 * G3   - CCW ARC
 * G4   - Dwell S<seconds> or P<milliseconds>
 * G5   - Cubic B-spline with XYZE destination and IJPQ offsets
 * G10  - Retract filament according to settings of M207 (Requires FWRETRACT)
 * G11  - Retract recover filament according to settings of M208 (Requires FWRETRACT)
 * G12  - Clean tool (Requires NOZZLE_CLEAN_FEATURE)
 * G17  - Select Plane XY (Requires CNC_WORKSPACE_PLANES)
 * G18  - Select Plane ZX (Requires CNC_WORKSPACE_PLANES)
 * G19  - Select Plane YZ (Requires CNC_WORKSPACE_PLANES)
 * G20  - Set input units to inches (Requires INCH_MODE_SUPPORT)
 * G21  - Set input units to millimeters (Requires INCH_MODE_SUPPORT)
 * G26  - Mesh Validation Pattern (Requires G26_MESH_VALIDATION)
 * G27  - Park Nozzle (Requires NOZZLE_PARK_FEATURE)
 * G28  - Home one or more axes
 * G29  - Start or continue the bed leveling probe procedure (Requires bed leveling)
 * G30  - Single Z probe, probes bed at X Y location (defaults to current XY location)
 * G31  - Dock sled (Z_PROBE_SLED only)
 * G32  - Undock sled (Z_PROBE_SLED only)
 * G33  - Delta Auto-Calibration (Requires DELTA_AUTO_CALIBRATION)
 * G34  - Z Stepper automatic alignment using probe: I<iterations> T<accuracy> A<amplification> (Requires Z_STEPPER_AUTO_ALIGN)
 * G35  - Read bed corners to help adjust bed screws: T<screw_thread> (Requires ASSISTED_TRAMMING)
 * G38  - Probe in any direction using the Z_MIN_PROBE (Requires G38_PROBE_TARGET)
 * G42  - Coordinated move to a mesh point (Requires MESH_BED_LEVELING, AUTO_BED_LEVELING_BLINEAR, or AUTO_BED_LEVELING_UBL)
 * G60  - Save current position. (Requires SAVED_POSITIONS)
 * G61  - Apply/restore saved coordinates. (Requires SAVED_POSITIONS)
 * G76  - Calibrate first layer temperature offsets. (Requires PTC_PROBE and PTC_BED)
 * G80  - Cancel current motion mode (Requires GCODE_MOTION_MODES)
 * G90  - Use Absolute Coordinates
 * G91  - Use Relative Coordinates
 * G92  - Set current position to coordinates given
 *
 * "M" Codes
 *
 * M0   - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled)
 * M1   -> M0
 * M3   - Turn ON Laser | Spindle (clockwise), set Power | Speed. (Requires SPINDLE_FEATURE or LASER_FEATURE)
 * M4   - Turn ON Laser | Spindle (counter-clockwise), set Power | Speed. (Requires SPINDLE_FEATURE or LASER_FEATURE)
 * M5   - Turn OFF Laser | Spindle. (Requires SPINDLE_FEATURE or LASER_FEATURE)
 * M7   - Turn mist coolant ON. (Requires COOLANT_CONTROL)
 * M8   - Turn flood coolant ON. (Requires COOLANT_CONTROL)
 * M9   - Turn coolant OFF. (Requires COOLANT_CONTROL)
 * M10  - Turn Vacuum or Blower motor ON (Requires AIR_EVACUATION)
 * M11  - Turn Vacuum or Blower motor OFF (Requires AIR_EVACUATION)
 * M12  - Set up closed loop control system. (Requires EXTERNAL_CLOSED_LOOP_CONTROLLER)
 * M16  - Expected printer check. (Requires EXPECTED_PRINTER_CHECK)
 * M17  - Enable/Power all stepper motors
 * M18  - Disable all stepper motors; same as M84
 *
 *** Print from Media (SDSUPPORT) ***
 * M20  - List SD card. (Requires SDSUPPORT)
 * M21  - Init SD card. (Requires SDSUPPORT)
 * M22  - Release SD card. (Requires SDSUPPORT)
 * M23  - Select SD file: "M23 /path/file.gco". (Requires SDSUPPORT)
 * M24  - Start/resume SD print. (Requires SDSUPPORT)
 * M25  - Pause SD print. (Requires SDSUPPORT)
 * M26  - Set SD position in bytes: "M26 S12345". (Requires SDSUPPORT)
 * M27  - Report SD print status. (Requires SDSUPPORT)
 *        OR, with 'S<seconds>' set the SD status auto-report interval. (Requires AUTO_REPORT_SD_STATUS)
 *        OR, with 'C' get the current filename.
 * M28  - Start SD write: "M28 /path/file.gco". (Requires SDSUPPORT)
 * M29  - Stop SD write. (Requires SDSUPPORT)
 * M30  - Delete file from SD: "M30 /path/file.gco" (Requires SDSUPPORT)
 * M31  - Report time since last M109 or SD card start to serial.
 * M32  - Select file and start SD print: "M32 [S<bytepos>] !/path/file.gco#". (Requires SDSUPPORT)
 *        Use P to run other files as sub-programs: "M32 P !filename#"
 *        The '#' is necessary when calling from within sd files, as it stops buffer prereading
 * M33  - Get the longname version of a path. (Requires LONG_FILENAME_HOST_SUPPORT)
 * M34  - Set SD Card sorting options. (Requires SDCARD_SORT_ALPHA)
 *
 * M42  - Change pin status via gcode: M42 P<pin> S<value>. LED pin assumed if P is omitted. (Requires DIRECT_PIN_CONTROL)
 * M43  - Display pin status, watch pins for changes, watch endstops & toggle LED, Z servo probe test, toggle pins (Requires PINS_DEBUGGING)
 * M48  - Measure Z Probe repeatability: M48 P<points> X<pos> Y<pos> V<level> E<engage> L<legs> S<chizoid>. (Requires Z_MIN_PROBE_REPEATABILITY_TEST)
 *
 * M73  - Set the progress percentage. (Requires LCD_SET_PROGRESS_MANUALLY)
 * M75  - Start the print job timer.
 * M76  - Pause the print job timer.
 * M77  - Stop the print job timer.
 * M78  - Show statistical information about the print jobs. (Requires PRINTCOUNTER)
 *
 * M80  - Turn on Power Supply. (Requires PSU_CONTROL)
 * M81  - Turn off Power Supply. (Requires PSU_CONTROL)
 *
 * M82  - Set E codes absolute (default).
 * M83  - Set E codes relative while in Absolute (G90) mode.
 * M84  - Disable steppers until next move, or use S<seconds> to specify an idle
 *        duration after which steppers should turn off. S0 disables the timeout.
 * M85  - Set inactivity shutdown timer with parameter S<seconds>. To disable set zero (default)
 * M92  - Set planner.settings.axis_steps_per_mm for one or more axes.
 *
 * M100 - Watch Free Memory (for debugging) (Requires M100_FREE_MEMORY_WATCHER)
 *
 * M104 - Set extruder target temp.
 * M105 - Report current temperatures.
 * M106 - Set print fan speed.
 * M107 - Print fan off.
 * M108 - Break out of heating loops (M109, M190, M303). With no controller, breaks out of M0/M1. (Requires EMERGENCY_PARSER)
 * M109 - S<temp> Wait for extruder current temp to reach target temp. ** Wait only when heating! **
 *        R<temp> Wait for extruder current temp to reach target temp. ** Wait for heating or cooling. **
 *        If AUTOTEMP is enabled, S<mintemp> B<maxtemp> F<factor>. Exit autotemp by any M109 without F
 *
 * M110 - Set the current line number. (Used by host printing)
 * M111 - Set debug flags: "M111 S<flagbits>". See flag bits defined in enum.h.
 * M112 - Full Shutdown.
 *
 * M113 - Get or set the timeout interval for Host Keepalive "busy" messages. (Requires HOST_KEEPALIVE_FEATURE)
 * M114 - Report current position.
 * M115 - Report capabilities. (Extended capabilities requires EXTENDED_CAPABILITIES_REPORT)
 * M117 - Display a message on the controller screen. (Requires an LCD)
 * M118 - Display a message in the host console.
 *
 * M119 - Report endstops status.
 * M120 - Enable endstops detection.
 * M121 - Disable endstops detection.
 *
 * M122 - Debug stepper (Requires at least one _DRIVER_TYPE defined as TMC2130/2160/5130/5160/2208/2209/2660 or L6470)
 * M123 - Report fan tachometers. (Requires En_FAN_TACHO_PIN) Optionally set auto-report interval. (Requires AUTO_REPORT_FANS)
 * M125 - Save current position and move to filament change position. (Requires PARK_HEAD_ON_PAUSE)
 *
 * M126 - Solenoid Air Valve Open. (Requires BARICUDA)
 * M127 - Solenoid Air Valve Closed. (Requires BARICUDA)
 * M128 - EtoP Open. (Requires BARICUDA)
 * M129 - EtoP Closed. (Requires BARICUDA)
 *
 * M140 - Set bed target temp. S<temp>
 * M141 - Set heated chamber target temp. S<temp> (Requires a chamber heater)
 * M143 - Set cooler target temp. S<temp> (Requires a laser cooling device)
 * M145 - Set heatup values for materials on the LCD. H<hotend> B<bed> F<fan speed> for S<material> (0=PLA, 1=ABS)
 * M149 - Set temperature units. (Requires TEMPERATURE_UNITS_SUPPORT)
 * M150 - Set Status LED Color as R<red> U<green> B<blue> W<white> P<bright>. Values 0-255. (Requires BLINKM, RGB_LED, RGBW_LED, NEOPIXEL_LED, PCA9533, or PCA9632).
 * M154 - Auto-report position with interval of S<seconds>. (Requires AUTO_REPORT_POSITION)
 * M155 - Auto-report temperatures with interval of S<seconds>. (Requires AUTO_REPORT_TEMPERATURES)
 * M163 - Set a single proportion for a mixing extruder. (Requires MIXING_EXTRUDER)
 * M164 - Commit the mix and save to a virtual tool (current, or as specified by 'S'). (Requires MIXING_EXTRUDER)
 * M165 - Set the mix for the mixing extruder (and current virtual tool) with parameters ABCDHI. (Requires MIXING_EXTRUDER and DIRECT_MIXING_IN_G1)
 * M166 - Set the Gradient Mix for the mixing extruder. (Requires GRADIENT_MIX)
 * M190 - Set bed target temperature and wait. R<temp> Set target temperature and wait. S<temp> Set, but only wait when heating. (Requires TEMP_SENSOR_BED)
 * M192 - Wait for probe to reach target temperature. (Requires TEMP_SENSOR_PROBE)
 * M193 - R<temp> Wait for cooler to reach target temp. ** Wait for cooling. **
 * M200 - Set filament diameter, D<diameter>, setting E axis units to cubic. (Use S0 to revert to linear units.)
 * M201 - Set max acceleration in units/s^2 for print moves: "M201 X<accel> Y<accel> Z<accel> E<accel>"
 * M202 - Set max acceleration in units/s^2 for travel moves: "M202 X<accel> Y<accel> Z<accel> E<accel>" ** UNUSED IN MARLIN! **
 * M203 - Set maximum feedrate: "M203 X<fr> Y<fr> Z<fr> E<fr>" in units/sec.
 * M204 - Set default acceleration in units/sec^2: P<printing> R<extruder_only> T<travel>
 * M205 - Set advanced settings. Current units apply:
            S<print> T<travel> minimum speeds
            B<minimum segment time>
            X<max X jerk>, Y<max Y jerk>, Z<max Z jerk>, E<max E jerk>
 * M206 - Set additional homing offset. (Disabled by NO_WORKSPACE_OFFSETS or DELTA)
 * M207 - Set Retract Length: S<length>, Feedrate: F<units/min>, and Z lift: Z<distance>. (Requires FWRETRACT)
 * M208 - Set Recover (unretract) Additional (!) Length: S<length> and Feedrate: F<units/min>. (Requires FWRETRACT)
 * M209 - Turn Automatic Retract Detection on/off: S<0|1> (For slicers that don't support G10/11). (Requires FWRETRACT_AUTORETRACT)
          Every normal extrude-only move will be classified as retract depending on the direction.
 * M211 - Enable, Disable, and/or Report software endstops: S<0|1> (Requires MIN_SOFTWARE_ENDSTOPS or MAX_SOFTWARE_ENDSTOPS)
 * M217 - Set filament swap parameters: "M217 S<length> P<feedrate> R<feedrate>". (Requires SINGLENOZZLE)
 * M218 - Set/get a tool offset: "M218 T<index> X<offset> Y<offset>". (Requires 2 or more extruders)
 * M220 - Set Feedrate Percentage: "M220 S<percent>" (i.e., "FR" on the LCD)
 *        Use "M220 B" to back up the Feedrate Percentage and "M220 R" to restore it. (Requires an MMU_MODEL version 2 or 2S)
 * M221 - Set Flow Percentage: "M221 S<percent>" (Requires an extruder)
 * M226 - Wait until a pin is in a given state: "M226 P<pin> S<state>" (Requires DIRECT_PIN_CONTROL)
 * M240 - Trigger a camera to take a photograph. (Requires PHOTO_GCODE)
 * M250 - Set LCD contrast: "M250 C<contrast>" (0-63). (Requires LCD support)
 * M256 - Set LCD brightness: "M256 B<brightness>" (0-255). (Requires an LCD with brightness control)
 * M260 - i2c Send Data (Requires EXPERIMENTAL_I2CBUS)
 * M261 - i2c Request Data (Requires EXPERIMENTAL_I2CBUS)
 * M280 - Set servo position absolute: "M280 P<index> S<angle|µs>". (Requires servos)
 * M281 - Set servo min|max position: "M281 P<index> L<min> U<max>". (Requires EDITABLE_SERVO_ANGLES)
 * M282 - Detach servo: "M282 P<index>". (Requires SERVO_DETACH_GCODE)
 * M290 - Babystepping (Requires BABYSTEPPING)
 * M300 - Play beep sound S<frequency Hz> P<duration ms>
 * M301 - Set PID parameters P I and D. (Requires PIDTEMP)
 * M302 - Allow cold extrudes, or set the minimum extrude S<temperature>. (Requires PREVENT_COLD_EXTRUSION)
 * M303 - PID relay autotune S<temperature> sets the target temperature. Default 150C. (Requires PIDTEMP)
 * M304 - Set bed PID parameters P I and D. (Requires PIDTEMPBED)
 * M305 - Set user thermistor parameters R T and P. (Requires TEMP_SENSOR_x 1000)
 * M309 - Set chamber PID parameters P I and D. (Requires PIDTEMPCHAMBER)
 * M350 - Set microstepping mode. (Requires digital microstepping pins.)
 * M351 - Toggle MS1 MS2 pins directly. (Requires digital microstepping pins.)
 * M355 - Set Case Light on/off and set brightness. (Requires CASE_LIGHT_PIN)
 * M380 - Activate solenoid on active extruder. (Requires EXT_SOLENOID)
 * M381 - Disable all solenoids. (Requires EXT_SOLENOID)
 * M400 - Finish all moves.
 * M401 - Deploy and activate Z probe. (Requires a probe)
 * M402 - Deactivate and stow Z probe. (Requires a probe)
 * M403 - Set filament type for PRUSA MMU2
 * M404 - Display or set the Nominal Filament Width: "W<diameter>". (Requires FILAMENT_WIDTH_SENSOR)
 * M405 - Enable Filament Sensor flow control. "M405 D<delay_cm>". (Requires FILAMENT_WIDTH_SENSOR)
 * M406 - Disable Filament Sensor flow control. (Requires FILAMENT_WIDTH_SENSOR)
 * M407 - Display measured filament diameter in millimeters. (Requires FILAMENT_WIDTH_SENSOR)
 * M410 - Quickstop. Abort all planned moves.
 * M412 - Enable / Disable Filament Runout Detection. (Requires FILAMENT_RUNOUT_SENSOR)
 * M413 - Enable / Disable Power-Loss Recovery. (Requires POWER_LOSS_RECOVERY)
 * M414 - Set language by index. (Requires LCD_LANGUAGE_2...)
 * M420 - Enable/Disable Leveling (with current values) S1=enable S0=disable (Requires MESH_BED_LEVELING or ABL)
 * M421 - Set a single Z coordinate in the Mesh Leveling grid. X<units> Y<units> Z<units> (Requires MESH_BED_LEVELING, AUTO_BED_LEVELING_BILINEAR, or AUTO_BED_LEVELING_UBL)
 * M422 - Set Z Stepper automatic alignment position using probe. X<units> Y<units> A<axis> (Requires Z_STEPPER_AUTO_ALIGN)
 * M425 - Enable/Disable and tune backlash correction. (Requires BACKLASH_COMPENSATION and BACKLASH_GCODE)
 * M428 - Set the home_offset based on the current_position. Nearest edge applies. (Disabled by NO_WORKSPACE_OFFSETS or DELTA)
 * M430 - Read the system current, voltage, and power (Requires POWER_MONITOR_CURRENT, POWER_MONITOR_VOLTAGE, or POWER_MONITOR_FIXED_VOLTAGE)
 * M486 - Identify and cancel objects. (Requires CANCEL_OBJECTS)
 * M500 - Store parameters in EEPROM. (Requires EEPROM_SETTINGS)
 * M501 - Restore parameters from EEPROM. (Requires EEPROM_SETTINGS)
 * M502 - Revert to the default "factory settings". ** Does not write them to EEPROM! **
 * M503 - Print the current settings (in memory): "M503 S<verbose>". S0 specifies compact output.
 * M504 - Validate EEPROM contents. (Requires EEPROM_SETTINGS)
 * M510 - Lock Printer (Requires PASSWORD_FEATURE)
 * M511 - Unlock Printer (Requires PASSWORD_UNLOCK_GCODE)
 * M512 - Set/Change/Remove Password (Requires PASSWORD_CHANGE_GCODE)
 * M524 - Abort the current SD print job started with M24. (Requires SDSUPPORT)
 * M540 - Enable/disable SD card abort on endstop hit: "M540 S<state>". (Requires SD_ABORT_ON_ENDSTOP_HIT)
 * M552 - Get or set IP address. Enable/disable network interface. (Requires enabled Ethernet port)
 * M553 - Get or set IP netmask. (Requires enabled Ethernet port)
 * M554 - Get or set IP gateway. (Requires enabled Ethernet port)
 * M569 - Enable stealthChop on an axis. (Requires at least one _DRIVER_TYPE to be TMC2130/2160/2208/2209/5130/5160)
 * M575 - Change the serial baud rate. (Requires BAUD_RATE_GCODE)
 * M600 - Pause for filament change: "M600 X<pos> Y<pos> Z<raise> E<first_retract> L<later_retract>". (Requires ADVANCED_PAUSE_FEATURE)
 * M603 - Configure filament change: "M603 T<tool> U<unload_length> L<load_length>". (Requires ADVANCED_PAUSE_FEATURE)
 * M605 - Set Dual X-Carriage movement mode: "M605 S<mode> [X<x_offset>] [R<temp_offset>]". (Requires DUAL_X_CARRIAGE)
 * M665 - Set delta configurations: "M665 H<delta height> L<diagonal rod> R<delta radius> S<segments/s> B<calibration radius> X<Alpha angle trim> Y<Beta angle trim> Z<Gamma angle trim> (Requires DELTA)
 *        Set SCARA configurations: "M665 S<segments-per-second> P<theta-psi-offset> T<theta-offset> Z<z-offset> (Requires MORGAN_SCARA or MP_SCARA)
 * M666 - Set/get offsets for delta (Requires DELTA) or dual endstops. (Requires [XYZ]_DUAL_ENDSTOPS)
 * M672 - Set/Reset Duet Smart Effector's sensitivity. (Requires DUET_SMART_EFFECTOR and SMART_EFFECTOR_MOD_PIN)
 * M701 - Load filament (Requires FILAMENT_LOAD_UNLOAD_GCODES)
 * M702 - Unload filament (Requires FILAMENT_LOAD_UNLOAD_GCODES)
 * M808 - Set or Goto a Repeat Marker (Requires GCODE_REPEAT_MARKERS)
 * M810-M819 - Define/execute a G-code macro (Requires GCODE_MACROS)
 * M851 - Set Z probe's XYZ offsets in current units. (Negative values: X=left, Y=front, Z=below)
 * M852 - Set skew factors: "M852 [I<xy>] [J<xz>] [K<yz>]". (Requires SKEW_CORRECTION_GCODE, plus SKEW_CORRECTION_FOR_Z for IJ)
 *
 *** I2C_POSITION_ENCODERS ***
 * M860 - Report the position of position encoder modules.
 * M861 - Report the status of position encoder modules.
 * M862 - Perform an axis continuity test for position encoder modules.
 * M863 - Perform steps-per-mm calibration for position encoder modules.
 * M864 - Change position encoder module I2C address.
 * M865 - Check position encoder module firmware version.
 * M866 - Report or reset position encoder module error count.
 * M867 - Enable/disable or toggle error correction for position encoder modules.
 * M868 - Report or set position encoder module error correction threshold.
 * M869 - Report position encoder module error.
 *
 * M871 - Print/reset/clear first layer temperature offset values. (Requires PTC_PROBE, PTC_BED, or PTC_HOTEND)
 * M876 - Handle Prompt Response. (Requires HOST_PROMPT_SUPPORT and not EMERGENCY_PARSER)
 * M900 - Get or Set Linear Advance K-factor. (Requires LIN_ADVANCE)
 * M906 - Set or get motor current in milliamps using axis codes XYZE, etc. Report values if no axis codes given. (Requires at least one _DRIVER_TYPE defined as TMC2130/2160/5130/5160/2208/2209/2660 or L6470)
 * M907 - Set digital trimpot motor current using axis codes. (Requires a board with digital trimpots)
 * M908 - Control digital trimpot directly. (Requires HAS_MOTOR_CURRENT_DAC or DIGIPOTSS_PIN)
 * M909 - Print digipot/DAC current value. (Requires HAS_MOTOR_CURRENT_DAC)
 * M910 - Commit digipot/DAC value to external EEPROM via I2C. (Requires HAS_MOTOR_CURRENT_DAC)
 * M911 - Report stepper driver overtemperature pre-warn condition. (Requires at least one _DRIVER_TYPE defined as TMC2130/2160/5130/5160/2208/2209/2660)
 * M912 - Clear stepper driver overtemperature pre-warn condition flag. (Requires at least one _DRIVER_TYPE defined as TMC2130/2160/5130/5160/2208/2209/2660)
 * M913 - Set HYBRID_THRESHOLD speed. (Requires HYBRID_THRESHOLD)
 * M914 - Set StallGuard sensitivity. (Requires SENSORLESS_HOMING or SENSORLESS_PROBING)
 * M916 - L6470 tuning: Increase KVAL_HOLD until thermal warning. (Requires at least one _DRIVER_TYPE L6470)
 * M917 - L6470 tuning: Find minimum current thresholds. (Requires at least one _DRIVER_TYPE L6470)
 * M918 - L6470 tuning: Increase speed until max or error. (Requires at least one _DRIVER_TYPE L6470)
 * M919 - Get or Set motor Chopper Times (time_off, hysteresis_end, hysteresis_start) using axis codes XYZE, etc. If no parameters are given, report. (Requires at least one _DRIVER_TYPE defined as TMC2130/2160/5130/5160/2208/2209/2660)
 * M951 - Set Magnetic Parking Extruder parameters. (Requires MAGNETIC_PARKING_EXTRUDER)
 * M3426 - Read MCP3426 ADC over I2C. (Requires HAS_MCP3426_ADC)
 * M7219 - Control Max7219 Matrix LEDs. (Requires MAX7219_GCODE)
 *
 *** SCARA ***
 * M360 - SCARA calibration: Move to cal-position ThetaA (0 deg calibration)
 * M361 - SCARA calibration: Move to cal-position ThetaB (90 deg calibration - steps per degree)
 * M362 - SCARA calibration: Move to cal-position PsiA (0 deg calibration)
 * M363 - SCARA calibration: Move to cal-position PsiB (90 deg calibration - steps per degree)
 * M364 - SCARA calibration: Move to cal-position PSIC (90 deg to Theta calibration position)
 *
 *** Custom codes (can be changed to suit future G-code standards) ***
 * G425 - Calibrate using a conductive object. (Requires CALIBRATION_GCODE)
 * M928 - Start SD logging: "M928 filename.gco". Stop with M29. (Requires SDSUPPORT)
 * M993 - Backup SPI Flash to SD
 * M994 - Load a Backup from SD to SPI Flash
 * M995 - Touch screen calibration for TFT display
 * M997 - Perform in-application firmware update
 * M999 - Restart after being stopped by error
 *
 * D... - Custom Development G-code. Add hooks to 'gcode_D.cpp' for developers to test features. (Requires MARLIN_DEV_MODE)
 *        D576 - Set buffer monitoring options. (Requires BUFFER_MONITORING)
 *
 *** "T" Codes ***
 *
 * T0-T3 - Select an extruder (tool) by index: "T<n> F<units/min>"
 */

最后

以上就是内向外套为你收集整理的3D打印机 G代码解释的全部内容,希望文章能够帮你解决3D打印机 G代码解释所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部