klipper代码结构分析
1、src/ 目录
包含微控制器的C源码。
其中/src/atsam, /src/atsamd, /src/avr, /src/linux/, src/lpc176x, /src/pru, /src/stm32对应微处理器架构的源码。
/src/simulator/包含用于交叉编译、测试目标微处理器的代码。
/src/generic/ 为不同架构均有用的代码。编译”board/somefile.h”时,编译器会优先使用架构特定的目录(即src/avr/somefile.h)随后寻找通用目录(src/generic/somefile.h)
PS: 在klipper目录下执行make menuconfig命令时,可以查看到相关处理器架构
2、klippy/ 目录
包含了上位机软件。软件大部分由python实现,同时klippy/chelper/目录包含了由C实现的有用代码。klippy/kinematics/ 目录包含了机械运动学的实现代码。Klippy/extras/ 目录包含了上位机的扩建模块(“modules”)。
3、lib/ 目录
包含了构建必须的第三库代码。
4、config/ 目录
包含了打印机配置的实例代码。
5、scripts/ 目录
包含了编译微控制器代码时有用的脚本。
6、test/ 目录
包含了自动测试实例。
7、out/ 目录
编译过程中,编译器会构建out/目录,该目录包含了构建时的临时文件。对于AVR架构,编译器输出的为out/klipper.elf.hex,而对ARM架构则为out/klipper.bin。
PS: https://www.klipper3d.org/zh/Config_Reference.html

浙公网安备 33010602011771号