From 9f95ff5b6ba01db09552b84a0ab79607060a2666 Mon Sep 17 00:00:00 2001 From: Ali Labbene Date: Wed, 11 Dec 2019 08:59:21 +0100 Subject: Official ARM version: v5.4.0 Add CMSIS V5.4.0, please refer to index.html available under \docs folder. Note: content of \CMSIS\Core\Include has been copied under \Include to keep the same structure used in existing projects, and thus avoid projects mass update Note: the following components have been removed from ARM original delivery (as not used in ST packages) - CMSIS_EW2018.pdf - .gitattributes - .gitignore - \Device - \CMSIS - \CoreValidation - \DAP - \Documentation - \DoxyGen - \Driver - \Pack - \RTOS\CMSIS_RTOS_Tutorial.pdf - \RTOS\RTX - \RTOS\Template - \RTOS2\RTX - \Utilities - All ARM/GCC projects files are deleted from \DSP, \RTOS and \RTOS2 Change-Id: Ia026c3f0f0d016627a4fb5a9032852c33d24b4d3 --- docs/DSP/html/group__LinearInterpolate.html | 328 ++++++++++++++++++++++++++++ 1 file changed, 328 insertions(+) create mode 100644 docs/DSP/html/group__LinearInterpolate.html (limited to 'docs/DSP/html/group__LinearInterpolate.html') diff --git a/docs/DSP/html/group__LinearInterpolate.html b/docs/DSP/html/group__LinearInterpolate.html new file mode 100644 index 0000000..f92df44 --- /dev/null +++ b/docs/DSP/html/group__LinearInterpolate.html @@ -0,0 +1,328 @@ + + + + + +Linear Interpolation +CMSIS-DSP: Linear Interpolation + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-DSP +  Version 1.5.2 +
+
CMSIS DSP Software Library
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Linear Interpolation
+
+
+ + + + + + + + + + + + + + +

+Functions

CMSIS_INLINE __STATIC_INLINE
+float32_t 
arm_linear_interp_f32 (arm_linear_interp_instance_f32 *S, float32_t x)
 Process function for the floating-point Linear Interpolation Function. More...
 
CMSIS_INLINE __STATIC_INLINE q31_t arm_linear_interp_q31 (q31_t *pYData, q31_t x, uint32_t nValues)
 Process function for the Q31 Linear Interpolation Function. More...
 
CMSIS_INLINE __STATIC_INLINE q15_t arm_linear_interp_q15 (q15_t *pYData, q31_t x, uint32_t nValues)
 Process function for the Q15 Linear Interpolation Function. More...
 
CMSIS_INLINE __STATIC_INLINE q7_t arm_linear_interp_q7 (q7_t *pYData, q31_t x, uint32_t nValues)
 Process function for the Q7 Linear Interpolation Function. More...
 
+

Description

+

Linear interpolation is a method of curve fitting using linear polynomials. Linear interpolation works by effectively drawing a straight line between two neighboring samples and returning the appropriate point along that line

+
+LinearInterp.gif +
+Linear interpolation
+
+
A Linear Interpolate function calculates an output value(y), for the input(x) using linear interpolation of the input values x0, x1( nearest input values) and the output values y0 and y1(nearest output values)
+
Algorithm:
+      y = y0 + (x - x0) * ((y1 - y0)/(x1-x0))
+      where x0, x1 are nearest values of input x
+            y0, y1 are nearest values to output y
+
+
This set of functions implements Linear interpolation process for Q7, Q15, Q31, and floating-point data types. The functions operate on a single sample of data and each call to the function returns a single processed value. S points to an instance of the Linear Interpolate function data structure. x is the input sample value. The functions returns the output value.
+
if x is outside of the table boundary, Linear interpolation returns first value of the table if x is below input range and returns last value of table if x is above range.
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
CMSIS_INLINE __STATIC_INLINE float32_t arm_linear_interp_f32 (arm_linear_interp_instance_f32S,
float32_t x 
)
+
+
Parameters
+ + + +
[in,out]Sis an instance of the floating-point Linear Interpolation structure
[in]xinput sample to process
+
+
+
Returns
y processed output sample.
+
Examples:
arm_linear_interp_example_f32.c.
+
+

References arm_linear_interp_instance_f32::nValues, arm_linear_interp_instance_f32::pYData, arm_linear_interp_instance_f32::x1, and arm_linear_interp_instance_f32::xSpacing.

+ +

Referenced by main().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
CMSIS_INLINE __STATIC_INLINE q15_t arm_linear_interp_q15 (q15_tpYData,
q31_t x,
uint32_t nValues 
)
+
+
Parameters
+ + + + +
[in]pYDatapointer to Q15 Linear Interpolation table
[in]xinput sample to process
[in]nValuesnumber of table values
+
+
+
Returns
y processed output sample.
+
Input sample x is in 12.20 format which contains 12 bits for table index and 20 bits for fractional part. This function can support maximum of table size 2^12.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
CMSIS_INLINE __STATIC_INLINE q31_t arm_linear_interp_q31 (q31_tpYData,
q31_t x,
uint32_t nValues 
)
+
+
Parameters
+ + + + +
[in]pYDatapointer to Q31 Linear Interpolation table
[in]xinput sample to process
[in]nValuesnumber of table values
+
+
+
Returns
y processed output sample.
+
Input sample x is in 12.20 format which contains 12 bits for table index and 20 bits for fractional part. This function can support maximum of table size 2^12.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
CMSIS_INLINE __STATIC_INLINE q7_t arm_linear_interp_q7 (q7_tpYData,
q31_t x,
uint32_t nValues 
)
+
+
Parameters
+ + + + +
[in]pYDatapointer to Q7 Linear Interpolation table
[in]xinput sample to process
[in]nValuesnumber of table values
+
+
+
Returns
y processed output sample.
+
Input sample x is in 12.20 format which contains 12 bits for table index and 20 bits for fractional part. This function can support maximum of table size 2^12.
+ +
+
+
+
+ + + + -- cgit