Ich möchte den C-Coder in Matlab verwenden. Dies übersetzt einen M-Code in C-Code. Ich benutze eine einfache Funktion, die 5 Zahlen hinzufügt. Wenn der Code generiert wird, gibt es viele C- und H-Dateien. natürlich könnten Sie einfach den Code wählen, den Sie brauchen, und ihn in Ihren Code importieren, aber das ist nicht der Sinn dieser Übung, da dies nicht mehr möglich sein wird, wenn der Matlab-Code schwieriger wird.wie generierten Code von Matlab zu verwenden
Matlab liefert eine main.c-Datei und eine .mk-Datei.
/* Include Files */
#include "rt_nonfinite.h"
#include "som.h"
#include "main.h"
#include "som_terminate.h"
#include "som_initialize.h"
//Declare all the functions
int main(int argc, const char * const argv[]){
(void)argc;
(void)argv;
float x1=10;
float x2=20;
float x3=30;
float x4=40;
float x5=50;
float result;
/* Initialize the application.
You do not need to do this more than one time. */
som_initialize();
main_som();
result=som(x1,x2,x3,x4,x5);
printf("%f", result);
som_terminate();
return 0;
}
Wenn ich dies auf einem Himbeer-pi laufen mit
gcc -o test1 main.c
Es gibt mir undefinierte Referenzen auf alle Funktionen ... Irgendwelche Ideen, was falsch gelaufen ist?
Was ist deine Absicht? Möchtest du den Code auf dem Pi erstellen und ihn dort ausführen, oder (kompilieren) den Code auf dem PC erstellen und dann einfach auf dem Pi ausführen? –
Ja. Ich lese Werte von einem adc und möchte ein fft auf diese Daten mit C-Code in Matlab generiert durchführen. Aber ich möchte mit einem einfachen Beispiel beginnen, um den Workflow zu verstehen – wietjes
So wird der Code auf einem PC generiert und auf dem RPI kompiliert – wietjes