Forum: Mikrocontroller und Digitale Elektronik CAN-Bus Netzwerk Zutaten ?!


von daniel (Gast)


Lesenswert?

Hallo zusammen,

ich bin ein neuling in sachen microcontroller-netzwerk technik, versuche 
aber momentan ein can-bus netzwerk zu erstellen.

Nun, man findet sehr viel literatur zu diesem thema, die die 
funktionsweise von CAN beschreibt. Leider habe ich sehr  wenig 
informationen gefunden, die sich auf den PRAKTISCHEN aufbau beziehen.

Ich besitze mehrer ARM-LPC2148 Boards, die ich verbinden möchte. Das 
probelm ist aber, diese besitzen keinen CAN-bus. Ich weiss, dass man 
einen CAN-bus treiber und controller benötigt und das man irgendwie 
diese mit der SPI-schnittstelle verbinden muss. Aber wie man dies nun 
aufbaut , weiss leider ich nicht.

Kennt ich HowTo's oder Tutorien oder irgendwas anderes was hilfreich 
sein könnte. Welchen treiber, controller würdet ihr empfehlen? Habt ihr 
vielleicht bespiel-code oder ähnliches?


gruss

  daniel

von Dirk D. (dirkd)


Lesenswert?

http://www.kreatives-chaos.com/artikel/can-testboard

Ansteuerung des mcp2515 CAN-Controllers (SPI-Schnittstelle)

von daniel (Gast)


Lesenswert?

@ Dirk Dörr
Viel dank, super link!

von daniel (Gast)


Lesenswert?

@ Dirk Dörr
In dem Link von dir gibt es ein Tutorial zum MCP2515 Can-bus Controller:

Ich habe es mir durchgelesen und diesen Satz, der mit Sicherheit von 
großer Bedeutung ist, nicht ganz verstanden:

"Da beim SPI Bus das Senden um Empfangen auf zwei verschiedenen 
Leitungen läuft, kann gleichzeitig gesendet und empfangen werden. Um ein 
Byte zu empfangen muss man also ein Dummybyte beliebigen Inhalts auf den 
Bus legen und dabei die Daten auf der Empfangsleitung auswerten

uint8_t spi_putc( uint8_t data )
{
    // Sendet ein Byte
    SPDR = data;

    // Wartet bis Byte gesendet wurde
    while( !( SPSR & (1<<SPIF) ) )
        ;

    return SPDR;
}

// Daten per SPI senden
spi_putc(0xaa);

// Daten per SPI LESEN <-------------!!!
data = spi_putc(0xff);
"
Wieso muss ich etwas auf den bus schreiben damit ich "data"  empfange?

von Obelix (Gast)


Lesenswert?

Damit der Takt aus dem µC kommt.

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
Noch kein Account? Hier anmelden.