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: libmDot-dev-mbed5-deprecated ISL29011
Fork of mdot-examples by
Diff: peer_to_peer_example.cpp
- Revision:
- 16:12f38e4755de
- Parent:
- 15:d110e4bbff65
- Child:
- 17:0a8d151af3c6
diff -r d110e4bbff65 -r 12f38e4755de peer_to_peer_example.cpp
--- a/peer_to_peer_example.cpp Sat Dec 09 03:28:44 2017 +0000
+++ b/peer_to_peer_example.cpp Sat Dec 09 03:38:19 2017 +0000
@@ -157,6 +157,12 @@
// Points to the returned char pointer from called functions
char * rawTempValues; // Could change to uint8_t, same for other char pointers
+ char Xmsb;
+ char Xlsb;
+ char Ymsb;
+ char Ylsb;
+ char Zmsb;
+ char Zlsb;
// Save converted values here
uint16_t convertedTempValue; // Data values must be uint16_t for conversion and send prep
@@ -309,9 +315,16 @@
for(int i = 0; i < 15; ++i){
regAddress = 0x08; // This is the register address for XData
accelValues = accelerometerI2CRead(regAddress);
- XData = ((twosComplementConversion(*(accelValues + 0)) << 8) | twosComplementConversion(*(accelValues + 1))) >> 4; // Combine two bytes into short int(16 bits), remove last 4 flag bits
- YData = ((twosComplementConversion(*(accelValues + 2)) << 8) | twosComplementConversion(*(accelValues + 3))) >> 4;
- ZData = ((twosComplementConversion(*(accelValues + 4)) << 8) | twosComplementConversion(*(accelValues + 5))) >> 4;
+ Xmsb = twosComplementConversion(*(accelValues + 0));
+ Xlsb = twosComplementConversion(*(accelValues + 1));
+ Ymsb = twosComplementConversion(*(accelValues + 2));
+ Ylsb = twosComplementConversion(*(accelValues + 3));
+ Zmsb = twosComplementConversion(*(accelValues + 4));
+ Zlsb = twosComplementConversion(*(accelValues + 5));
+
+ XData = (Xmsb << 8 | Xlsb) >> 4; // Combine two bytes into short int, remove last 4 flag bits
+ YData = (Ymsb << 8 | Ylsb) >> 4;
+ ZData = (Zmsb << 8 | Zlsb) >> 4;
pc.printf("\n %d: X: 0x%x | Y: 0x%x | Z: 0x%x \n\r", i+1, XData, YData, ZData);
wait(0.2);
}
@@ -333,15 +346,18 @@
for(int i = 0; i < 15; ++i){
regAddress = 0x08;
accelValues = accelerometerI2CRead(regAddress);
- XData = ((twosComplementConversion(*(accelValues + 0)) << 8) | twosComplementConversion(*(accelValues + 1))) >> 4; // Combine two bytes into short int(16 bits), remove last 4 flag bits
- YData = ((twosComplementConversion(*(accelValues + 2)) << 8) | twosComplementConversion(*(accelValues + 3))) >> 4;
- ZData = ((twosComplementConversion(*(accelValues + 4)) << 8) | twosComplementConversion(*(accelValues + 5))) >> 4;
- pc.printf("\n %d: X:: H: %x | L: %x | Y:: H: %x | L: %x | Z: H: %x | L: %x \n\r", i+1, *(accelValues + 0),
- *(accelValues + 1),
- *(accelValues + 2),
- *(accelValues + 3),
- *(accelValues + 4),
- *(accelValues + 5));
+ Xmsb = twosComplementConversion(*(accelValues + 0));
+ Xlsb = twosComplementConversion(*(accelValues + 1));
+ Ymsb = twosComplementConversion(*(accelValues + 2));
+ Ylsb = twosComplementConversion(*(accelValues + 3));
+ Zmsb = twosComplementConversion(*(accelValues + 4));
+ Zlsb = twosComplementConversion(*(accelValues + 5));
+ pc.printf("\n %d: X:: H: %x | L: %x | Y:: H: %x | L: %x | Z: H: %x | L: %x \n\r", i+1, Xmsb,
+ Xlsb,
+ Ymsb,
+ Ylsb,
+ Zmsb,
+ Zlsb);
wait(0.2);
}
break;
@@ -437,12 +453,6 @@
break;
case 101: // e for two's complement of accel data
regAddress = 0x08;
- char Xmsb;
- char Xlsb;
- char Ymsb;
- char Ylsb;
- char Zmsb;
- char Zlsb;
accelValues = accelerometerI2CRead(regAddress);
