mirror of
https://gitlab.dit.htwk-leipzig.de/phillip.kuehne/dezibot.git
synced 2025-07-04 17:51:41 +02:00
wip:reading acceleration
This commit is contained in:
@ -17,4 +17,5 @@ Dezibot::Dezibot():multiColorLight(),motionDetection(){
|
|||||||
};
|
};
|
||||||
void Dezibot::begin(void) {
|
void Dezibot::begin(void) {
|
||||||
multiColorLight.begin();
|
multiColorLight.begin();
|
||||||
|
motionDetection.begin();
|
||||||
};
|
};
|
||||||
|
@ -8,9 +8,8 @@ void MotionDetection::begin(void){
|
|||||||
pinMode(34,OUTPUT);
|
pinMode(34,OUTPUT);
|
||||||
digitalWrite(34,HIGH);
|
digitalWrite(34,HIGH);
|
||||||
handler->begin(36,37,35,34);
|
handler->begin(36,37,35,34);
|
||||||
|
|
||||||
|
|
||||||
//handler->beginTransaction(SPISettings(frequency,SPI_MSBFIRST,SPI_MODE0));
|
handler->beginTransaction(SPISettings(frequency,SPI_MSBFIRST,SPI_MODE0));
|
||||||
|
|
||||||
digitalWrite(34,LOW);
|
digitalWrite(34,LOW);
|
||||||
// set Accel and Gyroscop to Low Noise
|
// set Accel and Gyroscop to Low Noise
|
||||||
@ -20,7 +19,7 @@ void MotionDetection::begin(void){
|
|||||||
delayMicroseconds(200);
|
delayMicroseconds(200);
|
||||||
|
|
||||||
digitalWrite(34,HIGH);
|
digitalWrite(34,HIGH);
|
||||||
//handler->endTransaction();*/
|
handler->endTransaction();
|
||||||
};
|
};
|
||||||
void MotionDetection::end(void){
|
void MotionDetection::end(void){
|
||||||
handler->beginTransaction(SPISettings(frequency,SPI_MSBFIRST,SPI_MODE0));
|
handler->beginTransaction(SPISettings(frequency,SPI_MSBFIRST,SPI_MODE0));
|
||||||
@ -35,9 +34,12 @@ IMUResult MotionDetection::getAcceleration(){
|
|||||||
IMUResult result;
|
IMUResult result;
|
||||||
handler->beginTransaction(SPISettings(frequency,SPI_MSBFIRST,SPI_MODE0));
|
handler->beginTransaction(SPISettings(frequency,SPI_MSBFIRST,SPI_MODE0));
|
||||||
digitalWrite(34,LOW);
|
digitalWrite(34,LOW);
|
||||||
result.x = handler->transfer16(cmdRead(ACCEL_DATA_X_HIGH,ACCEL_DATA_X_LOW));
|
result.x = readRegister(ACCEL_DATA_X_HIGH)<<8;
|
||||||
result.y = handler->transfer16(cmdRead(ACCEL_DATA_Y_HIGH,ACCEL_DATA_Y_LOW));
|
result.x |= readRegister(ACCEL_DATA_X_LOW);
|
||||||
result.z = handler->transfer16(cmdRead(ACCEL_DATA_Z_HIGH,ACCEL_DATA_Z_LOW));
|
result.y = readRegister(ACCEL_DATA_Y_HIGH)<<8;
|
||||||
|
result.y |= readRegister(ACCEL_DATA_Y_LOW);
|
||||||
|
result.z = readRegister(ACCEL_DATA_Z_HIGH)<<8;
|
||||||
|
result.z |= readRegister(ACCEL_DATA_Z_LOW);
|
||||||
digitalWrite(34,HIGH);
|
digitalWrite(34,HIGH);
|
||||||
handler->endTransaction();
|
handler->endTransaction();
|
||||||
return result;
|
return result;
|
||||||
|
Reference in New Issue
Block a user