HEXit – Messwerte zu Daten-Array

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.

Auszug aus der Include-Datei (Beispiel)

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

Das Ergebnis (die Datei Messwert.inc):

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….