Umwandlung von Messwerten (Binärdaten) in ein Daten-Array (C-Include)

 

 

Ein Programm soll eine zuvor berechnete Kurve bestehend aus 16384 Punkten auf einen DA-Wandler ausgeben. Die Kurvenwerte liegen aber als Binärdaten vor. Mit HEXit werden die Binärdaten in ein C-Array gewandelt.
Das vereinfachte C-Programm könnte wie folgt aussehen, wobei die Messwertedatei als Include Datei eingebunden wird:

#include „Messwert.inc“
void TimerInterrupt(void)
{
CLEAR_IRQ_FLAG;
P1 = ucArray[i++%0x3FFF];
}

P1 ist ein 8 Bit-Port, an dem der DA-Wandler angeschlossen ist.
Die Funktion TimerInterrupt() wird zyklisch aufgerufen.
i++ inkrementiert den Index des Kurvenarrays.%0x3FFF bewirkt, dass nach 16384 Werten wieder bei 0 begonnen wird.

VorschauMesswerte14

Auszug aus der Input-Datei:

 

const unsigned char ucArray[]={
204,241,232,178,216,151,89,223,165,112,67,114,64,110,241,207,
149,140,169,166,240,164….

Auszug aus der Include-Datei:

Messw2Inc_2

Vorgehensweise:




1. Auswahl der Binärdatei
 

 

 

2. Konvertieren in das Include-Format
3. Unterformat für Ansi-C mit der Datenbreite auf 8bit (unsigned char)
 

 

 

4. Auswahl der Zieldatei Messwert.inc (rechte Maustaste)
5. Wandlung ausführen

f_uk 

 english

 

 

 

 

Impressum