LIN Treiber für ATCAN128

Gast #635189
Lesenswert?

Hallo zusammen,
Ich bin gerade dabei ein LIN Netzwerk aufzubauen. Habe dazu auch schon 
zwei Eval Boards mit AT90CAN128 und jeweils einem LIN Transceiver drauf. 
Kommunikation klappt im Prinzip auch schon prima, wenn ich was weg 
schicke (En Strin mit Hallo Welt), kommt er auf dem anderen Board auch 
tip top an.
Leider habe ich jetzt ein etwas größeres Problem. Ich habe noch nie 
einen Treiber oder etwas ähnliches auf dem Application Layer 
programmiert.
Da die ganzen Nachrichten ja als Braodcast rausgehen bekomme ich 
spätestens dann ein Problem, wenn ich einen dritten Knoten in das 
Netzwerk einbauen möchte. Wer kann mir da mit einem Codebeispiel unter C 
oder einer Erklärung, wie ich vorgehen muss weiterhelfen?
Wäre euch ziemlich dankbar, häng hier wirklich gerade in den Seilen....

Danke
Gruß
Gast #635207
Lesenswert?

Für LIN kannst Du eine UART verwenden oder Du impementierts eine 
Soft-UART.
Den LIN-Stack mit seinen Zusatndsautomaten mußt Du schon selbts 
programmieren. Es gibt ein App-Note von Atmel (leider nur für LIN1.3)

LIN ist rein Master-gesteuert. D.H. der Master fordert eine Antwort von 
den Slaves. Nur bei Event-Triggered-Frames kann es zu Kollisionen 
kommen.
Dann ist der Master für deren Auflösung zuständig, er schickt dann 
wieder einzeln an alles betreffenden Slaves Unconditional Frames in 
einer gesonderten Scheduletable.

Also merke: Es kann immer nur ein Slave gleichzeitig angesprochen werden 
!!!
Gast #635227
Lesenswert?

Hallo Rolli,

ja das mit dem UART ist mir klar, das funktioniert ja im Prinzip auch 
schon. Was ich eben noch nicht am laufen habe ist das LIN Protokoll 
selber. Du sagst bei ATMEL gibts da was aber nur für LIN1.3. Gibts sonst 
nirgends bessere Codebeispiele?
Glaube nicht das ich gut genug programmieren kann um aus dem nichts ein 
komplettes Protokoll zum laufen zu bekommen :-(
Gast #635236
Lesenswert?

Nimm das Beispiel von Atmel. Es ist ausreichend gut um sich 
einzuarbeiten. Eine komplette LIN Implementierung ist kostenpflichtig 
bei Vector oder Elektrobit (3Soft) zu haben. Allerdings ist es nicht so 
schwierig das selbst zu machen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren