arm class marks example f32 8c example


CMSIS DSP Software Library: arm_class_marks_example_f32.c Main Page Modules Data Structures Files Examples arm_class_marks_example_f32.c /* ---------------------------------------------------------------------- * Copyright (C) 2010 ARM Limited. All rights reserved. * * $Date: 29. November 2010 * $Revision: V1.0.3 * * Project: CMSIS DSP Library * Title: arm_class_marks_example_f32.c * * Description: Example code to calculate Minimum, Maximum * Mean, std and variance of marks obtained in a class * * Target Processor: Cortex-M4/Cortex-M3 * * Version 1.0.3 2010/11/29 * Re-organized the CMSIS folders and updated documentation. * * Version 1.0.1 2010/10/05 KK * Production release and review comments incorporated. * * Version 1.0.0 2010/09/20 KK * Production release and review comments incorporated. * ------------------------------------------------------------------- */ #include "arm_math.h" #define USE_STATIC_INIT /* ---------------------------------------------------------------------- ** Global defines ** ------------------------------------------------------------------- */ #define TEST_LENGTH_SAMPLES (20*4) /* ---------------------------------------------------------------------- ** List of Marks scored by 20 students for 4 subjects ** ------------------------------------------------------------------- */ const float32_t testMarks_f32[TEST_LENGTH_SAMPLES] = { 42.000000, 37.000000, 81.000000, 28.000000, 83.000000, 72.000000, 36.000000, 38.000000, 32.000000, 51.000000, 63.000000, 64.000000, 97.000000, 82.000000, 95.000000, 90.000000, 66.000000, 51.000000, 54.000000, 42.000000, 67.000000, 56.000000, 45.000000, 57.000000, 67.000000, 69.000000, 35.000000, 52.000000, 29.000000, 81.000000, 58.000000, 47.000000, 38.000000, 76.000000, 100.000000, 29.000000, 33.000000, 47.000000, 29.000000, 50.000000, 34.000000, 41.000000, 61.000000, 46.000000, 52.000000, 50.000000, 48.000000, 36.000000, 47.000000, 55.000000, 44.000000, 40.000000, 100.000000, 94.000000, 84.000000, 37.000000, 32.000000, 71.000000, 47.000000, 77.000000, 31.000000, 50.000000, 49.000000, 35.000000, 63.000000, 67.000000, 40.000000, 31.000000, 29.000000, 68.000000, 61.000000, 38.000000, 31.000000, 28.000000, 28.000000, 76.000000, 55.000000, 33.000000, 29.000000, 39.000000 }; /* ---------------------------------------------------------------------- * Number of subjects X 1 * ------------------------------------------------------------------- */ const float32_t testUnity_f32[4] = { 1.000, 1.000, 1.000, 1.000 }; /* ---------------------------------------------------------------------- ** f32 Output buffer ** ------------------------------------------------------------------- */ static float32_t testOutput[TEST_LENGTH_SAMPLES]; /* ------------------------------------------------------------------ * Global defines *------------------------------------------------------------------- */ #define NUMSTUDENTS 20 #define NUMSUBJECTS 4 /* ------------------------------------------------------------------ * Global variables *------------------------------------------------------------------- */ uint32_t numStudents = 20; uint32_t numSubjects = 4; float32_t max_marks, min_marks, mean, std, var; uint32_t student_num; /* ---------------------------------------------------------------------------------- * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ int32_t main() { #ifndef USE_STATIC_INIT arm_matrix_instance_f32 srcA; arm_matrix_instance_f32 srcB; arm_matrix_instance_f32 dstC; /* Input and output matrices initializations */ arm_mat_init_f32(&srcA, numStudents, numSubjects, (float32_t *)testMarks_f32); arm_mat_init_f32(&srcB, numSubjects, 1, (float32_t *)testUnity_f32); arm_mat_init_f32(&dstC, numStudents, 1, testOutput); #else /* Static Initializations of Input and output matrix sizes and array */ arm_matrix_instance_f32 srcA = {NUMSTUDENTS, NUMSUBJECTS, (float32_t *)testMarks_f32}; arm_matrix_instance_f32 srcB = {NUMSUBJECTS, 1, (float32_t *)testUnity_f32}; arm_matrix_instance_f32 dstC = {NUMSTUDENTS, 1, testOutput}; #endif /* ---------------------------------------------------------------------- *Call the Matrix multiplication process function * ------------------------------------------------------------------- */ arm_mat_mult_f32(&srcA, &srcB, &dstC); /* ---------------------------------------------------------------------- ** Call the Max function to calculate max marks among numStudents ** ------------------------------------------------------------------- */ arm_max_f32(testOutput, numStudents, &max_marks, &student_num); /* ---------------------------------------------------------------------- ** Call the Min function to calculate min marks among numStudents ** ------------------------------------------------------------------- */ arm_min_f32(testOutput, numStudents, &min_marks, &student_num); /* ---------------------------------------------------------------------- ** Call the Mean function to calculate mean ** ------------------------------------------------------------------- */ arm_mean_f32(testOutput, numStudents, &mean); /* ---------------------------------------------------------------------- ** Call the std function to calculate standard deviation ** ------------------------------------------------------------------- */ arm_std_f32(testOutput, numStudents, &std); /* ---------------------------------------------------------------------- ** Call the var function to calculate variance ** ------------------------------------------------------------------- */ arm_var_f32(testOutput, numStudents, &var); }  All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines Generated on Mon Nov 29 2010 17:19:55 for CMSIS DSP Software Library by  1.7.2

Wyszukiwarka

Podobne podstrony:
arm class marks example ?2?
arm class marks example ?2? source
arm linear interp example ?2? source
arm ?t bin example ?2?
arm graphic equalizer example q31? source
arm graphic equalizer example q31? source
arm signal converge example ?2?
arm linear interp example ?2?
arm linear interp example?2? example
arm sin cos example?2? example
arm graphic equalizer example q31? example
arm graphic equalizer example q31? example
arm sin cos example ?2?
arm signal converge example?2? example
arm signal converge example ?2? source
arm sin cos example ?2? source
arm sin cos example ?2? source
arm ?t bin example ?2? source
arm graphic equalizer example q31?

więcej podobnych podstron