Forum: Mikrocontroller und Digitale Elektronik CAN und BananaPi / A20


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Karl R. (Gast)


Lesenswert?

Hi,
auf dem 26 poligen Pin Header vom bPi liegen ja auf Pin 16/18 
CAN_TX/CAN_RX.

Mich würde mal interessieren wie aufwändig es ist das CAN Interface von 
der Software Seite aus in Betrieb zu nehmen - also dass unter dev ein 
nutzbares CAN Gerät auftaucht.

Gibt es so was wie ein defakto Standard für die CAN Register?

von Noch einer (Gast)


Lesenswert?

Da scheint sich was geändert zu haben! Gestern behauptete jemand, es 
würde inzwischen laufen.

http://forum.lemaker.org/209-4-1-4.html

von Steffen R. (steffen_rose)


Lesenswert?


von Heinz-Jürgen O. (Firma: emtas) (hjo)


Lesenswert?

can4linux from sourceforge works.
The sources are not integrated into the kernel sources (drivers/char/..)
You have to store it somewhere and you have to have the kernel sources 
to compile against it.

on the mentioned lemaker forum
http://forum.lemaker.org/209-4-1-4.html
user paja gives exact instructions how to perform the process. Thanks to 
paja.

von Heinz-Jürgen O. (Firma: emtas) (hjo)


Lesenswert?

Karl R. schrieb:
> Gibt es so was wie ein defakto Standard für die CAN Register?

Leider nicht. Das macht auch die Treiberentwicklung für verschiedene 
Prozessoren bzw. CAN Controller immer wieder kompliziert.
Der verwendete CAN im A20 ist aber sehr stark an den NXP SJA1000 
angelehnt.

von Gerd B. (bertr2d2) Benutzerseite


Lesenswert?

Mittlerweile existiert auch ein SocketCAN Modul:

https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/tree/drivers/net/can/sun4i_can.c

der Bestandteil von Linux 4.4 werden wird.

Voraussetzung: aktueller Kernel 4.x

von Karl R. (Gast)


Lesenswert?

Gerhard,
vielen Dank für das SocketCAN Modul! bye bye can4linux..

von Gerd B. (bertr2d2) Benutzerseite


Lesenswert?

Hallo Karl,

Karl R. schrieb:
> Gerhard,
> vielen Dank für das SocketCAN Modul! bye bye can4linux..

bei SocketCAN ist auch nicht alles Gold was glänzt - der Protokoll 
Overhead ist nicht unerheblich. Der can4linux Treiber von Heinz-Jürgen 
Oertel dürfte aufgrund des Aufbaus geringere Latenzen haben.


Gruß

Gerd

von Karl R (Gast)


Lesenswert?

Moin!

So,
der neue Kernel 4.4.0 wurde nach Rezepten von
https://sunxi.org/Mainline_Kernel_Howto
gebacken.

Ein 'modprobe sun4i_can' scheint aber nicht zu reichen.

Es scheint eine kleine Priese 'device tree' im offiziellen Kernel zu 
fehlen.

Oder seh ich mal wieder den Wald vor lauter Bäumen nicht?

von Gerd B. (bertr2d2) Benutzerseite


Lesenswert?


von Arne123 (Gast)


Angehängte Dateien:

Lesenswert?

Ich brauchte ein paar versuche um das mit aktuellem mainline kernel 
(4.10.0-rc1) zum laufen zu bekommen

Im Anhang die Ergänzungen im Device Tree, die bei mir das CAN Modul zum 
sprechen gebracht haben.

Im dmesg erscheint dann das:
sun4i_can 1c2bc00.can: device registered (base=f08e9c00, irq=50)

Gruß
   Arne

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]
  • [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.