Rev 2008 | Rev 2050 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2008 | Rev 2009 | ||
---|---|---|---|
Line 261... | Line 261... | ||
261 | ZaehlMessungen++; |
261 | ZaehlMessungen++; |
262 | // "break" fehlt hier absichtlich |
262 | // "break" fehlt hier absichtlich |
263 | case 9: |
263 | case 9: |
264 | MessLuftdruck = ADC; |
264 | MessLuftdruck = ADC; |
265 | tmpLuftdruck += MessLuftdruck; |
265 | tmpLuftdruck += MessLuftdruck; |
266 | if(++messanzahl_Druck >= 18) |
266 | if(++messanzahl_Druck >= 16) // war bis 0.86 "18" |
267 | { |
267 | { |
268 | signed int tmp; |
268 | signed int tmp; |
269 | Luftdruck = (7 * Luftdruck + tmpLuftdruck - (18 * 523) * (long)ExpandBaro + 4) / 8; // -523.19 counts per 10 counts offset step |
269 | Luftdruck = (7 * Luftdruck + tmpLuftdruck - (16 * 523) * (long)ExpandBaro + 4) / 8; // -523.19 counts per 10 counts offset step |
270 | HoehenWert = StartLuftdruck - Luftdruck; |
270 | HoehenWert = StartLuftdruck - Luftdruck; |
271 | SummenHoehe -= SummenHoehe/SM_FILTER; |
271 | SummenHoehe -= SummenHoehe/SM_FILTER; |
272 | SummenHoehe += HoehenWert; |
272 | SummenHoehe += HoehenWert; |
273 | tmp = (HoehenWert - SummenHoehe/SM_FILTER); |
273 | tmp = (HoehenWert - SummenHoehe/SM_FILTER); |
274 | if(tmp > 1024) tmp = 1024; else if(tmp < -1024) tmp = -1024; |
274 | if(tmp > 1024) tmp = 1024; else if(tmp < -1024) tmp = -1024; |
275 | if(abs(VarioMeter) > 700) VarioMeter = (15 * VarioMeter + 8 * tmp)/16; |
275 | if(abs(VarioMeter) > 700) VarioMeter = (15 * VarioMeter + 8 * tmp)/16; |
276 | else VarioMeter = (31 * VarioMeter + 8 * tmp)/32; |
276 | else VarioMeter = (31 * VarioMeter + 8 * tmp)/32; |
277 | tmpLuftdruck /= 2; |
277 | tmpLuftdruck /= 2; |
278 | messanzahl_Druck = 18/2; |
278 | messanzahl_Druck = 16/2; |
279 | } |
279 | } |
280 | kanal = AD_NICK; |
280 | kanal = AD_NICK; |
281 | break; |
281 | break; |
282 | default: |
282 | default: |
283 | kanal = 0; state = 0; kanal = AD_NICK; |
283 | kanal = 0; state = 0; kanal = AD_NICK; |