Skip to main content

Brzi početak

Ova pločica mjeri magnetsko polje na tri osi. Povežite je preko I2C-a, instalirajte biblioteku za svoje okruženje i pokrenite osnovni primjer očitanja da biste vidjeli X, Y i Z komponentu polja u mikroteslama (µT) i temperaturu senzora.

Programirate kontroler spojen na ovu pločicu. Sama pločica nije flashana.

1. Povežite pločicu​

Priključite Qwiic kabel u bilo koji Qwiic konektor na pločici i u Qwiic konektor na svojem kontroleru. Jedan kabel prenosi napajanje i I2C.

NULA DeepSleepSoldered 3-axis Magnetometer BMM350 Breakout
Qwiic konektorQwiic konektor
Shema spajanja: NULA DeepSleep spojen na Soldered 3-axis Magnetometer BMM350 Breakout Qwiic kabelom

Bez Qwiic-a: spajanje na eksperimentalnoj pločici​

Zalemite priložene pin headere i spojite 4-pinski header na napajanje i I2C pinove svojeg kontrolera:

NULA DeepSleepSoldered 3-axis Magnetometer BMM350 Breakout
GNDGND
3V33V3
IO8SDA
IO9SCL
Shema spajanja: NULA DeepSleep spojen na Soldered 3-axis Magnetometer BMM350 Breakout: GND na GND, 3V3 na 3V3, IO8 na SDA, IO9 na SCL

Strana headera radi od 2 V do 5 V, preko regulatora od 1,8 V i I2C pretvarača naponskih razina na pločici. Qwiic konektori dijele isto napajanje, pa ako header napajate s 5 V, oba Qwiic konektora također daju 5 V.

2. Instalirajte biblioteku​

Preuzmite biblioteku Soldered BMM350 Geomagnetic Sensor s njezina GitHub repozitorija i dodajte je u Arduino IDE kao ZIP biblioteku.

🔗Soldered BMM350 Geomagnetic Sensor

Provjerena Arduino biblioteka na commitu 8ef2cae

→

Savjet: preuzimanje s GitHuba. Na GitHub stranici biblioteke kliknite zeleni gumb Code i odaberite Download ZIP, zatim ga dodajte u Arduino IDE-u preko Sketch → Include Library → Add .ZIP Library....

3. Pokrenite prvi primjer​

Ovo je basicReadings.ino, najjednostavniji primjer iz biblioteke. Pokreće senzor na zadanoj adresi 0x14 i ispisuje polje na sve tri osi u µT te temperaturu u °C, otprilike 10 puta u sekundi. Učitajte ga, zatim otvorite Serijski monitor na 115200 baud.

Select Board
basicReadings.ino
/**
**************************************************
*
* @file basicReadings.ino
*
* @brief Example showing how to read compensated magnetometer and
* temperature data from the Soldered BMM350 Geomagnetic
* Sensor breakout over I2C
*
* @link solde.red/333359 : Soldered BMM350 Geomagnetic Sensor breakout
*
* @authors Soldered Electronics
***************************************************/
#include <BMM350-SOLDERED.h>

// Create an instance of the BMM350 sensor
Soldered_BMM350 magSensor;

void setup()
{
// Initialize serial for output
Serial.begin(115200);
Serial.println("BMM350 Example - Basic Readings");

// Initialize I2C bus
Wire.begin();

// Check if sensor is connected and initialize it.
// Address is optional, defaults to 0x14 (ADSEL tied low on this breakout)
while (magSensor.begin() != BMM350_OK)
{
Serial.println("Error: BMM350 not connected, check wiring and I2C address!");
delay(1000);
}

Serial.println("BMM350 connected!");
}

void loop()
{
// Get new measurements from the sensor. This must be called before
// accessing the magX/magY/magZ/temperature data, otherwise it will never update
if (magSensor.getSensorData() == BMM350_OK)
{
Serial.print("X: ");
Serial.print(magSensor.magX, 2);
Serial.print(" uT\t");
Serial.print("Y: ");
Serial.print(magSensor.magY, 2);
Serial.print(" uT\t");
Serial.print("Z: ");
Serial.print(magSensor.magZ, 2);
Serial.print(" uT\t");
Serial.print("Temperature: ");
Serial.print(magSensor.temperature, 2);
Serial.println(" degC");
}

// Print 10x per second
delay(100);
}

4. Provjerite rezultat​

Kad senzor odgovori, Serijski monitor prikazuje dva početna retka, zatim jedan redak po očitanju, otprilike svakih 100 ms: polje na X:, Y: i Z: u uT s dvije decimale, zatim Temperature: u degC, odvojeno tabulatorima.

Serial MonitorAutoscrollShow timestampNewline115200 baud
Message (Enter to send message to the board)
BMM350 Example - Basic Readings
BMM350 connected!
X: 12.84 uT Y: -21.37 uT Z: -38.92 uT Temperature: 24.61 degC
X: 12.79 uT Y: -21.42 uT Z: -38.88 uT Temperature: 24.62 degC
X: 12.86 uT Y: -21.35 uT Z: -38.95 uT Temperature: 24.62 degC
X: 12.81 uT Y: -21.40 uT Z: -38.90 uT Temperature: 24.63 degC

Ako umjesto toga jednom u sekundi vidite Error: BMM350 not connected, check wiring and I2C address!, senzor nije odgovorio na 0x14.

5. Ako ne radi​

Nastavite s poglavljem Otklanjanje poteškoća i nakon svake promjene ponovno pokrenite ovaj najjednostavniji primjer.