|
我最近有個Android和AVR聯(lián)合的項(xiàng)目,也需要通過存儲在手機(jī)中的數(shù)據(jù)經(jīng)過查表、轉(zhuǎn)換后通過藍(lán)牙傳呼到單片機(jī)再DAC輸出。我現(xiàn)在只有思路,代碼還沒寫。
基本思路是這樣的,先建立二維數(shù)組,或者結(jié)構(gòu)體數(shù)組,存儲類似于鍵值對的數(shù)據(jù),最好排好序,然后用需要查的鍵去比較。小于最小的,值取對應(yīng)最小的,大于最大的類似,當(dāng)然最好能避免這兩種情況。對于在中間的情況先找到在哪兩個中間,可以順序查找,數(shù)據(jù)多也可以二分法,代碼要復(fù)雜一些,然后按照線性關(guān)系得出近似的對應(yīng)值。如果取的數(shù)據(jù)合理,近似值和真實(shí)值還是可以很接近的。也要在數(shù)據(jù)量和精度之間權(quán)衡一下。
后期數(shù)據(jù)量大了我應(yīng)該是要用SQLite的,實(shí)現(xiàn)原理和思路還是相同的。單片機(jī)就不用想了。
在此記錄以便日后供自己參考。 |
評分
-
查看全部評分
|