mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT90CAN128 und 2 CAN Busse


Autor: Johannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe folgendes Problem: Ich habe einen CAN Bus mit etlichen zig 
Nodes. Einen weiteren Node muss ich  jetzt anhängen. Ich habe einen 
Baustein der seine Daten auf ein Request mit ID (zB xxx) zurücksendet. 
Nun ist diese Request ID schon vergeben für einen anderen Teilnehmer, 
und ich selber kann diese ID nicht ändern. (Unguter Zufall!!)
Ist es möglich mit einem AT90CAN128 controller zwei CAN-Busse zu 
bedienen? Ich würde gerne meinen neuen Knoten mit dem CAN des uC 
verbinden (erster CAN Bus) und nachdem ich seine Daten ausgelesen hab, 
dann auf den Haupt-CAN-Bus umschalten und dort etwas senden/empfangen. 
Ich denke dabei dran die CANL und CANH Leitungen meines Bustreibers 
abwechselnd (evtl. zeitgesteuert) an den "großen" und an den "kleinen" 
CAN Bus zu hängen, und jeweils zu senden/empfangen was für die 
Steuerungsaufgabe wichtig ist.

Ist dies überhaupt möglich? Mit was für einem Baustein könnte ich dieses 
"Umschalten" der Leitungen realisieren?

mg,
Johannes

Autor: Johannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kennt jemand vielleicht einen CAN-Transciever, den man über eine Leitung 
an und abschalten kann? Enable/Disable Leitung wäre super. Man könnte 
dann wahlweise je einen Transciever enablen und für den entspr. CAN Bus 
verwenden. Danach eben den zweiten enablen und den ersten disablen.

mg,
Johannes

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AMIS-42700 Dual High-Speed CAN Transceiver

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kommt drauf an, ob das geht. In der Zeit, wo du auf den anderen 
umschaltest, geht dir dir alles auf dem "Haupt-CAN" verloren. Und auch 
die Rückschaltung kommt natürlich völlig asynchron, also normalerweise 
mitten in einem frame.
Weiteres Manko: der an dem abgeschalteten Transceiver hängende node 
bekommt keinerlei ack, wird sich also schnell abschalten.
Die saubere Lösung, wenn du keinen Zugriff auf die Einstellungen der 
anderen nodes hast: häng einen MCP2515 an die SPI und bau einen 2.Bus 
auf.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn eine der Nodes allein auf dem Bus ist und etwas senden will, dann 
läuft sie mangels ACK auf Fehlerzustand. Das wäre dabei zu bedenken.

Autor: Johannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

vielen dank für die Tipps und Anregungen. Der AMIS-42700 sieht sehr 
vielversprechend aus.

@tex: Wie ist das mit den ACKs? werden die automatisch auf beide Busse 
verschickt wenn dort jeweils etwas ankommt?

@crazy horse: Wie funktioniert das dann mit der Programmierung bei SPI. 
Werden da auch MObs verwendet wie bei der Übertragung über den 
CAN-Controller? Wie werden die Frames gebildet?


mg,
Johannes

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der MCP2515 ist kein FullCAN Controller, hat also keine MOBs wie der 
AT90CAN. Was bei einer einzigen Node kein Problem sein dürfte.

Autor: Johannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nach einmal,

woher bekommt man den AMIS42700 Chip? Bei reichelt oder farnell gibts 
ihn leider nicht.

Johannes

Autor: Johannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ tex: hast du den amis42700 schonmal verwendet? woher hattest du ihn?

Johannes

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AZZURRI Technology GmbH
Maria Turban
Kapuzinerstrasse 9
80337 München
Tel. +49 89 5164 164
Fax:+49 89 5164 364

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.