저는 오랫동안 그 문제를 해결해야합니다.MCP2515 보이스 레이드 문제
두 개의 MCP2515 CAN 인터페이스 칩이 서로 연결되어 있습니다. 하나는 Arduino에 의해 제어되고 다른 하나는 STM32 보드에 의해 제어됩니다.
계획 : - : 나는 50K로 STM32 50K와에 아두 이노의 전송 속도를 설정하면 (> = 전송)
Arduino-> MCP2515-> MCP2515-> STM32
에는 수신 방해가 없다 두 번째 MCP2515. Arduino의 전송 속도를 100k로 두 배로 늘리면 인터럽트가 발생하고 데이터가 올바르게 전송됩니다.
이상한 점은 : CFG1 CFG2 CFG3 레지스터 설정이 두 MCP2515 칩 모두 동일합니다! 물론 주파수를 항상 두 배로 늘릴 수 있지만 보우는 31K25와 같이 라이브러리에없는 62K5를 필요로합니다. 누군가가 같은 문제를 겪었거나 도움이되기를 바랍니다. 그런데
https://github.com/latonita/arduino-canbus-monitor/blob/master/mcp_can.cpp
:
또한 전송 속도 참조에 대한이 코드를 시도 아두 이노 IDE가 헤더를 사용했기 때문에
10k 및 5k 작동 중, Arduino 라이브러리 (모든 시도)는 5 및 10k Baud에서 어떻게 든 손상됩니다. CAN 보드가 장착 된 Raspberry Pi는 5와 10k로 보내졌으며 마이크로 컨트롤러에서 작동했습니다. 1000Kbps의 문제점은 터미네이션 저항기였습니다. :) – ionman