Files
Clément SAILLANT 1f448f8885 clean
2025-03-26 16:09:29 +01:00

56 lines
1.6 KiB
C++

/**
* @file platform_aware_example.cpp
* @brief Exemple utilisant la détection automatique de plateforme
*
* Cet exemple démontre l'utilisation du fichier ADBPlatform.h pour
* créer un code qui s'adapte automatiquement à la plateforme cible.
*
* @author Clément SAILLANT - L'électron rare
* @copyright Copyright (C) 2025 Clément SAILLANT
* @license GNU GPL v3
*/
#include <Arduino.h>
#include "adb.h"
#include "ADBPlatform.h"
// Utilisation des paramètres de la plateforme
ADB adb(ADB_DEFAULT_PIN);
ADBDevices devices(adb);
ADBUtils utils(devices);
void setup() {
// Configuration adaptée à la plateforme
Serial.begin(ADB_SERIAL_BAUD);
while (!Serial && millis() < 3000);
adb.init();
// Affichage des informations de plateforme
printPlatformInfo();
Serial.println(F("Initialisation ADB réussie"));
// Configuration spécifique selon la plateforme
#ifdef ADB_PLATFORM_ESP32
// Code spécifique pour ESP32
Serial.println(F("Configuration spécifique pour ESP32 appliquée"));
#elif defined(ADB_PLATFORM_STM32)
// Code spécifique pour STM32
Serial.println(F("Configuration spécifique pour STM32 appliquée"));
#elif defined(ADB_PLATFORM_AVR)
// Code spécifique pour Arduino AVR
Serial.println(F("Mode économie de mémoire activé pour AVR"));
#endif
Serial.println(F("Prêt à recevoir les événements ADB"));
}
void loop() {
// Lecture des périphériques
utils.printKeyboardStatus();
utils.printMouseStatus();
// Utilisation de l'intervalle adapté à la plateforme
delay(ADB_POLL_INTERVAL);
}