Ciao Ragazzi,
Sto sviluppando un progetto che dovrebbe darmi in uscita una variabile calcolata in base a due letture prese da un pin analogico e da un calcolo di un interrupt.
Sono riuscito già a calcolarmi tutto quindi ho le due variabili di ingresso pronte. Il mio problema è che la variabile in uscita non è direttamente dipendende dalle due in ingresso esempio (A+36 x B + 36 ) ma bensì dovrei andare a leggere una tabella 2d dopve le variabili in ingresso rappresentano i due assi e la variabile in uscita è il valore di incrocio.
Oltre a questo, ovviamente, dovrei interpolare.
Ho provato ad ottenere questo facendo un test su una porziopne limitata di tabella utilizzando tanti "if" e specificando ogni volta le condizioni di interpolazione.
Questo oltre ad essere molto lungo da scrivere credo sia anche molto macchinoso per il processore oltre che avere un ultimo svantaggio: se volessi cambiare i tati della tabella dovrei in pratica riscrivere tutto il codice.
Esiste una funzione più semplice in cui poter inserire i dati che "legga" le variabili di ingresso e mi restituisca l'uscita "leggendo" la look-up table e interpolando ?
Ho letto della funzione multimap ma non mi è molto chiara.
Ho pensato anche di approssimare le varie curve con delle funzioni polinomiali di grado "n" così da utilizzare solo un numero limitato di if poi far svolgere al processore l'operazione ma non sembra essere molto semplice.
grazie in anticipo per l'aiuto
Michele