質問: 0; i
回答: まず、部分部分でデバッグできるようにしてはどうでしょうか? スケッチ例を確認して、どのようにすればエラーの確認ができるかわかると思います。 ここに示す方法もスケッチ例からのコピペです。 あなた⇒ ``` Serial.begin(9600); CAN0.begin(CAN_STDID, CAN_500KBPS, MCP_8MHZ); // CANの通信速度を500kbpsにする ``` 提案例⇒ ``` Serial.begin(9600); Serial.print("Begin CAN Training => "); // Initialize MCP2515 running at 16MHz with a baudrate of 500kb/s and the masks and filters disabled. if(CAN1.begin(MCP_ANY, CAN_500KBPS, MCP_16MHZ) == CAN_OK) Serial.println("MCP2515 No.1 Initialized Successfully!"); else Serial.println("Error Initializing MCP2515 No.1..."); CAN1.setMode(MCP_NORMAL); // Change to normal mode to allow messages to be transmitted コード ``` あなた⇒ ``` if(!digitalRead(INT_PIN)) { CAN0.readMsgBuf(&rxId,&len,rxBuf); Serial.print("ID: "); Serial.print(rxId, HEX); Serial.print(" Data: "); for(int i = 0; i"); Serial.println(msgString); sprintf(msgString, "DLC: %1d Data:", len); Serial.print(msgString); //Serial.print(" DLC: %1d Data:", len); if((CAN2Id & 0x40000000) == 0x40000000){ // Determine if message is a remote request frame. sprintf(msgString, " REMOTE REQUEST FRAME"); Serial.print(msgString); } else { for(byte i = 0; i