c'era una volta un pin remoto....

Come funziona?
semplice, uguale uguale alla stagione dei pin remoti, di pochi mesi fa
ho aggiunto tre nuovi comandi
ipotizzando esista sulla macchina slave un array di byte la funzione
int remoteByteRead(char indirizzo, byte elemento)
restituisce il contenuto dell'elemento di indice "elemento" dell'array sulla macchina in indirizzo
due parole su questo indice:
per non cambiare il formato dati in ricetrasmissione ho riutilizzato il campo PIN, che parte dal carattere '0' per indicare 0, quindi la dimensione massima del vettore è di 78 elementi, vediamo di non sbordare
invece la funzione:
int remoteByteWrite(char indirizzo, byte elemento, byte valore)
imposta il valore dell'elemento di indice "elemento" al valore "valore"
e siccome "io ritorno sempre" ritorna il valore letto da quell'elemento, confermando così la'avvenuta scrittura
altre due parole su come si inizializza questo vettore:
basta definire, PRIMA di includere la libreria, la macro VETTOREBYTE a un numero diverso da zero (ma minore di 78)
la libreria dimensionerà un array di nome vettorebyte, dove in locale si potrà leggere o scrivere come un normale vettore, da remoto con le due funzioni citate
se invece si crea un array di puntatori a funzioni int f(int), con la funzione
int remoteFunBCall(char indirizzo, byte elemento, byte valore)
si chiama la funzione untata dall'elementesimo elemento dell'array di puntatori a funzioni
anche qui basta definire prima la macro VETTOREFUNZIONI perchè la libreria crei il vettorefunzioni di massimo 78 elementi
le funzioni che si vanno a creare per popolare l'array devono restituire byte (in realtà int con solo 4 cifre, causa formato di trasmissione) ed accettare un solo argomento byte
se non fosse necessario un argomento accettatelo e non fatene uso, se non fosse necessario un ritorno ritornate zero a vuoto

Dicevo: io stasera non la provo, andrà a settimana prossima, ma magari qualcuno più bravo di me avrà voglia di darci uno sguardo

buon fine settimana a tutti