Forum: Compiler & IDEs MPLAB X: Chaos mit Datasheets und Librarys, LIN Lib für dsPIC33


von Stefan E. (stefan_e20)


Lesenswert?

Hallo liebes Forum,

ich brauch eure Hilfe, bevor ich die Lust an meinem Projekt komplett 
verliere: Beitrag "LIN-CAN Gateway / Bauteilauswahl"

Ich hab mir nun wie vorgeschlagen den Controller dsPIC33EP256MC502 
bestellt, da er ja laut Datenblatt auch die benötigte CAN und LIN 
Unterstützung an Bord hat.
https://ww1.microchip.com/downloads/en/DeviceDoc/dsPIC33EPXXXGP50X-dsPIC33EPXXXMC20X-50X-and-PIC24EPXXXGP-MC20X-Family-Data-Sheet-DS70000657J.pdf

Datenblatt: "Two UART modules (17.5 Mbps):
- With support for LIN/J2602 protocols and IrDA®"
"ECAN™ module (1 Mbaud) CAN 2.0B Support"

Ich hab mir jetzt mal folgende Software Installiert:
MPLAB X IDE v6.0
MPLAB XC16 1.70
MPLAB MCC v5.1.0
DFP dsPIC33E-GM-GP-MC-GU-MU v1.3.85
Device Library PIC24  dsPIC33  PIC32MM MCUs 1.171.0
Foundation Services Library 0.2.2

Fehlt da noch was?

Die IDE ist für mich komplett neu und mir ist bewusst, dass ich mich 
viel einlesen und auch einfinden muss.
Das fängt schon mit den Abkürzungen der Programme und Funktionen an und 
hört wo die Libs, Plugins etc. installiert werden müssen auf.

Jetzt aber zu meinem Problem:
Ich suche seit Tagen nach dem beschrieben "Support" für die LIN 
Schnittstelle.
Es gibt Unterlagen und Dokumentationen zum Aufbau und Funktion des LIN, 
die sind mir aber inzwischen bekannt.
Ich konnte LIN Libs und Beispiel Projekte nur für 8 Bit Controller 
finden, aber keinen für die dsPIC33e Familie.
Such ich falsch oder gibt es da auf der Homepage keine Programmeispiele 
und Support für den 16 Bit Controller?

Ich hab mir einige der Campus Videos angesehen, um mich in einigen 
Themen mehr einzuarbeiten.
Dort ist immer wieder zu sehen, wie der LIN im MCC angezeigt wird.
Vermutlich weil sie einen 8 Bit Controller verwenden oder mir noch was 
fehlt...

Ich wollte eigentlich auch im Microchip Forum mal nachfragen, aber ich 
bekomme seit Tagen keine Registrierungsbestätigung vom Administrator.
Einen Link hab ich irgendwo von Microchip gefunden für die Automotive 
gefunden, der verweißen auf den Hersteller IHR.
Dort gibt es wohl Beispiel Projekte zum herunterladen.
Ich hab mich dort ebenfalls registriert und das gleiche Thema, keine 
Bestätigung des Admins.

Ich könnte jetzt natürlich den LIN im Programm selbst umsetzten, aber 
wenn es schon was fertiges gibt würde ich es natürlich gern verwenden.

Ebenfalls find ich einige Dokumentationen, die auf weitere Sheets 
verweisen und zum Teil dann nicht mehr existieren.
Beim "LIN Serial Analyser" wollte ich das letzte Programm (V3.0.0) 
herzunterladen, allerdings führt der Link zu einer leeren Download 
Seite.
Ich konnte auch keine Mail Adresse finden um dies melden zu können?

Ist das normal bei Microchip, dass dort von einem ins nächste verwiesen 
wird und man sich immer im Kreis dreht?

von Franko P. (sgssn)


Lesenswert?

Hallo
hier schon mal gelesen?
https://www.microchip.com/forums/m1135107.aspx

und, wie ist das mit dem MCC? Warst du nicht erfolgreich? oder läuft er 
nicht?

Gruß

von Frank K. (fchk)


Lesenswert?

Stefan E. schrieb:

> Ich suche seit Tagen nach dem beschrieben "Support" für die LIN
> Schnittstelle.

Genau das ist Dein Problem. Der Prozessor hat keine LIN-Schnittstelle, 
weil es die genau genommen auch erst am Transceiver gibt. LIN wird im 
Allgemeinen über einen UART realisiert, und bei PIC24/dsPIC/PIC32 ist 
jeder UART LIN-fähig, d.h. er kann BREAKs senden und BREAKs feststellen, 
und er kann seine Bitrate durch Ausmessen des SYNC-Bytes automatisch 
einstellen. (Bit ABAUD im UxMODE Modusregister, x=Nummer des UARTs, also 
0 oder 1)

Wenn Du ein BREAK empfängst, bekommst Du ein Nullbyte im Datenregister 
UxRXREG plus ein gesetztes Framing Error FERR Bit im Status-Register 
UxSTA. Mehr ist das nicht.

Ein BREAK sendest Du, indem Du das UTXBRK-Bit im Statusregister UxSTA 
setzt und dann ein Dummy-Byte (am Besten 0) durch Schreiben in UxTXREG 
sendest. Das UTXBRK-Bit wird nach dem Senden des BREAK automatisch 
wieder gelöscht.

Mehr musst Du für LIN eigentlich nicht wissen. Behandle das ganze wie 
einen normalen UART.

Zur Microchip-Webseite: ja, leider, das ist normal.

fchk

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.