Tiny Can
Tiny Can
© Copyright 2008 – 2024 MHS-Elektronik GmbH & Co. KG, D-94149 Kößlarn
Alle Rechte vorbehalten. Kein Teil dieses Handbuches darf in irgendeiner Form ohne
schriftliche Genehmigung der Firma MHS-Elektronik GmbH & Co. KG unter Einsatz
entsprechender Systeme reproduziert, verarbeitet, vervielfältigt werden.
Tiny-CAN LS
CAN-USB-Adapter für Lowspeed-CAN mit galvanischer Trennung,
CAN-Line Treiber TJA1055T (ISO 11898-3), maximale Übertra-
gungsgeschwindigkeit 125 kBit/s.
Das Modul unterstützt „Silent-Modus“, „Transmit Message
Request“ (Bestätigung versendeter CAN-Nachrichten), „Automatic
Retransmission disable“ und Hardware Time-Stamps mit 0,1ms
Auflösung.
Tiny-CAN M2
CAN-USB-Modul, speziell für den Embedded Bereich entwickelt,
als Aufsteckmodul für die Integration in kundenspezifischer
Hardware. Kundenspezifische Firmware-Anpassungen sind
möglich, zahlreiche nicht genutzte I/Os (Digital, SPI, I2C) stehen
zur Verfügung. Als besonderes Leistungsmerkmale unterstützt das
Modul den „Silent-Modus“ sowie den „Transmit Message Request“
(Bestätigung versendeter CAN-Nachrichten).
Tiny-CAN M232
CAN-RS232-Modul, speziell für den Embedded Bereich entwickelt,
als Aufsteckmodul für die Integration in kundenspezifischer
Hardware. Es stehen 2 Schnittstellen zur Verfügung, eine mit TTL
Pegel (5V) und eine mit RS232 Pegel (12V). Die Baudrate der
RS232 Schnittstelle lässt sich über Löt-Jumper konfigurieren. 2
LEDs zeigen den Status des Moduls an. Kundenspezifische
Firmware-Anpassungen sind möglich, zahlreiche nicht genutzte
I/Os (Digital, SPI, I2C) stehen zur Verfügung. Als besonderes
Leistungsmerkmal unterstützt das Modul den „Silent-Modus“ sowie
den „Transmit Message Request“ (Bestätigung versendeter CAN-
Nachrichten).
RxD Fifo
Intervall Puffer
TxD Puffer &
Timer 1
Je nach Hardware ist eine bestimmte Anzahl von TxD-Puffern mit Intervalltimern vorhanden.
Diese ermöglichen das Versenden zyklischer Nachrichten in Echtzeit. Der normale Versand von
TxD Puffer & CAN Nachrichten erfolgt über das „TxD-FIFO“ des Moduls.
Timer 2
Silent Mode
Zusätzlich zu den Funktionen „CAN Start“ und „CAN Stop“ steht der Silent Mode zur Verfügung.
Der CAN-Controller ist nur passiv am Bus, empfangene CAN Nachrichten werden nicht mit einem ACK quittiert. Bei
Fehlern werden aktiv keine „Error Frames“ gesendet. Das Senden von CAN-Nachrichten ist nicht möglich. Der „Silent
Mode“ wird verwendet, um einen CAN-Bus abzuhorchen, ohne diesen zu beeinflussen.
Hardware Timestamp
Ein Hardware Timestamp wird in der Hardware erstellt und beim Empfang bzw. dem erfolgreichen Versenden einer CAN
Nachricht an der entsprechenden Stelle eingefügt.
CAN Safe
Vermeidet Fehler auf dem CAN-Bus beim Abstecken des USB-Kabels oder Ausschalten des Computers
Maximale Buslast
Bei 1 MBit/s, Standart Frames mit 8 Byte Datenlänge, alle Hardware Filter aus
USB-Suspend-Mode
Reduzierung des Stromverbrauchs im Standby-Modus. Die Elektronik des Moduls wird zum größten Teil spannungslos
geschaltet, ein Empfang oder Senden von CAN Nachrichten ist dann nicht möglich.
Watchdog
Überwachung des Prozessors
Verzeichnisse
.../tiny_can/...
├ FtdiDriver 2
Systemtreiber für den USB Chip
2
├ [Link] TCanCheck Utiliti – Überprüft die korrekte Installation, die Kommunikation zur Hardware und
deren Firmware Version
├ [Link] 2
Konfigurationsdatei für TCanCheck
├ [Link] 2
Paket Uninstaller
├ CANcool 2
CAN-Bus Monitor - CANcool
├ TcanProg 2
Tiny-CAN Firmware Update Utility
├ doku
│ ├ [Link] Dieses Dokument
│ ├ tiny_can1xl_manual.pdf Hardware und Service Manual zum Tiny-CAN I-XL Adapter
│ ├ tiny_can1xl_v2_manual.pdf Hardware und Service Manual zum Tiny-CAN I-XL Adapter (Hardware Version 2)
│ ├ tiny_can1xl_embedded_manual.pdf Hardware und Service Manual zum Tiny-CAN I-XL Embedded Adapter
│ ├ tiny_can1xl_embedded_v2_manual.pdf Hardware und Service Manual zum Tiny-CAN I-XL Embedded Adapter (Hardware Version 2)
│ ├ tiny_can2xl_manual.pdf Hardware und Service Manual zum Tiny-CAN II-XL Adapter
│ ├ tiny_can2xl_v2_manual.pdf Hardware und Service Manual zum Tiny-CAN II-XL Adapter (Hardware Version 2)
│ ├ tiny_can4xl_manual.pdf Hardware und Service Manual zum Tiny-CAN IV-XL Adapter
│ ├ tiny_can4xl_v2_manual.pdf Hardware und Service Manual zum Tiny-CAN IV-XL Adapter (Hardware Version 2)
│ ├ tiny_can_ls_manual.pdf Hardware und Service Manual zum Tiny-CAN LS Adapter (Lowspeed-CAN)
│ ├ tiny_can_m1_manual.pdf Hardware und Service Manual zum Tiny-CAN M1 Modul
│ ├ tiny_can_m2_manual.pdf Hardware und Service Manual zum Tiny-CAN M2 Modul
│ ├ tiny_can_m232_manual.pdf Hardware und Service Manual zum Tiny-CAN M232 Modul
│ ├ can_monitor.pdf Tiny-CAN-Monitor Handbuch, Installation und Benutzung
│ ├ canlcd1_manual.pdf CAN-LCD 1
│ ├ canlcd1_v2_manual.pdf CAN-LCD 1 (Ver. 2.1)
│ ├ canlcd2_manual.pdf CAN-LCD 2
│ ├ canlcd3_manual.pdf CAN-LCD 3
│ └ [Link] CAN-LCD Quick Start Manual (Programmierung / Verdrahtung)
├ can_api Tiny-CAN API – Treiber DLL/Lib
├ dev
│ ├ [Link] Dokumentation der Tiny-CAN API
│ ├ lib Interface der Tiny-CAN API in C/C++
│ ├ static Interface der Tiny-CAN API DLL zum statischen linken
│ ├ C Beispielprogramme für C
│ ├ can_monitor Die Quellen von Tiny-CAN-Monitor
│ ├ python Interface der Tiny-CAN API für Python
│ ├ c-sharp 2
Interface der Tiny-CAN API für C-Sharp, inkl. Beispiele
│ ├ vb6 2
Interface der Tiny-CAN API für Visual-Basic Version 6.0
│ ├ vb2013 2
Interface der Tiny-CAN API für Visual-Basic 2013
│ ├ Delphi 2
Interface der Tiny-CAN API für Delphi als Komponente, inkl. Beispiele
│ ├ labview Interface der Tiny-CAN API für LabView, inkl. Beispiele
│ └ ProfiLab 2
ProfiLab CAN Plugin und Beispiele
├ bin Tiny-CAN-Monitor Executeble / GTK+
├ etc 2
GTK+
├ share 2
GTK+
├ Lib 2
GTK+
└ BitCalc 2
CAN-Bus Bit-Timing Calculator
1
Nur in der Linux Version; 2 Nur in der Windows Version
2.1.1. Windows
Unter Windows wird der „D2XX“ Treiber von FTDI verwendet.
Dieser Treiber ist im Software-Paket enthalten und wird über
das Tool „Tiny-Can Check“ automatisch installiert.
Für den Fall dass auf dem Modul eine Alternative Firmware
installiert ist, bietet „Tiny-CAN Check“ an diese zu ersetzen,
auch ein misslungenes Update wird von „Tiny-CAN Check“
repariert.
Das Installationsprogramm legt folgende Einträge in der Windows-Registrierungsdatenbank an, welche für den Betrieb
der Software erforderlich sind.
Schlüssel Name Wert <Beschreibung>
HKEY_LOCAL_MACHINE\Software\Tiny-CAN\API PATH <Pfad in dem sich die Tiny-CAN API Treiber DLLs
([Link], ...) befinden>
HKEY_LOCAL_MACHINE\Software\Tiny-CAN\PROFILAB\LIZENZ PATH <Pfad in dem sich das Lizenz File für den ProfiLab
Plugin befindet>
HKEY_LOCAL_MACHINE\Software\Tiny-CAN\FIRMWARE-UPDATE PATH <Pfad in dem sich das Firmware-Update-Tool befindet>
2.1.2. Linux
Unter Linux ist keine Installation eines Kernel Treibers notwendig. Das benötigte Kernel-Modul „ftdi_sio“ gehört bereits
zum Linux Kernel.
3. Tiny-CAN API
Unterschiedliche CAN-Adapter, drei Betriebssysteme, eine Schnittstelle! Die Tiny-CAN API macht es möglich.
Installation
Die Installation und Benutzung des Programms sind im Dokument „Tiny-CAN Handbuch“
(.../tiny_can/doku/can_monitor.pdf) beschrieben.
4.2 CANcool
Open Source CAN-Bus-Analyse- und Simulations-Software
Funktionen:
• Dank Multithreading Can-Trace Aufzeichnung ohne
Datenverlust
• Abspeichern eines CAN Trace in einer Datei
• Auflistung von CAN Objekten mit statistischer Auswertung
• Aufzeichnung einzelner CAN-Bus Fehler, nur mit dem Tiny-
CAN IV-XL möglich
• Anzeige von CAN-Signalen als Zeigerinstrument,
Digitalanzeige und LEDs
• Filterfunktion: bekannte/unbekannte/alle Nachrichten
anzeigen
• Anlegen einer Transmit-Liste, jede Nachricht mit eigenem
Sende-Button
• Speichern und Laden der Transmit-Liste aus einer Datei
• Auto Transmit via Timer, Trigger Message und RTR
Anforderung
• Kopieren empfangener Nachrichten direkt in die Transmit-
Liste
[Link]
[Link]
C#
Die Klasse „TinyCan“ (can_drv.cs) bildet die gesamte Tiny-
CAN API im Stil von C# ab.
Das Sample öffnet ein CAN-Device mit 100kBit/s und zeigt die
Empfangenen CAN Nachrichten an.
Versionen:
• Delpi 6 • Delphi EX
Python
Die Einbindung der Tiny-CAN API erfolgt in Python mit der
Datei „[Link]“. Alle Funktionen der API werden
in Python abgebildet.
Versionen:
• 2.7.x • 3.x.x
LabView
Die auf einer Wrapper-DLL aufbauende Library enthält die
„VIs“ welche die Funktionen der API widerspiegeln.
4 Applikationsbeispiele veranschaulichen die Funktionalität
und Verwendung der Library.
Unterstützte Betriebssysteme:
Ab WindowsXP [Link]
BUSMASTER
BUSMASTER ist eine Open-Source-PC-
Software für den Entwurf, die Überwachung,
die Analyse und die Simulation von CAN-
Netzwerken. BUSMASTER basiert auf dem
Softwarewerkzeug CANvas und wurde von
RBEI konzipiert, entworfen und entwickelt.
Fehlerbeschreibungen
CarPort zeigt tausende volkswagenspezifische
Fehlercodes inklusive Beschreibung an.
Steuergerätescan
CarPort bietet den ersten vollintegrierten Steu-
ergerätescan - so erhalten Sie schnell einen
kompletten Überblick über den Zustand aller
verbauten Steuergeräte.
Grafische Ausgabe
CarPort kann mehrere Messwerte gleichzeitig
grafisch darstellen - als Kurve oder in einer
Instrumentenansicht.
CANviaUSB
Ein einfacher CAN Monitor. CAN ID´s können
Namen und Farben zugeordnet werden. Tolle
Filter Funktion.
9. Danksagungen
Für die Implementierung der Tiny-CAN API Herr Thomas Forck <forck@[Link]>
in C# Firma: Gebr. Klöcker GmbH ([Link]
Für die Implementierung der Tiny-CAN API Herr Rene Maurer <rene@[Link]>
in Python Firma: Omnitron Engineering & Software ([Link]
Herr Patrick Menschel <menschel.p@[Link]>