Code for measuring the signal with a specified length and sampling rate, and saving it on a SD card.

Dependencies:   EALib I2S mbed

Committer:
msamadani
Date:
Fri Jul 14 14:41:10 2017 +0000
Revision:
1:a514e4de034d
envSignal function works.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
msamadani 1:a514e4de034d 1 //
msamadani 1:a514e4de034d 2 // Academic License - for use in teaching, academic research, and meeting
msamadani 1:a514e4de034d 3 // course requirements at degree granting institutions only. Not for
msamadani 1:a514e4de034d 4 // government, commercial, or other organizational use.
msamadani 1:a514e4de034d 5 // File: envSignal_emxutil.cpp
msamadani 1:a514e4de034d 6 //
msamadani 1:a514e4de034d 7 // MATLAB Coder version : 3.3
msamadani 1:a514e4de034d 8 // C/C++ source code generated on : 13-Jul-2017 15:47:47
msamadani 1:a514e4de034d 9 //
msamadani 1:a514e4de034d 10
msamadani 1:a514e4de034d 11 // Include Files
msamadani 1:a514e4de034d 12 #include "envSignal.h"
msamadani 1:a514e4de034d 13 #include "envSignal_emxutil.h"
msamadani 1:a514e4de034d 14
msamadani 1:a514e4de034d 15 // Function Definitions
msamadani 1:a514e4de034d 16
msamadani 1:a514e4de034d 17 //
msamadani 1:a514e4de034d 18 // Arguments : emxArray__common *emxArray
msamadani 1:a514e4de034d 19 // int oldNumel
msamadani 1:a514e4de034d 20 // unsigned int elementSize
msamadani 1:a514e4de034d 21 // Return Type : void
msamadani 1:a514e4de034d 22 //
msamadani 1:a514e4de034d 23 void emxEnsureCapacity(emxArray__common *emxArray, int oldNumel, unsigned int
msamadani 1:a514e4de034d 24 elementSize)
msamadani 1:a514e4de034d 25 {
msamadani 1:a514e4de034d 26 int newNumel;
msamadani 1:a514e4de034d 27 int i;
msamadani 1:a514e4de034d 28 void *newData;
msamadani 1:a514e4de034d 29 if (oldNumel < 0) {
msamadani 1:a514e4de034d 30 oldNumel = 0;
msamadani 1:a514e4de034d 31 }
msamadani 1:a514e4de034d 32
msamadani 1:a514e4de034d 33 newNumel = 1;
msamadani 1:a514e4de034d 34 for (i = 0; i < emxArray->numDimensions; i++) {
msamadani 1:a514e4de034d 35 newNumel *= emxArray->size[i];
msamadani 1:a514e4de034d 36 }
msamadani 1:a514e4de034d 37
msamadani 1:a514e4de034d 38 if (newNumel > emxArray->allocatedSize) {
msamadani 1:a514e4de034d 39 i = emxArray->allocatedSize;
msamadani 1:a514e4de034d 40 if (i < 16) {
msamadani 1:a514e4de034d 41 i = 16;
msamadani 1:a514e4de034d 42 }
msamadani 1:a514e4de034d 43
msamadani 1:a514e4de034d 44 while (i < newNumel) {
msamadani 1:a514e4de034d 45 if (i > 1073741823) {
msamadani 1:a514e4de034d 46 i = MAX_int32_T;
msamadani 1:a514e4de034d 47 } else {
msamadani 1:a514e4de034d 48 i <<= 1;
msamadani 1:a514e4de034d 49 }
msamadani 1:a514e4de034d 50 }
msamadani 1:a514e4de034d 51
msamadani 1:a514e4de034d 52 newData = calloc((unsigned int)i, elementSize);
msamadani 1:a514e4de034d 53 if (emxArray->data != NULL) {
msamadani 1:a514e4de034d 54 memcpy(newData, emxArray->data, elementSize * oldNumel);
msamadani 1:a514e4de034d 55 if (emxArray->canFreeData) {
msamadani 1:a514e4de034d 56 free(emxArray->data);
msamadani 1:a514e4de034d 57 }
msamadani 1:a514e4de034d 58 }
msamadani 1:a514e4de034d 59
msamadani 1:a514e4de034d 60 emxArray->data = newData;
msamadani 1:a514e4de034d 61 emxArray->allocatedSize = i;
msamadani 1:a514e4de034d 62 emxArray->canFreeData = true;
msamadani 1:a514e4de034d 63 }
msamadani 1:a514e4de034d 64 }
msamadani 1:a514e4de034d 65
msamadani 1:a514e4de034d 66 //
msamadani 1:a514e4de034d 67 // Arguments : emxArray_creal32_T **pEmxArray
msamadani 1:a514e4de034d 68 // Return Type : void
msamadani 1:a514e4de034d 69 //
msamadani 1:a514e4de034d 70 void emxFree_creal32_T(emxArray_creal32_T **pEmxArray)
msamadani 1:a514e4de034d 71 {
msamadani 1:a514e4de034d 72 if (*pEmxArray != (emxArray_creal32_T *)NULL) {
msamadani 1:a514e4de034d 73 if (((*pEmxArray)->data != (creal32_T *)NULL) && (*pEmxArray)->canFreeData)
msamadani 1:a514e4de034d 74 {
msamadani 1:a514e4de034d 75 free((void *)(*pEmxArray)->data);
msamadani 1:a514e4de034d 76 }
msamadani 1:a514e4de034d 77
msamadani 1:a514e4de034d 78 free((void *)(*pEmxArray)->size);
msamadani 1:a514e4de034d 79 free((void *)*pEmxArray);
msamadani 1:a514e4de034d 80 *pEmxArray = (emxArray_creal32_T *)NULL;
msamadani 1:a514e4de034d 81 }
msamadani 1:a514e4de034d 82 }
msamadani 1:a514e4de034d 83
msamadani 1:a514e4de034d 84 //
msamadani 1:a514e4de034d 85 // Arguments : emxArray_real32_T **pEmxArray
msamadani 1:a514e4de034d 86 // Return Type : void
msamadani 1:a514e4de034d 87 //
msamadani 1:a514e4de034d 88 void emxFree_real32_T(emxArray_real32_T **pEmxArray)
msamadani 1:a514e4de034d 89 {
msamadani 1:a514e4de034d 90 if (*pEmxArray != (emxArray_real32_T *)NULL) {
msamadani 1:a514e4de034d 91 if (((*pEmxArray)->data != (float *)NULL) && (*pEmxArray)->canFreeData) {
msamadani 1:a514e4de034d 92 free((void *)(*pEmxArray)->data);
msamadani 1:a514e4de034d 93 }
msamadani 1:a514e4de034d 94
msamadani 1:a514e4de034d 95 free((void *)(*pEmxArray)->size);
msamadani 1:a514e4de034d 96 free((void *)*pEmxArray);
msamadani 1:a514e4de034d 97 *pEmxArray = (emxArray_real32_T *)NULL;
msamadani 1:a514e4de034d 98 }
msamadani 1:a514e4de034d 99 }
msamadani 1:a514e4de034d 100
msamadani 1:a514e4de034d 101 //
msamadani 1:a514e4de034d 102 // Arguments : emxArray_creal32_T **pEmxArray
msamadani 1:a514e4de034d 103 // int numDimensions
msamadani 1:a514e4de034d 104 // Return Type : void
msamadani 1:a514e4de034d 105 //
msamadani 1:a514e4de034d 106 void emxInit_creal32_T(emxArray_creal32_T **pEmxArray, int numDimensions)
msamadani 1:a514e4de034d 107 {
msamadani 1:a514e4de034d 108 emxArray_creal32_T *emxArray;
msamadani 1:a514e4de034d 109 int i;
msamadani 1:a514e4de034d 110 *pEmxArray = (emxArray_creal32_T *)malloc(sizeof(emxArray_creal32_T));
msamadani 1:a514e4de034d 111 emxArray = *pEmxArray;
msamadani 1:a514e4de034d 112 emxArray->data = (creal32_T *)NULL;
msamadani 1:a514e4de034d 113 emxArray->numDimensions = numDimensions;
msamadani 1:a514e4de034d 114 emxArray->size = (int *)malloc((unsigned int)(sizeof(int) * numDimensions));
msamadani 1:a514e4de034d 115 emxArray->allocatedSize = 0;
msamadani 1:a514e4de034d 116 emxArray->canFreeData = true;
msamadani 1:a514e4de034d 117 for (i = 0; i < numDimensions; i++) {
msamadani 1:a514e4de034d 118 emxArray->size[i] = 0;
msamadani 1:a514e4de034d 119 }
msamadani 1:a514e4de034d 120 }
msamadani 1:a514e4de034d 121
msamadani 1:a514e4de034d 122 //
msamadani 1:a514e4de034d 123 // Arguments : emxArray_real32_T **pEmxArray
msamadani 1:a514e4de034d 124 // int numDimensions
msamadani 1:a514e4de034d 125 // Return Type : void
msamadani 1:a514e4de034d 126 //
msamadani 1:a514e4de034d 127 void emxInit_real32_T(emxArray_real32_T **pEmxArray, int numDimensions)
msamadani 1:a514e4de034d 128 {
msamadani 1:a514e4de034d 129 emxArray_real32_T *emxArray;
msamadani 1:a514e4de034d 130 int i;
msamadani 1:a514e4de034d 131 *pEmxArray = (emxArray_real32_T *)malloc(sizeof(emxArray_real32_T));
msamadani 1:a514e4de034d 132 emxArray = *pEmxArray;
msamadani 1:a514e4de034d 133 emxArray->data = (float *)NULL;
msamadani 1:a514e4de034d 134 emxArray->numDimensions = numDimensions;
msamadani 1:a514e4de034d 135 emxArray->size = (int *)malloc((unsigned int)(sizeof(int) * numDimensions));
msamadani 1:a514e4de034d 136 emxArray->allocatedSize = 0;
msamadani 1:a514e4de034d 137 emxArray->canFreeData = true;
msamadani 1:a514e4de034d 138 for (i = 0; i < numDimensions; i++) {
msamadani 1:a514e4de034d 139 emxArray->size[i] = 0;
msamadani 1:a514e4de034d 140 }
msamadani 1:a514e4de034d 141 }
msamadani 1:a514e4de034d 142
msamadani 1:a514e4de034d 143 //
msamadani 1:a514e4de034d 144 // Arguments : emxArray_real32_T **pEmxArray
msamadani 1:a514e4de034d 145 // int numDimensions
msamadani 1:a514e4de034d 146 // Return Type : void
msamadani 1:a514e4de034d 147 //
msamadani 1:a514e4de034d 148 void emxInit_real32_T1(emxArray_real32_T **pEmxArray, int numDimensions)
msamadani 1:a514e4de034d 149 {
msamadani 1:a514e4de034d 150 emxArray_real32_T *emxArray;
msamadani 1:a514e4de034d 151 int i;
msamadani 1:a514e4de034d 152 *pEmxArray = (emxArray_real32_T *)malloc(sizeof(emxArray_real32_T));
msamadani 1:a514e4de034d 153 emxArray = *pEmxArray;
msamadani 1:a514e4de034d 154 emxArray->data = (float *)NULL;
msamadani 1:a514e4de034d 155 emxArray->numDimensions = numDimensions;
msamadani 1:a514e4de034d 156 emxArray->size = (int *)malloc((unsigned int)(sizeof(int) * numDimensions));
msamadani 1:a514e4de034d 157 emxArray->allocatedSize = 0;
msamadani 1:a514e4de034d 158 emxArray->canFreeData = true;
msamadani 1:a514e4de034d 159 for (i = 0; i < numDimensions; i++) {
msamadani 1:a514e4de034d 160 emxArray->size[i] = 0;
msamadani 1:a514e4de034d 161 }
msamadani 1:a514e4de034d 162 }
msamadani 1:a514e4de034d 163
msamadani 1:a514e4de034d 164 //
msamadani 1:a514e4de034d 165 // File trailer for envSignal_emxutil.cpp
msamadani 1:a514e4de034d 166 //
msamadani 1:a514e4de034d 167 // [EOF]
msamadani 1:a514e4de034d 168 //
msamadani 1:a514e4de034d 169