#include <QMC5883LCompass.h>
#include <LiquidCrystal.h>
#include <SoftwareSerial.h>
#include <Wire.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
QMC5883LCompass compass;
void setup() {
compass.init();
lcd.begin(16, 2);
Serial.begin(9600);
}
void loop() {
lcd.setCursor(0, 0);
int x, y, z, a, b;
compass.read();
x = compass.getX();
y = compass.getY();
z = compass.getZ();
a = compass.getAzimuth();
b = compass.getBearing(a);
char direction[3];
compass.getDirection(direction, a);
lcd.setCursor(0,0);
lcd.print("Heading: ");
lcd.setCursor(10,0);
lcd.print(a, 8);
lcd.setCursor(14,0);
lcd.print(direction[0], 8);
lcd.print(direction[1], 8);
lcd.print(direction[2], 8);
delay(250);
}