Geplante Unterstützung für CAN FD im MKT-View (V)

Hinweis
Der Nachfolger von MKT-View III (mit 4.3" TFT) und MKT-View IV (mit 7" TFT) befand sich im Herbst 2019 noch in der Entwicklung. Probleme mit der Beschaffung / Verfügbarkeit eines (angeblich) mit 480 MHz taktbaren Cortex-M4-Controller mit 2 MByte Flash, 1 MByte RAM, 2 * CAN FD, und integrierter Grafik führten zu einer Verzögerung bis vermutlich Q4 / 2019.
Sollte der ebenfalls evaluierte i.MX RT1064 "das Rennen" machen (fragwürdig wegen einiger Mängel), würden im MKT-View V zwar mehrere CAN-Schnittstellen verfügbar sein, davon aber leider nur eine mit CAN FD.

Voraussichtliche Eigenschaften:

Siehe auch:
    Konfiguration des CAN(/CAN-FD)-Interfaces am PC,
    Auswahl der 'flexiblen' (hohen) Bitrate für CAN FD,
    Datentyp tCAN_FD_msg (mit 64-Byte-Datenfeld) in der Script-Sprache,
    Anzeigeformat für CAN FD im 'CAN Snooper'.


Kontrolle der für CAN FD geeigneten Ports im Programmiertool

Welche der im momentan geladenen Geräteprofil 'theoretisch' für CAN FD geeignet sind, kann gegebenenfalls im Programmiertool auf der Registerkarte Einstellungen unter Terminal-Konstanten, Einstellungen, nichtflüchtige Werte kontrolliert oder ggf. korrigiert werden.
Scrollen Sie dazu die Tabelle bis zur Zeile 'CAN-FD-fähige Ports' herunter. Der dort in der rechten Spalte angezeigte Wert gibt ab, welche CAN-Ports prinzipiell für CAN FD geeignet sind (bei Bestückung mit einem geeigneten Transceiver):


Kontrolle der 'CAN-FD-fähigen' Ports im Programmiertool

Stimmen die dort angezeigten Ports (z.B. "CAN1", "CAN2") nicht mit den laut Geräte-Datenblatt CAN-FD-fähigen Schnittstellen überein, kann diese 'Konstante' notfalls manuell editiert werden. Klicken Sie dazu in die Tabellenzelle mit dem (falschen) Wert. Das Programmiertool öffnet daraufhin ein Fenster, in dem der bitweise kombinierte Wert dezimal eingegeben werden kann:


Korrektur der 'CAN-FD-fähigen' Ports im Programmiertool

Jedes Bit im o.g. Wert repräsentiert einen der maximal vier CAN-Ports.
Bit 0 (Maske 1) repräsentiert die "CAN-FD-Unterstützung" von "CAN1",
Bit 1 (Maske 2) repräsentiert die "CAN-FD-Unterstützung" von "CAN2", und so weiter.

Das Programmiertool erlaubt die Konfiguration der flexiblen Datenrate (CAN FD) nur für die CAN-Ports, deren entsprechendes Bit im o.g. Wert gesetzt ist.
Ebenso erlaubt die Simulation im Programmiertool das Senden von CAN-FD-Frames (mit bis zu 64 Bytes im Datenfeld) nur bei laut Geräteprofil CAN-FD-fähigen Ports - unabhängig davon, ob das an den PC angeschlossene CAN-Interface CAN FD unterstützt.


Nicht funktionsfähige 'Enhanced' Bit-Timing- und FIFO-Register im i.MX RT1064

In den ersten MKT-View-V-Prototypen wurde ein i.MX RT1064 verwendet, der sich im weiteren Verlauf der Entwicklung bezüglich CAN FD als problematisch erweis. Beispielsweise funktionieren die im Reference Manual (i.MX RT1064 Processor Reference Manual, Rev. 0.1, 12/2018) auf Seite 2758 bis 2763 beschriebenen 'Enhanced' Bit Timing Register nicht, was im NXP Community Forum (https://community.nxp.com/thread/503656) offiziell bestätigt wurde. Ohne 'Enhanced' Bit Timing sind beim Betrieb mit 'Bitrate Switch', und hohem Verhältnis von Datenrate zu Arbitrierungs-Bitrate nur ungünstige Einstellungen (mit wenigen 'Time Qanta' für die Datenphase) möglich, die nicht den CiA-Empfehlungen (CAN Newsletter 1/2018: Recommendation for the CAN FD bit-timing) entsprechen.
Ferner scheint auch der im Reference Manual (Rev 0.1) beschriebene 'Enhanced Rx FIFO' nicht zu existieren, was dazu führt, dass bei CAN FD vermutlich kein mehrstufiger Hardware-Empfangs-FIFO nutzbar ist. Diese könnte beim Betrieb als CAN-Logger (mit der Aufzeichnung aller empfangener CAN-Message-Identifier) zu Problemen führen. Entsprechende Experimente standen bei der Erstellung dieser Beschreibung (im Februar 2020) noch aus.
Für die Serienproduktion des MKT-View V wird vermutlich kein RT1064 verwendet, sondern eine etwas langsamere CPU, die aber -hoffentlich- mehrere CAN-FD-fähige Controller ohne die oben beschriebenen Defizite bietet.