EasyManua.ls Logo

AMS AS5600 - Page 9

AMS AS5600
14 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
AS5600 Adapter Board
ams Eval Kit Manual, Confidential
Page 9
[v1-0] 2015-Jan-21
Document Feedback
Wire.beginTransmission(AS5600_ADR);
Wire.write(ang_lo);
Wire.endTransmission();
Wire.requestFrom(AS5600_ADR, 1);
while(Wire.available() == 0);
int lo_ang = Wire.read();
//Read Angle High Byte
Wire.beginTransmission(AS5600_ADR);
Wire.write(ang_hi);
Wire.endTransmission();
Wire.requestFrom(AS5600_ADR, 1);
while(Wire.available() == 0);
word hi_ang = Wire.read();
hi_ang = hi_ang << 8;
hi_ang = hi_ang | lo_ang;
//**************************************************
//Read Magnitude High Byte
Wire.beginTransmission(AS5600_ADR);
Wire.write(mag_hi);
Wire.endTransmission();
Wire.requestFrom(AS5600_ADR, 1);
while(Wire.available() == 0);
word hi_mag = Wire.read();
//Read Magnitude Low Byte
Wire.beginTransmission(AS5600_ADR);
Wire.write(mag_lo);
Wire.endTransmission();
Wire.requestFrom(AS5600_ADR, 1);
while(Wire.available() == 0);
word lo_mag = Wire.read();
hi_mag = hi_mag << 8;
hi_mag = hi_mag | lo_mag;
//**************************************************
//Read AGC
Wire.beginTransmission(AS5600_ADR);
Wire.write(agc);
Wire.endTransmission();
Wire.requestFrom(AS5600_ADR, 1);
while(Wire.available() == 0);
int agc_val = Wire.read();
//***************************************************
// Read Status Bits
Wire.beginTransmission(AS5600_ADR);
Wire.write(stat);
Wire.endTransmission();
Wire.requestFrom(AS5600_ADR, 1);
while(Wire.available() == 0);
int stat_val = Wire.read();
stat_val = stat_val & 0xa0; //Mask off all unnecessary bits
//Print Values Received
float Raw_Ang = hi_raw *0.0879;
float Ang = hi_ang * 0.0879;
Serial.print(" AS5600 Raw Angle = "); Serial.println(Raw_Ang, DEC);
Serial.print(" AS5600 Angle = "); Serial.println(Ang, DEC);
Serial.print(" AS5600 Magnitude = "); Serial.println(hi_mag, HEX);
Serial.print(" AS5600 AGC = "); Serial.println(agc_val, HEX);
Serial.print("AS5600 Status Bits = "); Serial.println(stat_val, BIN);
Serial.println();
Serial.println();
delay(2000);
}

Other manuals for AMS AS5600