Hallo Community, (ja ich habe bereits die ähnlichen Beiträge in diesem Forum durchgelesen, habe aber dennoch eine Frage) Ich habe momentan auf meinem mbed LPC1768 einen CAN-Bus in Betrieb genommen. Dieses System läuft einwandfrei und möchte nun um einen weiteren Bus ergänzt werden. Ich möchte also an meinen LPC1768 ein LIN-Netzwerk anschließen und habe dazu eine grundlegende Frage: Ist es richtig, dass ich für die Hardware-Umsetzung lediglich einen Lin-Transceiver (z.B. TJA1020) benötige, den ich an den UART Ausgang meines Mikrocontrollers anschließe oder sind noch weitere Komponenten nötig? Der µC soll in diesem Fall als Slave arbeiten und lediglich als Zuhörer fungieren. Können die Leute die sich schon mal damit befasst haben, mir eventuell Sagen was sonst noch so knifflige Punkte sind, auf die ich bei dem Projekt besonders achten muss? (Mit dem LIN-Botschaftsaufbau kenne ich mich ausreichend aus). Vielen Dank für die Hilfestellung LG Jim
Jim Street schrieb: > Ich möchte also an meinen LPC1768 ein LIN-Netzwerk anschließen und habe > dazu eine grundlegende Frage: > Ist es richtig, dass ich für die Hardware-Umsetzung lediglich einen > Lin-Transceiver (z.B. TJA1020) benötige, den ich an den UART Ausgang > meines Mikrocontrollers anschließe oder sind noch weitere Komponenten > nötig? Nein, mehr als der Transceiver ist für die Busankopplung nicht notwendig. > Können die Leute die sich schon mal damit befasst haben, mir eventuell > Sagen was sonst noch so knifflige Punkte sind, auf die ich bei dem > Projekt besonders achten muss? (Mit dem LIN-Botschaftsaufbau kenne ich > mich ausreichend aus). Ein LIN-fähiger UART muss BREAK-Zustände auf dem Bus erkennen und erzeugen können. Nicht alle UARTs können das. LIN ist so designed, dass nur der Master eine genaue Taktquelle braucht, um das Timing vorzugeben, während die Slaves nur einen RC-Oszillator brauchen und das Timing, sprich die Bitrate, aus dem Syncbyte ausmessen. Da Dein LPC sicher einen Quarz hat (sonst würde CAN nicht funktionieren), musst Du das nicht implementieren, was die Sache vereinfacht. fchk
Hey, vielen Dank, dass hört sich ja schonmal gut an. Wenn mein UART nun also Break-Zustände erkennen kann und ich einen LIN-Transceiver kaufe sollte dem Projekt Hardware-technisch nicht mehr im Wege stehen? Der Rest ist dann wohl Software ... Hier ist nicht zufällig jemand der eine Software-Lösung in C oder C++ anzubieten hat? Oder ein PAP? Vielen Dank und Grüße Marvin
Meines Wissens unterstützen die Cortex von NXP jedoch kein LIN-Break
Beim AVR detektiert man das Break über das Frame Error Bit wenn man für LIN direkt mit dem UART unterwegs ist. Break ist ja auch nur, dass 13 Null-Bits gesendet werden. Und nach dem User-Manual vom LPC1768 hat der ein Framing Error Bit im UARTn Line Status Register. Zusätzlich sogar noch einen Break Interrupt.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.