Salve ragazzi, ho una domanda apparentemente stupida in merito alle funzioni di sentCallBack e receiveCallBack dell'ESP32.
Quanti ne posso registrare??? solo uno o più di uno?
Scusate se vi ho sparato subito la domanda, ma adesso faccio un breve passo indietro e mi spiego meglio.
Vorrei mettere in comunicazione 3 ESP32 con protocollo ESP-NOW. Chiamiamo i 3 ESP32 con i nomi A,B e C
A deve ricevere ed inviare una struttura di dati (pochi byte niente di che) con B
A deve ricevere una struttura di dati diversa da quella utilizzata con B da C (senza mai inviare nulla a C, tre float)
Di qui la mia domanda...
Quanti
esp_now_register_send_cb(sentCallback);
esp_now_register_recv_cb(receiveCallback);
posso registrare?
Presuppongo che se aggiungo tipo
esp_now_register_send_cb(sentCallback1);
esp_now_register_recv_cb(receiveCallback1);
esp_now_register_send_cb(sentCallback2);
esp_now_register_recv_cb(receiveCallback2);
il secondo va a sovrascrivere il primo. Intuisco bene o sbaglio miseramente?
Grazie in anticipo.
EDIT: ovviamente il problema me lo sto ponendo sull'ESP32 A
EDIT2: ragionando sul fatto che esp_now_register_send_cb(SCB) e esp_now_register_recv_cb(RCB) sono delle funzioni presuppongo che non si possono registrare diversi SCB/RCB per diversi tipi di dati, o meglio dovrei variare ogni volta che ricevo i dati in base all'ESP32 che sta comunicando, cosa impossibile perché le comunicazioni sono asincrone. Questo mi induce a pensare che devo creare un unica struttura di dati per tutti indipendentemente per chi o da chi sto ricevendo i dati. Questo non mi impedisce di creare due strutture di dati da riempire in base per chi o da chi li stia ricevendo/trasmettendo...
Giusto?