HI an alle, ich habe 2 verschiedene stecker, auf denen je 1x CAN-Bus kommen soll. Allerdings wollte ich Sie an einen Treiber anschließen. Geht das einfach, wenn ich LOW mit LOW und HIGH mit HIGH verbinde oder muss ich da noch mehr beachten? MfG
> Geht das einfach, wenn ich LOW mit LOW und HIGH mit HIGH verbinde > oder muss ich da noch mehr beachten? Can-Gnd sollte auch verbunden werden.
Hallo, sicherheitshalber nachgefragt (wegen gemeinsam auf Treiber): Du hast zwei vollwertige Busse (also nach dem Tranceiver), die Du gerne zusammenschalten möchtest um dann ein weiteren CAN-Knoten (Deinen Treiber - was meinst Du damit eigentlich genau?) damit zu verbinden? Oder hast Du zwei CAN-Controler/Mikrocontroller mit CAN, die Du gemeinsam auf einen Tranceiver (Treiber) schalten möchtest? Im ersten Fall geht es, wenn man High/Low/Gnd miteinander verbindet und die Nachrichten der beiden Busse keine gleichen IDs haben. Aufpassen muss man dann noch mit der Terminierung, da dann vermutlich zwei Terminierungen überflüssig geworden sind. Der zweite Fall ist schwieriger (dann wäre es aber auch RX/TX und nicht High/Low), ginge aber auch mit einer entsprechenden Logikschaltung. Schöne Grüße, Martin
OnkelOtto schrieb: > Klar geht das. Deshalb heisst es ja "Bus". Das ist aber nicht bei jedem Bus so. Bei USB geht das z.B. nicht. Martin L. schrieb: > Der zweite Fall ist schwieriger (dann wäre es aber auch RX/TX und nicht > High/Low), ginge aber auch mit einer entsprechenden Logikschaltung. Und passender Software, denn die beiden Controller dürften ja dann nicht gleichzeitig zugreifen, und auch dürfe es nur einer initialisieren/konfigurieren. Das wäre generell ein wenig sinnvolles Unterfangen.
Hallo, nein, passende Software ist nicht notwendig, da die Tranceiver tatsächlich nur die Bustreiber sind (und zumindest in der Basisversion auch höchstens durch einen Rate-Limiter-Widerstand konfiguriert werden) und die Kollisionserkennung- und behandlung dann weiterhin in den beiden CAN-Controllern stattfinden würde. Ich glaube den Fall den Du im Kopf hattest wären zwei µC die auf einen gemeinsamen CAN-Controller zugreifen (z.B. seriell). Da würde ich Dir allerdings zustimmen, dass das gar keinen Sinn macht. Schöne Grüße, Martin
Naja, man muss zumindest sicherstellen, dass bei Zusammenschalten der beiden CAN-TX Pins bei gleichzeitigem Dominanten und Rezessive Pegel der Dominante Pegel anliegt. Da zusätzlich auch ein Transceiver im Einsatz ist, entfällt die Sorge um die Rückführung des CAN-TX Signals auf den CAN-RX Pin. Hier wäre noch eine Beschaltung notwendig, wenn man ganz auf den Transceiver im Netzwerk verzichtet.
Steffen Rose schrieb: > Naja, man muss zumindest sicherstellen, dass bei Zusammenschalten der > beiden CAN-TX Pins bei gleichzeitigem Dominanten und Rezessive Pegel der > Dominante Pegel anliegt. Auf der Seite gibt es eigentlich noch keine dominanten oder rezessiven Pegel. Das ist ja eines der Dinge, die der Transceiver erst macht. Ich hab grad mal im Datenblatt des SJA-1000 geschaut, und da ist es einstellbar, wie die TX-Pins sich verhalten sollen. Je nach Einstellung gibt's halt nen Kurzschluss, wenn der eine High sendet und der andere Low. Ich weiß nicht, wie's bei anderen CAN-Controllern ist.
Dann mach halt Dioden in die Tx-Leitungen und sieh einen gemeinsamen Pullup vor. Das nennt man "wired or".
@ rmagnus USB ist keine Busstruktur sondern eine Baumstruktur. Der Name ist da völlig irreführend. Es müsste eigentlich "Universal Serial Baum" heissen. @diverse andere Thema verfehlt. Der OP möchte Low mit Low verbinden und High mit High, nicht Tx mit Tx und Rx mit Rx. Den GND noch mit zu verbinden macht das ganze natürlich hübscher.
Bei 2 vershiedenen Steckern mit je einem CAN-Bus stellen sich eigentlich ertst einmal ein paar Fragen: Wie hoch ist die Auslastung der Busse? Welche Baudrate verwenden die Busse, oder kommen alle Teilnehmer mit Mischbetrieb zurecht? Gibt es IDs die auf beiden Bussen verwendet werden?
OnkelOtto schrieb: > @ rmagnus > USB ist keine Busstruktur sondern eine Baumstruktur. > Der Name ist da völlig irreführend. Es müsste eigentlich "Universal > Serial Baum" heissen. Wie kommst du darauf, daß ein Bus nur dann einer ist, wenn alle Teilnehmer elektrisch parallel geschaltet sind? Bei PCI express gibt's auch separate Lanes für jeden Teilnehmer, und man spricht von einem Bus. Oder wie es die Wikipedia sagt: "Early computer buses were parallel electrical wires with multiple connections, but the term is now used for any physical arrangement that provides the same logical functionality as a parallel electrical bus. Modern computer buses can use both parallel and bit serial connections, and can be wired in either a multidrop (electrical parallel) or daisy chain topology, or connected by switched hubs, as in the case of USB."
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.