diff --git a/mcp_can.cpp b/mcp_can.cpp index abb5b62..3d8594d 100644 --- a/mcp_can.cpp +++ b/mcp_can.cpp @@ -453,7 +453,11 @@ byte MCP_CAN::mcp2515_configRate(const byte canSpeed, const byte clock) { cfg2 = MCP_16MHz_40kBPS_CFG2; cfg3 = MCP_16MHz_40kBPS_CFG3; break; - + case (CAN_47KBPS): + cfg1 = MCP_16MHz_47kBPS_CFG1; + cfg2 = MCP_16MHz_47kBPS_CFG2; + cfg3 = MCP_16Mhz_47kBPS_CFG3; + break; case (CAN_50KBPS): cfg1 = MCP_16MHz_50kBPS_CFG1; cfg2 = MCP_16MHz_50kBPS_CFG2; diff --git a/mcp_can_dfs.h b/mcp_can_dfs.h index 83c4078..f163dd6 100644 --- a/mcp_can_dfs.h +++ b/mcp_can_dfs.h @@ -405,6 +405,10 @@ #define MCP_8MHz_5kBPS_CFG2 (0xbf) #define MCP_8MHz_5kBPS_CFG3 (0x07) +#define MCP_16MHz_47kBPS_CFG1 (0x06) +#define MCP_16MHz_47kBPS_CFG2 (0xBE) +#define MCP_16Mhz_47kBPS_CFG3 (0x07) + #define MCPDEBUG (0) #define MCPDEBUG_TXBUF (0) #define MCP_N_TXBUFFERS (3) @@ -465,6 +469,7 @@ #define CAN_500KBPS 16 #define CAN_666KBPS 17 #define CAN_1000KBPS 18 +#define CAN_47KBPS 19 #define CAN_OK (0) #define CAN_FAILINIT (1)