littlebot
Published on 2025-04-18 / 1 Visits
0

【源码】基于STM32微控制器的3D打印机固件系统

项目简介

本项目是一个开源的Marlin 3D打印机固件,基于STM32微控制器构建,为3D打印机提供了强大的控制和通信能力,能够满足3D打印机控制的各项需求。

项目的主要特性和功能

  1. 硬件支持:支持ARM Cortex - M3 32位处理器,Delta模型已移植到STM32F1,可通过硬件抽象层在不同微控制器上运行。
  2. 快速日志功能:文件传输任务与打印任务不同步,UART传输能尽快完成,无需长时间等待打印任务处理。
  3. 显示支持:支持通过128x64 LCD进行中文显示。
  4. 运动控制:提供精确的运动控制,包括直线、圆弧插补以及步进电机控制。
  5. 温度控制:支持热头温度控制,可设置目标温度并等待达到设定值。
  6. SD卡支持:能从SD卡读取G代码文件,实现3D打印自动化。
  7. 用户界面:支持LCD屏幕显示,提供友好界面用于显示打印状态和设置参数。
  8. 中断和异常处理:实现中断处理机制,可处理外部事件,如传感器输入、按键操作等。
  9. 调试和日志记录:支持串行通信,便于调试和日志记录。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件。

操作步骤

  1. 将现有项目导入Eclipse CDT工作区。
  2. 修改交叉工具链路径为自己的路径。
  3. 修改 som/variants/variant.cppvariant.h 以适配自己的核心板。
  4. 修改 marlin/pins.h 以适配自己的硬件连接。
  5. 通过 marlin/Configuration*.h 配置个性化设置。
  6. 根据具体的硬件连接,配置STM32微控制器的引脚,包括GPIO、ADC、SPI、USART等。
  7. 使用适当的编译器和工具链,编译固件代码并烧录到STM32微控制器上。
  8. 将3D打印机硬件连接到微控制器,并进行测试,确保固件正常工作。
  9. 使用串行通信和LCD屏幕调试固件,根据需要优化参数和设置。

注意事项

  • DIY后,需确保所有步进电机运动的一致性,否则可能出现奇怪的运动轨迹。要先进行硬件调整,让打印机塔的3个载体同时匀速从上到下移动,观察行程距离差异,再分别调整步进电机的驱动电流,直到喷嘴最终位于工作台中心。
  • 由于固件支持多种微控制器,具体安装使用步骤可能因硬件平台不同而有差异,安装和配置时需参考相关硬件平台的文档和指南。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】