@@ -78,21 +78,21 @@ bool QwDevKX13X::initialize(uint8_t settings)
78
78
if ( settings == INT_SETTINGS )
79
79
{
80
80
enablePhysInterrupt ();
81
- routeHardwareInterrupt (HI_DATA_READY );
82
- retVal = writeRegisterRegion (SFE_KX13X_CNTL1, INT_SETTINGS);
81
+ routeHardwareInterrupt (0x10 );
82
+ retVal = writeRegisterByte (SFE_KX13X_CNTL1, INT_SETTINGS);
83
83
}
84
84
85
85
if ( settings == SOFT_INT_SETTINGS )
86
- retVal = writeRegisterRegion (SFE_KX13X_CNTL1, INT_SETTINGS);
86
+ retVal = writeRegisterByte (SFE_KX13X_CNTL1, INT_SETTINGS);
87
87
88
88
89
89
if ( settings == BUFFER_SETTINGS )
90
90
{
91
91
enablePhysInterrupt ();
92
- routeHardwareInterrupt (HI_BUFFER_FULL);
93
- enableSampleBuffer ();
94
- setBufferOperationMode (BUFFER_MODE_FIFO, BUFFER_16BIT_SAMPLES);
95
- retVal = writeRegisterRegion (SFE_KX13X_CNTL1, INT_SETTINGS);
92
+ routeHardwareInterrupt (0x40 ); // Buffer full interrupt
93
+ enableSampleBuffer (); // Enable buffer
94
+ setBufferOperationMode (0x00 ); // FIFO
95
+ retVal = writeRegisterByte (SFE_KX13X_CNTL1, INT_SETTINGS);
96
96
}
97
97
98
98
@@ -145,7 +145,8 @@ uint8_t QwDevKX13X::getOperatingMode(){
145
145
// Possible KX132 arguments: 0x00 (2g), 0x01 (4g), 0x02 (8g), 0x03 (16g)
146
146
// Possible KX134 arguments: 0x00 (8g), 0x01 (16g), 0x02 (32g), 0x03 (64g)
147
147
// KX13X needs to be set into standby mode to change this value
148
- bool QwDevKX13X::setRange (uint8_t range){
148
+ bool QwDevKX13X::setRange (uint8_t range)
149
+ {
149
150
150
151
int retVal;
151
152
@@ -161,7 +162,7 @@ bool QwDevKX13X::setRange(uint8_t range){
161
162
162
163
}
163
164
164
- bool QwDevKX13X::enableDataEngine ();
165
+ bool QwDevKX13X::enableDataEngine ()
165
166
{
166
167
int retVal;
167
168
uint8_t tempVal;
@@ -181,7 +182,7 @@ bool QwDevKX13X::enableDataEngine();
181
182
return true ;
182
183
}
183
184
184
- bool QwDevKX13X::enableTapEngine ();
185
+ bool QwDevKX13X::enableTapEngine ()
185
186
{
186
187
int retVal;
187
188
uint8_t tempVal;
@@ -201,7 +202,7 @@ bool QwDevKX13X::enableTapEngine();
201
202
return true ;
202
203
}
203
204
204
- bool QwDevKX13X::enableTiltEngine ();
205
+ bool QwDevKX13X::enableTiltEngine ()
205
206
{
206
207
int retVal;
207
208
uint8_t tempVal;
@@ -255,7 +256,7 @@ float QwDevKX13X::getOutputDataRate()
255
256
int retVal;
256
257
uint8_t tempVal;
257
258
258
- retVal = readRegisterRegion (SFE_KX13X_ODCNTL, &tempVal);
259
+ retVal = readRegisterRegion (SFE_KX13X_ODCNTL, &tempVal, 1 );
259
260
260
261
if ( retVal != 0 )
261
262
return 0.0 ;
@@ -295,7 +296,7 @@ bool QwDevKX13X::enablePhysInterrupt(bool enable)
295
296
296
297
tempVal = tempVal | (enable << 6 );
297
298
298
- retVal = writRegisterByte (SFE_KX13X_INC1, tempVal);
299
+ retVal = writeRegisterByte (SFE_KX13X_INC1, tempVal);
299
300
300
301
if ( retVal != 0 )
301
302
return false ;
@@ -315,7 +316,7 @@ bool QwDevKX13X::setPinMode(bool activeLow)
315
316
316
317
tempVal = tempVal | (activeLow << 5 );
317
318
318
- retVal = writRegisterByte (SFE_KX13X_INC1, tempVal);
319
+ retVal = writeRegisterByte (SFE_KX13X_INC1, tempVal);
319
320
320
321
if ( retVal != 0 )
321
322
return false ;
@@ -335,7 +336,7 @@ bool QwDevKX13X::setLatchControl(bool pulse)
335
336
336
337
tempVal = tempVal | (pulse << 4 );
337
338
338
- retVal = writRegisterByte (SFE_KX13X_INC1, tempVal);
339
+ retVal = writeRegisterByte (SFE_KX13X_INC1, tempVal);
339
340
340
341
if ( retVal != 0 )
341
342
return false ;
@@ -358,7 +359,7 @@ bool QwDevKX13X::setPulseWidth(uint8_t width)
358
359
359
360
tempVal = tempVal | (width << 6 );
360
361
361
- retVal = writRegisterByte (SFE_KX13X_INC1, tempVal);
362
+ retVal = writeRegisterByte (SFE_KX13X_INC1, tempVal);
362
363
363
364
if ( retVal != 0 )
364
365
return false ;
@@ -389,7 +390,7 @@ bool QwDevKX13X::routeHardwareInterrupt(uint8_t rdr, uint8_t pin)
389
390
390
391
if ( pin == 2 )
391
392
{
392
- retVal = writeRegisterByte (KX13X_INC6 , rdr);
393
+ retVal = writeRegisterByte (SFE_KX13X_INC6 , rdr);
393
394
394
395
if ( retVal != 0 )
395
396
return true ;
@@ -425,7 +426,7 @@ bool QwDevKX13X::dataTrigger()
425
426
int retVal;
426
427
uint8_t tempVal;
427
428
428
- retVal = readRegisterRegion (SFE_KX13X_INS2, &tempVal);
429
+ retVal = readRegisterRegion (SFE_KX13X_INS2, &tempVal, 1 );
429
430
430
431
if ( retVal != 0 )
431
432
return false ;
@@ -466,7 +467,7 @@ bool QwDevKX13X::setBufferThreshold(uint8_t threshold)
466
467
if ( retVal != 0 )
467
468
return true ;
468
469
469
- return false
470
+ return false ;
470
471
471
472
}
472
473
@@ -490,7 +491,7 @@ bool QwDevKX13X::setBufferOperationMode(uint8_t operationMode)
490
491
491
492
tempVal = tempVal | operationMode;
492
493
493
- retVal = writeRegisterRegion (SFE_KX13X_BUF_CNTL2, tempVal, 1 );
494
+ retVal = writeRegisterByte (SFE_KX13X_BUF_CNTL2, tempVal);
494
495
495
496
if ( retVal != 0 )
496
497
return false ;
@@ -661,19 +662,19 @@ bool QwDevKX13X::getRawAccelData(rawOutputData *rawAccelData){
661
662
}
662
663
663
664
664
- int QwDevKX13X::readRegisterRegion (uint8_t reg, uint8_t *value, uint8_t len)
665
+ int QwDevKX13X::readRegisterRegion (uint8_t reg, uint8_t *data, uint16_t len)
665
666
{
666
- return _sfeBus->readRegisterRegion (_i2cAddress, reg, *value , len);
667
+ return ( int ) _sfeBus->readRegisterRegion (_i2cAddress, reg, data , len);
667
668
}
668
669
669
- int QwDevKX13X::writeRegisterRegion (uint8_t reg, uint8_t *value, uint8_t len)
670
+ int QwDevKX13X::writeRegisterRegion (uint8_t reg, uint8_t *data, uint16_t len)
670
671
{
671
- return _sfeBus->writeRegisterRegion (_i2cAddress, reg, *value , len);
672
+ return ( int ) _sfeBus->writeRegisterRegion (_i2cAddress, reg, data , len);
672
673
}
673
674
674
675
int QwDevKX13X::writeRegisterByte (uint8_t reg, uint8_t value)
675
676
{
676
- return _sfeBus->writeRegisterByte (_i2cAddress, reg, value);
677
+ return ( int ) _sfeBus->writeRegisterByte (_i2cAddress, reg, value);
677
678
}
678
679
679
680
@@ -682,14 +683,12 @@ int QwDevKX13X::writeRegisterByte(uint8_t reg, uint8_t value)
682
683
// ******************************************************************************************
683
684
// ******************************************************************************************
684
685
685
- // Constructor
686
- QwiicKX132::QwiicKX132 () { }
687
686
688
687
// Uses the beginCore function to check that the part ID from the "who am I"
689
688
// register matches the correct value. Uses I2C for data transfer.
690
689
bool QwDevKX132::init (void )
691
690
{
692
- if ( !_sfebus ->ping (_i2cAddress) )
691
+ if ( !_sfeBus ->ping (_i2cAddress) )
693
692
return false ;
694
693
695
694
if ( getUniqueID () != KX132_WHO_AM_I )
@@ -700,7 +699,7 @@ bool QwDevKX132::init(void)
700
699
701
700
// Grabs raw accel data and passes it to the following function to be
702
701
// converted.
703
- bool QwiicKX132 ::getAccelData (outputData *userData){
702
+ bool QwDevKX132 ::getAccelData (outputData *userData){
704
703
705
704
bool retVal;
706
705
@@ -709,7 +708,7 @@ bool QwiicKX132::getAccelData(outputData *userData){
709
708
if ( !retVal )
710
709
return false ;
711
710
712
- retVal = convAccelData (& userData, &rawAccelData);
711
+ retVal = convAccelData (userData, &rawAccelData);
713
712
714
713
if ( !retVal )
715
714
return false ;
@@ -718,7 +717,7 @@ bool QwiicKX132::getAccelData(outputData *userData){
718
717
}
719
718
720
719
// Converts acceleration data according to the set range value.
721
- bool QwiicKX132 ::convAccelData (outputData *userAccel, rawOutputData *rawAccelData){
720
+ bool QwDevKX132 ::convAccelData (outputData *userAccel, rawOutputData *rawAccelData){
722
721
723
722
uint8_t regVal;
724
723
uint8_t range;
@@ -766,12 +765,11 @@ bool QwiicKX132::convAccelData(outputData *userAccel, rawOutputData *rawAccelDat
766
765
// ******************************************************************************************
767
766
768
767
// Constructor
769
- QwiicKX134::QwiicKX134 () { }
770
768
771
769
772
770
bool QwDevKX134::init (void )
773
771
{
774
- if ( !_sfebus ->ping (_i2cAddress) )
772
+ if ( !_sfeBus ->ping (_i2cAddress) )
775
773
return false ;
776
774
777
775
if ( getUniqueID () != KX132_WHO_AM_I )
@@ -780,7 +778,8 @@ bool QwDevKX134::init(void)
780
778
return true ;
781
779
}
782
780
783
- bool QwiicKX134::getAccelData (outputData *userData){
781
+ bool QwDevKX134::getAccelData (outputData *userData)
782
+ {
784
783
785
784
bool retVal;
786
785
@@ -789,15 +788,16 @@ bool QwiicKX134::getAccelData(outputData *userData){
789
788
if ( !retVal )
790
789
return false ;
791
790
792
- retVal = convAccelData (& userData, &rawAccelData);
791
+ retVal = convAccelData (userData, &rawAccelData);
793
792
794
793
if ( !retVal )
795
794
return false ;
796
795
797
796
return true ;
798
797
}
799
798
800
- bool QwiicKX134::convAccelData (outputData *userAccel, rawOutputData *rawAccelData){
799
+ bool QwDevKX134::convAccelData (outputData *userAccel, rawOutputData *rawAccelData)
800
+ {
801
801
802
802
uint8_t regVal;
803
803
uint8_t range;
0 commit comments