www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR dierekt an CAN-Signal


Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen

Ich habe mir einen eigenen Can-adapter gebaut der auch super 
funktioniert unter anderem habe ich eine funktion programiert, die die 
baudrate vom jeweiligen Cansignal selber findet...Das fuktioniert auch 
super nur dauert das ewig :( Nich zu letzt liegt das daran, das er immer 
1.Sek wartet bis er Die registerpaare CNF1 CNF2 CNF3 um eins 
erhöht...Nun zu meiner Frage ich hab mir überlegt, wenn ich das CAN_low 
signal dirikt an einen AVR Pin lege, und diesen wärend der "Auto-suche" 
ständig abfrage dann weis ich doch das gerade etwas gesendet wurde und 
wenn ich dann so 10ms später im MCP nachschaue und nix drin ist...usw

Hat das schon mal einer gemacht von euch ???

Ich würde auch gerne den abschlusswiederstand per Reed relais dazwischen 
schalten hab nur angst das mir die spule in dem relais das CAN signal 
negativ beinträchitg oder was meint ihr ???

Vielen dank schon ma im vorraus

Autor: winne (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das finde ich alles ziemlich interresant.

zu deiner frage, nimm doch einen Analogschalter mit FET statt read 
relais oder nur nen digital poti welches du zwischen 50 Ohm und 50 kOhm 
umschaltest.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rene Schir wrote:

> erhöht...Nun zu meiner Frage ich hab mir überlegt, wenn ich das CAN_low
> signal dirikt an einen AVR Pin lege,

Nimm lieber das Rx-Signal vom Transceiver. Dann lebt der AVR länger.

Und das wiederum liegt da schon. Musst du bloss abfragen.

> Ich würde auch gerne den abschlusswiederstand per Reed relais dazwischen
> schalten hab nur angst das mir die spule in dem relais das CAN signal
> negativ beinträchitg oder was meint ihr ???

Du sollst nicht die Spule vom Relais in Serie zum Abschlusswiderstand 
schalten, sondern den Schaltkontakt.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
winne wrote:

> zu deiner frage, nimm doch einen Analogschalter mit FET statt read
> relais oder nur nen digital poti welches du zwischen 50 Ohm und 50 kOhm
> umschaltest.

Jo, und da der Spannungsbereich vom CAN Bus locker ausserhalb von 0..5V 
liegen kann betreibst du diese Dinger natürlich mit +/-12V.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andreas Kaiser wrote:

> Und das wiederum liegt da schon.

Jedenfalls wenn der CAN Controller intern ist und auf 2 GPIO Pins gemuxt 
ist.

Autor: winne (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Herr Kaiser,

habe ich irgend etwas über die Pegelanpassung verlautet?, geschweige von 
denn über eine direkte Kopplung?

Aber wer's potetialfrei will, nehme nen Solidstaterelaise z.B. von 
Cosmos. mit 5V steuerbar und mit weitem Spannungsbereich auf der 
Schaltseite verfügbar. Galvanisch getrennt durch optokoppler und in so 
manchem 56K Modem zu finden.

Wenn René bis dahin gekomen ist trau, ich im auch zu diese Hürde zu 
nehmen. Du offensichtlich denkst alle würden nur soweit denken wie du 
selbst, wenn überhaupt, hast du den Durchblick?

Schon mal auf die Idee gekommen er sei in der Lage einen Pegel 
anzupassen? Es ging wohl eher um die Signalauswertung. Ih glaube nicht, 
dass er zu doof ist Spannungsgrenzen eizuhalten wenn er in der Lage ist 
nen CAN-Bus ohne Treiberchip zu bedienen?

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andreas hat schon recht, ist keine gute Idee die CAN-Signale per GPIO 
ein zu lesen. Damit zerschießt du dir am ende nur was.

An RX des CAN Transceivers liegt doch schon das gewünschte Signal... 
also warum noch mehr aufwand treiben?

Gegen das Relais um den Abschlusswiderstand zu schalten ist nichts aus 
zu setzen. Im Schaltmoment kann es sein das du dir Störungen einfängst. 
Aber sobald das Relais geschaltet hat ist es ja ein quasi ohmscher 
Verbraucher.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
winne wrote:

> wenn er in der Lage ist nen CAN-Bus ohne Treiberchip zu bedienen?

Und den CAN Controller MCP[2515] mit seinen Registern CNF1-3 hat er nur 
zur Zierde drauf?

Autor: winne (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
o.k. darauf hatte ich nicht geschaut, ändert aber nichts daran dass man 
anderen auch etwas zutrauen darf.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
winne wrote:

> o.k. darauf hatte ich nicht geschaut, ändert aber nichts daran dass man
> anderen auch etwas zutrauen darf.

Von Potentialtrennung zwischen Controller und CAN-Bus war nirgends die 
Rede, und ohne die dürfen die CAN-Signale mindestens im Bereich -7..+12V 
relativ zum GND Pin von Transceiver und Controller liegen. Da er einen 
CAN Controller verwendet und eine CAN_low Leitung erwähnt, war auch 
klar, dass er einen Transceiver verwendet.

Wenn man also den AVR direkt am Bus anschliesst, dann landet eine 
Potentialdifferenz zwischen den Nodes voll am AVR Pin und das ist nicht 
empfehlenswert.

Das gleiche gilt auch für Analogschalter oder Digitialpotis ohne innere 
Potentialtrennung, auch da wären Pegel ausserhalb von deren zulässigem 
Spannungsbereich laut CAN zulässig.

Nichts anderes habe ich damit ausgedrückt. Auf leicht sarkastische 
Weise, das mag sein. Aber wenn man schon Tipps mit solchen potentiell 
üblen Nebeneffekten gibt, sollte man mindestens darauf hinzuweisen.

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Muss man einfach mal mit klar kommen wenn jemand anders recht hat...

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit dem RX PIN ist eine gute Idee das werde ich mal 
probieren....Danke für eure Zahlreichen tips und auch wenn hier der eine 
oder andere der meinung is das ich zu doof sei dem sei gesagt...das soll 
er erstma selber bauen und dann sich noch mal hier melden den der teufel 
steckt im detail !!!

Autor: Rene Schir (gigastulle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So ich habe Das Can signal Von RXD direkt an den AVR gehangen und das 
funktioniert einfach wunder bar vielendank noch mal !!!

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.