将card. initsd()移到tp_init()之前是解决此问题的一种方法。 card.initsd() prior to tp_init() is one solution to this problem. 下面是我在marlin.pde中使用的修复方法。 marlin.pde .
/* SD card initializes the SPI pins for input/output. When SDSUPPORT is defined, the max6675 depends on this initialization. */
#if defined(SDSUPPORT)
card.initsd();
#endiftp_init(); // Initialize temperature loop
当前代码
tp_初始化()不初始化莫西,米索,SCK引脚时SD支持定义。 (It还应将硬件SS引脚初始化为输出。) 它会初始化MAX 6675_不锈钢这是正确的。 然而,由于其他SPI引脚尚未配置为输入/输出,因此tp_初始化()使能定时器中断,由于SPI尚未初始化,它将在无限循环中挂起。将card. initsd()移到tp_init()之前是解决此问题的一种方法。
card.initsd()prior totp_init()is one solution to this problem. 下面是我在marlin.pde中使用的修复方法。marlin.pde.我还修改了
temperature.cpp所以它初始化了SS引脚。 这允许我使用任何引脚MAX6675_不锈钢。