Mercury V1 handleiding
Ontdek hoe je snel en eenvoudig kunt vliegen, verbind je altimeter om te uploaden naar de Altimeter Cloud website en gebruik ook alle geavanceerde functies. Als je vastloopt of net begint, dan ben je hier op de juiste plek.

Codevoorbeeld: NeoPixel status LED

PDF

De Mercury heeft vanaf revisie 3 en hoger 1 "Neopixel" type status-LED, of 4 in een vierkant.
De gemakkelijkste manier om deze te gebruiken is om ze in te schakelen (zie de pagina Stroomregeling) en gebruik vervolgens een standaardbibliotheek. 
In dit voorbeeld kunt u dit wijzigen in 4 of 1 pixel; we hebben het standaard ingesteld op 4 pixels. 

Gebruikt u Arduino IDE? Onze online programmer bevat standaard Mercury_Pins.h, dus de pinnamen werken zonder problemen. Als u Arduino IDE of een ander programmeereditie gebruikt, kopieert u de inhoud van het Mercury_Pins.h-tabblad en plakt u dit bovenaan uw programma.
/*
 * Mercury V1 (ESP32-C6) Status LED voorbeeld
 * Cyclus van de Neopixel(s) door verschillende kleuren
 */
#include "Mercury_Pins.h"
#include "Adafruit_NeoPixel.h"

Adafruit_NeoPixel pixels(4, LED, NEO_GRB + NEO_KHZ800);

void setup() {
    Serial.begin(115200);

    // Schakel de NeoPixel voedingslijn in
    pinMode(LEDPOWER, OUTPUT);
    digitalWrite(LEDPOWER, HIGH);
    delay(10);

    pixels.begin();
    pixels.setBrightness(140);  // Houd helderheid laag (0-255)
    pixels.show();

    Serial.println("NeoPixel kleurcyclus gestart");
}

// Cyclus alle pixels soepel door het kleurenwiel
void rainbow(int wait) {
    static uint16_t hue = 0;
    for (int i = 0; i < pixels.numPixels(); i++) {
        uint16_t pixelHue = hue + (i * 65536L / pixels.numPixels());
        pixels.setPixelColor(i, pixels.gamma32(pixels.ColorHSV(pixelHue)));
    }
    pixels.show();
    hue += 256;
    delay(wait);
}

void loop() {
    rainbow(20);
}



#pragma once
/*
 * Mercury (ESP32-C6) Pindefinities
 * Bordspecifieke GPIO-toewijzingen
 */

// ââ Status-LED (NeoPixel) ââ
#define LEDPOWER      3    // NeoPixel voeding (zet HIGH om in te schakelen)
#define LED           2    // NeoPixel datasignaal

// ââ I2C-bus ââ
#define SDA           21   // I2C-gegevens
#define SCL           22   // I2C-klok

// ââ Sensorvoeding ââ
#define VACC          20   // Sensorvoedingslijn (zet HIGH om in te schakelen)

// ââ Algemeen gebruikspoorten ââ
#define GP06          6    // GP06-poort
#define GP07          7    // GP07-poort

// ââ Uitgang met hoge stroomsterkte ââ
#define OUT1          5    // Uitgang met hoge stroomsterkte (bijvoorbeeld pyro / relais)

// ââ Batterij-indicator LED's ââ
#define BL1           4    // Batterij-LED 1 (laagste)
#define BL2           14   // Batterij-LED 2
#define BL3           15   // Batterij-LED 3
#define BL4           18   // Batterij-LED 4
#define BL5           19   // Batterij-LED 5 (hoogste)

// ââ Indicatoren ââ
#define DISK          8    // Schijf-activiteit LED

// ââ Analoog / Detectie ââ
#define BATIN         0    // Batterijspanning (1:1 deler)
#define USBDETECT     1    // USB-stroomdetectie (HIGH = USB aanwezig)
#define BUTTON        9    // BUTTON op het bord, opstartknoppen maar kunnen worden gebruikt