Commit Graph

7 Commits

Author SHA1 Message Date
Andrew Tridgell 2046e396a2 AnalogSource: make the Arduino AnalogSource interrupt driven
this fixes several problems with reading analog sources:

 - we were getting poor values because we didn't wait long enough for
   an analog source to settle

 - we wasted a lot of CPU cycles waiting for conversions

 - we were not taking averages over many samples, which we did with
   the old AP_ADC driver on the APM1
2012-07-01 15:01:05 +10:00
Andrew Tridgell 57ac39649a TimerProcess: added suspend_timer()/resume_timer()
this will be used to avoid races in driver initialisation
2012-05-01 12:06:54 +10:00
Andrew Tridgell 0a08a0b515 TimerProcess: make some variables uint8_t
save a couple of bytes
2011-12-28 16:00:48 +11:00
Andrew Tridgell 8cc2b7669b PeriodicProcess: added set_failsafe() call
this adds an optional failsafe function that will be called in the
timer loop
2011-12-21 23:31:38 +11:00
Andrew Tridgell 5b4717ea55 timers: change to 1kHz timer by default
we were using a 227Hz timer, which is far too slow
2011-12-16 20:09:25 +11:00
Pat Hickey a7b9c8b9cd AP_PeriodicProcess: AP_TimerProcess can register multiple callbacks. 2011-12-11 15:21:10 -08:00
Pat Hickey 7474a8be53 purple: added PeriodicProcess library
this library provides a clean API for drivers to request periodic
timer driven calls at whatever rate they need
2011-11-25 20:00:16 -08:00