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: X_NUCLEO_IKS01A1 mbed
Fork of Sensors_Reader by
Diff: main.cpp
- Revision:
- 54:d812bb378d46
- Parent:
- 51:5ce8202680b4
- Child:
- 56:ad6a0fcf899a
--- a/main.cpp Wed Jul 01 13:12:11 2015 +0200
+++ b/main.cpp Wed Jul 01 15:29:57 2015 +0200
@@ -142,11 +142,31 @@
{
int i = 1;
int intPart, fractPart;
+ int len;
+ char *ptr;
+ /* prepare decimal digits multiplicator */
for (;decimalDigits!=0; i*=10, decimalDigits--);
+
+ /* calculate integer & fractinal parts */
intPart = (int)v;
fractPart = (int)((v-(double)(int)v)*i);
- sprintf(str, "%i.%i", intPart, fractPart);
+
+ /* fill in integer part */
+ sprintf(str, "%i.", intPart);
+
+ /* prepare fill in of fractional part */
+ len = strlen(str);
+ ptr = &str[len];
+
+ /* fill in leading fractional zeros */
+ for (i/=10;i>1; i/=10, ptr++) {
+ if(fractPart >= i) break;
+ *ptr = '0';
+ }
+
+ /* fill in (rest of) fractional part */
+ sprintf(ptr, "%i", fractPart);
return str;
}
@@ -212,14 +232,14 @@
ret |= (!CALL_METH(gyroscope, Get_G_Axes, (int32_t *)&GYR_Value, 0) ? 0x0 : 0x40);
/* Print Values Out */
- printf("I2C errors: 0x%.2x X Y Z\n", ret);
+ printf("I2C [errors]: 0x%.2x X Y Z\n", ret);
printf("MAG [mgauss]: %9ld %9ld %9ld\n",
MAG_Value.AXIS_X, MAG_Value.AXIS_Y, MAG_Value.AXIS_Z);
printf("ACC [mg]: %9ld %9ld %9ld\n",
ACC_Value.AXIS_X, ACC_Value.AXIS_Y, ACC_Value.AXIS_Z);
printf("GYR [mdps]: %9ld %9ld %9ld\n",
GYR_Value.AXIS_X, GYR_Value.AXIS_Y, GYR_Value.AXIS_Z);
- printf("---\nTEMP | HUMIDITY: %s°C | %s%%\nTEMP | PRESSURE: %s°F | %smbar\n",
+ printf("---\nTEMP | HUMIDITY: %s°C | %s%%\nTEMP | PRESSURE: %s°F | %4smbar\n",
printDouble(buffer1, TEMPERATURE_Value),
printDouble(buffer2, HUMIDITY_Value),
printDouble(buffer4, PRESSURE_Temp_Value),
