mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik CANoe - Zugriff auf Botschaften einer dbc Datenbank


Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich will in CANoe im Code eines Knoten auf die Daten innerhalb einer dbc 
Datenbank zugreifen.
Jetzt meine Frage:
Gibt es eine Möglichkeit anhand einer vorhandenen CAN ID abzufragen 
welche Botschaft dazu gehört? Ich habe also nur eine ID und möchte damit 
die Botschaft abfragen. Geht das?

Danke und Gruß

Autor: Michael Sch. (schmichael)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Welche Informationen möchtest du denn genau aus der Datenbank abrufen? 
Wenn es dir nur um den Namen der Nachricht geht, funktioniert das mit - 
dword GetMessageName( dword id, dword context, char buffer[], dword 
size). Nicht zu vergessen ist natürlich, in deiner Konfiguration die 
Datenbank mit aufzunehmen.

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich würde gerne auch noch die Datenbank in dem die Nachricht drinsteht 
abfragen. D.h. ich hätte mehrere dbc files und ich würde anhand der ID 
den Namen der Datenbank abfragen wollen. Geht das auch?

Danke für Deine schnelle Antwort

Autor: Michael Sch. (schmichael)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

das wird soweit ich weiss jetzt schon schwieriger, denn im CAPL gibt es 
meines Wissens keine Funktion, die mir diese Information zur Verfügung 
stellen kann.

Jetzt kommt es auch noch auf deine CANoe-Version an. Seit der Version 
7.1 gibt es den Befehl DBLookup(..). Damit hättest du mit etwas 
Programmieraufwand die Chance herauszufinden, in welcher Datenbank sich 
die Nachricht befindet. Dazu musst du die Funktion mit 
DBLookup(Datenbasisname,this) für jedes dbc-File aufrufen und zu schauen 
ob ein Ergebnis zurückkommt.

Was anderes fällt mir jetzt leider auch nicht ein. Beachte aber bitte 
die Hinweise zwecks Performance und so in der Hilfe.

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deine Antworten haben mir auf alle Fälle weitergeholfen. Danke.

Gruß

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.