INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Über CAN hex-File mit Doppelpunkt senden



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

06.11.2014, 22:48
Beitrag #1

Slev1n Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Nov 2014

2013
2011
DE_EN



Über CAN hex-File mit Doppelpunkt senden
Hallo Leute,

ich habe eine USB 8473s Karte (Frame API!) von NI und nutze Labview 2013 student edition.
Meine Aufgabe:
Ich soll nun einen CHIP mit einem neuen Programm bespielen und den CODE aus einem HEX-File soll ich ihm per CAN schicken.

Meine Frage/Problem:
Ich schaffe es schon den Bootloader anzusprechen und dieser wartet nun darauf, dass ich ihm den Programm-Code schicke.
Ich muss den Code aus dem Hex-File zeilenweise an an den CHIP schicken. Jede Zeile beginnt mit einem Doppelpunkt ":". Ich nutze hierfür die Funktion "CAN WriteNetMult". Nun weiß ich nicht wie ich den Doppelpunkt in den Frame hineinpacken soll. Einfach den Doppelpunkt als "String" geht nicht, da Daten in den Frame nur als Integer-Array gepackt werden können.

Mein Lösungsansatz (fehlgeschlagen)
Es hat nun nicht funktioniert einfach "58" was dezimal für das ASCII zeichen ":" steht bzw. 3A an den Anfang des Arrays zu schreiben.


Habt ihr eine Idee wie ich den Doppelpunkt in den Frame bekomme?

Viele Grüße

Stefan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2014, 08:53
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Über CAN hex-File mit Doppelpunkt senden
Hallo Stefan,

solche Fragen beantwortet am besten das Manual zu deinem "Chip".
Wir können ohne weitere Informationen deinerseits dazu nicht helfen.

Welches Format wird vom "Chip" erwartet?
Wie läuft der Transfer über CAN ab?
Wird wirklich der Doppelpunkt erwartet? Oder doch nur die Daten danach?

Fragen über Fragen und kein Manual zur Hand…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2014, 20:20
Beitrag #3

Slev1n Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Nov 2014

2013
2011
DE_EN



RE: Über CAN hex-File mit Doppelpunkt senden
Hey,

ich habe das Manual selber nicht vorliegen. Hab aber nochmal mit dem Kollegen geredet, der mir den Chip gegeben hat, der meint, er könnte den Chip so umstellen, dass er den Doppelpunkt nicht mehr braucht. Damit würde ich das Problem zumindest umgehen.

Habe noch kurz eine andere Frage zu den CAN Funktionen NetMultRead und NetMultWrite.
Ich nutze "Self Reception" um genau zu sehen, was ich so versende. Nutze ich nun NetMultWrite, werden anscheinend 9 Frames pro Ausführung des NetMultWrite-VIs gesendet. Mit NetMultRead lese ich dann den BUS aus, bekomm aber NUR diese, die ich selbst gesendet hab. Mach ich Self Reception aus, sehe ich auch andere Nachrichten.

1, Müll ich den BUS so zu, dass ich nur noch meine lese?

2, Müssten die anderen Nachrichten vom BUS nicht in die Queue geschrieben werden und beim nächsten abrufen des VIs NetMultRead auch ausgelesen werden?

Viele Grüße und Danke für die Hilfe

Slev1n
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.11.2014, 10:11
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Über CAN hex-File mit Doppelpunkt senden
Hallo Slevin,

Zitat:ich habe das Manual selber nicht vorliegen.
Lass es dir geben…

Zitat:mit dem Kollegen geredet, der mir den Chip gegeben hat
Befrage den Kollegen (auf eine möglichst inquisitorische Art), um alle nötigen Informationen zu erhalten…

Zitat:eine andere Frage
KA
- Du zeigst nicht, wie dein VI aussieht. Du sagst uns nicht, wie der CAN-Task parametriert ist. Du lieferst keine relevanten Informationen…
- Ich nehme an, dass du dich auf XNet-Funktionen beziehst. Mit denen habe ich noch nicht gearbeitet…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.11.2014, 16:24 (Dieser Beitrag wurde zuletzt bearbeitet: 08.11.2014 19:47 von Slev1n.)
Beitrag #5

Slev1n Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: Nov 2014

2013
2011
DE_EN



RE: Über CAN hex-File mit Doppelpunkt senden
Hey,

hier mal ein Bild zum Teil vom VI, in dem ich lese.
(Baudrate: 500k; write und read queue sind auf 100 gesetzt, der Rest auf 0 bzw FALSE, da ich self reception nutze und "manuell" die Kommunikation starte)

Außerdem der Programmcode vom Schreibvorgang!

Hoffe du kannst damit was anfangen.


EDIT: Ich habe wie im Anhang zu sehen nun statt WriteMult, dreimal normale Write Funktionen genommen! Wenn ich nun
das Array, in welches ich meine gelesenen Werte speicher, immer so groß dimensioniere, wie die Anzahl zu wartender Frames ist, lese ich immer nur so viele wie ich brauche und finde diese schön aufgelistet in meiner Excell file. Einzig seltsam ist, dass die chronologische Reihenfolge der "Echo-Daten" (mit Echo sind die Frames gemeint, die ich über self reception wieder erhalte) nicht ganz richtig ist:
Code:
06:08:33.615    000006C3    CAN Data Frame
     8    3A    10    5F    C6    00    D7    00    20

06:08:33.614    000006C3    CAN Data Frame
     6    10    E6    F4    A8    0E    24

06:08:33.629    000006C3    CAN Data Frame
     8    F4    8C    43    D7    00    20    00    F6

06:08:33.625    000006C3    CAN Data Frame
     8    3A    10    5F    D6    00    DC    10    E6

06:08:33.624    000006C3    CAN Data Frame
     6    00    20    00    F6    F4    37

06:08:33.639    000006C3    CAN Data Frame
     8    00    F6    F4    D8    10    F6    F4    D6

06:08:33.635    000006C3    CAN Data Frame
     8    3A    10    5F    E6    00    D7    20    20

06:08:33.634    000006C3    CAN Data Frame
     6    F4    DA    10    E0    04    77

06:08:33.649    000006C3    CAN Data Frame
     8    00    F6    F4    D2    10    F6    F4    D0

Ich gehe aber davon aus bzw. hoffe, dass sie chronologisch richtig am Chip ankommen.

Gruß

Slev1n


Angehängte Datei(en) Thumbnail(s)
   

13.0 .vi  HexFileLaden (SubVI).vi (Größe: 34,25 KB / Downloads: 201)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Über Bluetooth einen Befehl zum SMS versenden ans Smartphone senden Heinz 1 5.164 07.07.2014 14:21
Letzter Beitrag: Heinz
  C-Struct über TCP an Labview senden dheyner 4 7.336 31.10.2011 15:50
Letzter Beitrag: dheyner

Gehe zu: