Forum: Mikrocontroller und Digitale Elektronik STM32F4 - Berechnungen mit DSP-CMSIS liefert kein Ergebnis?


von Daniel F. (franken_3)


Lesenswert?

Hallo Leute,

habe hier folgendes Programm, was mir zwar ein Ergebnis für meine 
Matrix-Transponierung liefert, aber im Ergebnis X_p31 von AT * A bleibt 
immer 0 stehen? Kann mir das vielleicht jemand erklären?
Weis vielleicht jemand aus Erfahrungen wie die Spalten/Zeilen den Werten 
im Array zugeordnet werden? Find dazu nichts im Internet.

Danke



#include "main.h"




/*****************GLOBALE Variablen*************************/

  q31_t A_q31[16] = {4,7,4,8,6,4,2,5,7,9,5,4,3,8,7,12};
  q31_t AT_q31[16];
  q31_t X_q31[16];


  arm_matrix_instance_q31 A;      /* Matrix A Instance */
  arm_matrix_instance_q31 AT;
  arm_matrix_instance_q31 X;

  uint32_t srcRows, srcColumns;  /* Temporary variables */
  arm_status status;

  int i = 0 ;
[c]
int main(void)
{


  /* Initialise Matrix Instance AT with numRows, numCols and data 
array(AT_f32) */
  srcRows = 8;
  srcColumns = 2;
  arm_mat_init_q31(&AT, srcRows, srcColumns, (q31_t *)AT_q31);

  srcRows = 2;
  srcColumns = 8;
  arm_mat_init_q31(&A, srcRows, srcColumns, (q31_t *)A_q31);

   srcRows = 2;
  srcColumns = 2;
  arm_mat_init_q31(&X, srcRows, srcColumns, X_q31);



     SystemInit(); // Quarz Einstellungen aktivieren
     UB_USB_CDC_Init();   // (Virtueller-ComPort)


  while(1)
  {
      //pruefe auf neue Daten am USB-Port
      checkUSBPort();

     status = arm_mat_trans_q31(&A, &AT);
     status = arm_mat_mult_fast_q31(&A , &AT , &X);


  }
}//end of main

[\c]

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.