Forum: Mikrocontroller und Digitale Elektronik LIN Treiber für ATCAN128


von SiJoBa (Gast)


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ß

von Rolli (Gast)


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 
!!!

von SiJoBa (Gast)


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 :-(

von Rolli (Gast)


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.

von SiJoBa (Gast)


Lesenswert?

Tip top,

dein Wort in Gotte Ohr :-)
Vielen Danks schon mal, werde mal mein Glück versuchen.

von SiJoBa (Gast)


Lesenswert?

Gibts sonst nirgend andere Codebeispiele???
Komme mit dem Zeug von Atmel nicht klar......
Hilfe!!!!!

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.