Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed-dev-f303 FastPWM3
Diff: math_ops.cpp
- Revision:
- 47:e1196a851f76
- Parent:
- 34:51647c6c500d
- Child:
- 51:b0a3ef66ea3d
--- a/math_ops.cpp Thu Jul 12 02:50:34 2018 +0000
+++ b/math_ops.cpp Wed Dec 05 04:07:46 2018 +0000
@@ -1,5 +1,5 @@
-#include "math_ops.h"
+#include "../math_ops.h"
float fmaxf(float x, float y){
@@ -36,14 +36,21 @@
*y = *y * limit/norm;
}
}
+
+void limit(float *x, float min, float max){
+ *x = fmaxf(fminf(*x, max), min);
+ }
int float_to_uint(float x, float x_min, float x_max, int bits){
+ /// Converts a float to an unsigned int, given range and number of bits ///
float span = x_max - x_min;
float offset = x_min;
- return (int) ((x+offset)*((float)((1<<bits)-1))/span);
+ return (int) ((x-offset)*((float)((1<<bits)-1))/span);
}
+
float uint_to_float(int x_int, float x_min, float x_max, int bits){
+ /// converts unsigned int to float, given range and number of bits ///
float span = x_max - x_min;
float offset = x_min;
return ((float)x_int)*span/((float)((1<<bits)-1)) + offset;