Lab 1 Compass Module HMC5883 L
Arduino IDE Code
#include <Wire.h>
#include <MechaQMC5883.h>
#include <Wire.h>
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
Adafruit_SSD1306 OLED(-1);
MechaQMC5883 qmc;
void setup() {
OLED.begin(SSD1306_SWITCHCAPVCC, 0x3C); // กำหนดแอดเดรสของพอร์ตจอเป็น 0x3C (for the 128x64)
Wire.begin();
qmc.init(); //qmc.setMode(Mode_Continuous,ODR_200Hz,RNG_2G,OSR_256);
Serial.begin(115200);
}
void loop() {
int x, y, z, azimuth;
//qmc.read(&x, &y, &z);
qmc.read(&x, &y, &z, &azimuth);
Serial.print("x: ");
Serial.print(x);
Serial.print(" y: ");
Serial.print(y);
Serial.print(" z: ");
Serial.print(z);
Serial.println();
OLED.clearDisplay();
OLED.setTextColor(WHITE, BLACK);
OLED.setCursor(0, 0);
OLED.setTextSize(2);
OLED.print(" x = "); OLED.println(x);
OLED.print(" y = "); OLED.println(y);
OLED.print(" z = "); OLED.println(z);
OLED.print("Azi= "); OLED.println(azimuth);
OLED.display();
delay(50);
}