va, rodos veikia: while(1){ c=read_ADC()+read_ADC(); if ((c-3 > old_c) || (c+3 < old_c)) {old_c=c;} print(old_c); } deja, mano ADC triuksmauja ir maziausia stabili paklaida apie 3 "pixelius". Gal dar kokiu minciu? On 2015.02.04 22:57, Levas wrote: > O tas naujas "cur_value" neturi buti kazkur per viduri leistinos paklaidos? > > while(1) > { > c=readADC(); > > if(c+10% < rodoma_reiksme) ir (c-10% > rodoma_reiksme) tai nieko nedaro > else > rodoma_reiksme=c > } > > Reikia pabandyti hardwareje. > > (10% tai cia siap, palubinsko koeficientas) > > On 2015.02.04 22:27, Audrys wrote: >> curr_value = read_ADC (); >> new_value = read_ADC (); >> if (curr_value != new_value && abs(cur_value / (curr_value - new_value) >> > 1000) { // o gal ir daug maziau uztektu ..... 10? >> cur_value = new_value; >> show_value (); >> } >> >> ? >> >> >> "Levas" wrote in message news:matsid$b9l$1@trimpas.omnitel.net... >> >> nu taip, bet kol kas smegenys neveikia... algoritmo noriu. Please, >> please. :) >> >> On 2015.02.04 21:29, Audrys wrote: >>> uzfiksuot rodyma paskutines, kai nauja skiriasi maziau ne pvz 0.1% ? >>> >>> "Levas" wrote in message news:matq7s$aca$1@trimpas.omnitel.net... >>> >>> uzmirsau pasakyti, kad naudojam tik integer matematika. >>> >>> >>> On 2015.02.04 20:42, Levas wrote: >>>> Nuskaitom ADC, du kartus: >>>> >>>> c=read_ADC()+read_ADC(); >>>> >>>> c tai nuskaityta reali reiksme, taciau ji vaiksto per paskutini >>>> skaitmeni. >>>> >>>> Poto paimam seniau skaityta reiksme ir darom vidurki. >>>> >>>> Reiksme kaip ir sudaryta is 4 matavimu, tik paskutinis skaicius vistiek >>>> +-1. Viskas irgi gerai. Bet ka daryti, kai reiksme 4.99 - 5.00 >>>> sokineja. >>>> Vizualiai persijungineja visi skaimenys ir nervuoja. Kaip susikaiciuoti >>>> ta histereze, kad tie skaiciai nesokinetu taip. >>>> >>>> >>>> >>> >> > -- Bye, Levas -- http://www.vabolis.lt