diff --git a/a.ino b/a.ino index 602ed81..cb6449e 100644 --- a/a.ino +++ b/a.ino @@ -348,9 +348,12 @@ void resetMCP2515() { // 4. MCP2515 재초기화 mcp2515.reset(); delay(100); + currentCanSpeed = preferences.getInt("can_speed", CAN_500KBPS); + mcp2515.setBitrate(currentCanSpeed, MCP_8MHZ); delay(10); - mcp2515.setListenOnlyMode(); + currentMcpMode = preferences.getInt("can_mode", MCP_MODE_LISTEN_ONLY); + //mcp2515.setListenOnlyMode(); //currentMcpMode = MCP_MODE_LISTEN_ONLY; @@ -2925,12 +2928,20 @@ void setup() { mcp2515.reset(); delay(100); + currentCanSpeed = preferences.getInt("can_speed", CAN_500KBPS); mcp2515.setBitrate(currentCanSpeed, MCP_8MHZ); delay(10); - mcp2515.setListenOnlyMode(); - //currentMcpMode = MCP_MODE_LISTEN_ONLY; - currentMcpMode =(MCP2515Mode)preferences.getInt("mcp_mode", 1); - + currentMcpMode = preferences.getInt("can_mode", MCP_MODE_LISTEN_ONLY); + + // 5. 모드 설정 (Normal/Loopback/Listen Only) + if (currentMcpMode == MCP_MODE_NORMAL) { + mcp2515.setNormalMode(); + } else if (currentMcpMode == MCP_MODE_LOOPBACK) { + mcp2515.setLoopbackMode(); + } else { + mcp2515.setListenOnlyMode(); + } + delay(50); // 버퍼 클리어