Hallo, ich versuche zwei ISE CAN-Cores in VHDL zu verbinden. Will dann also über den einen Core Daten auf den CAN-Bus geben, die vom zweiten Core empfangen werden sollen. Die Cores haben zwei Ausänge Tx unt Rx. Diese muss ich ja erstmal irgendwie zusammen auf eine Leitung bringen. Also mit einem Baustein, der die Regelung von schwachen 1 und starken 0 übernimmt. Das müsste ich ja dann auf beiden Seiten machen und dann die beiden Cores verbinden. Wenn ich das dann aber machen, sendet der eine Core nichts mehr, oder der andere empfängt rein gar nichts mehr... Hat da schonmal jemand Erfahrungen gesammelt? Viele Grüße, Martina
Das sind die Cores von Xilinx ISE (aus dem Core-Generator). Diese sind für Simulationen kostenlos verfügbar.
OK, ganz herzlichen Dank! Werde ich jetzt mal so versuchen. Und eine weitere Logik für die dominanten Pegel brauche ich nicht? Bzw. eine verUNDung ist ja schon eine Art der Logik....
Bevor ich selber einen Erklärung über CSMA/CA-Zugriffsverfahren erstelle und warum ein UND-Glied ausreicht, hier ein Link: http://www.elektroniknet.de/home/automotive/technik-know-how/uebersicht/l/bussysteme/serielle-bussysteme-im-automobil-ii/2/ Insbesondere mal die Grafik genauer anschauen.
Hallo, vielen Dank!! Hat jetzt wunderbar funktioniert! Bin jetzt schon ziemlich lange damit beschäftigt, bei den Xilinx IP-Cores die Übertragungsgeschwindigkeit einzustellen. Dort muss man die mit den Baud Rate Prescaler und Bit Timing Register einstellen, und natürlich mit dem CAN-Clock. Hier gibt es ja nicht zur eine Möglichkeit, auch hier (http://www.kvaser.com/can/protocol/timing_calc.htm) werden ja mehrere Möglichkeiten angegeben. Welche Einstellungen kann man für eine gewünschte Rate von 1Mbps empfehlen? Viele Grüße, Martina
Hallo, danke für das Feedback. Netter Baudraten-Rechner. Hatte mal einen ein EXCEL angelegt. Die verschidenen Möglichkeiten sind dazu da, einen physikalichen BUS zu optimieren. Stichworte : Syncronisation und Samplepoint. http://www.can-cia.org/index.php?id=88 Für eine Simulation ist das aber ohne Belang. Es sei den, Du willst auch noch Überschwingen und Verzögerungen vom CAN-bus simulieren. ciao Volker
O, ich glaub da Fehlt noch was. Natürlich muss am ende 1MHz raus kommen. Wen man den Prescaler auf 16MHz einstellt, kan man fast alle Baudraten (bis auf die ganz langsamen) gut einstellen. Hängt davon ab welchen Wertebereich deine CAN-Clock-Register erlauben. ciao Volker
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.