Hey Leute, ich bin auf der Suche nach folgendem: CAN 500kBaud -> CAN 1MBaud Umsetzer Gibt es dafür einen IC? Ich finde leider nichts - kann aber auch daran liegen dass ich nach den falschen Begriff suche (Umsetzer, Converter,...) Alternativ fallen mir zwei Dinge ein: 1. uC mit zwei CAN Treibern. Da finde ich eign nur ARM (STM32) uC - welche vollkommener Overkill wären 2. kleiner uC mit zwei RS232 -> CAN Transceiver. WÄr halt deutlich mehr Aufwand als ein einfacher Umsetzer. Hat jemand eine Idee? Danke und schönen Tag noch!
Sowas nennt sich Gateway. Da beide Busse mit unterschiedlicher Geschwindigkeit laufen ist ein Pufferspeicher dazwischen nötig. Damit läuft das Ganze auf einen Controller mit zwei CAN-Bussen hinaus.
Im Anhang ein einfacher C++ Beispielcode für einen STM32F105RC, welcher Nachrichten zwischen beiden CAN-Schnittstellen hin und herleitet. Durch Konfiguration der beiden Schnittstellen auf unterschiedliche Baudrate (im Beispiel: CAN1 = 1MBaud, CAN2 = 500kBaud) erreicht man eine Umsetzung der Baudrate. Es werden nicht einfach alle Nachrichten umgeleitet, sondern nur die, die man per Liste konfiguriert und deren ID man optional anpassen kann. Es können maximal insgesamt 56 verschiedene Nachrichten umgeleitet werden (mehr Hardware-Filter hat der Controller nicht). Zum Kompilieren wird der GCC in einer aktuellen Version benötigt. Der Verwendung der Klassen ist für so ein kleines Projekt etwas Overkill, der Code ist Teil eines größeren Projekts in dem das Sinn macht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.