123
Fork of LG by
DeviceCounters.h@173:7f938afb0447, 2016-06-19 (annotated)
- Committer:
- Diletant
- Date:
- Sun Jun 19 03:54:35 2016 +0000
- Revision:
- 173:7f938afb0447
- Parent:
- 167:bedc0a9d559a
- Child:
- 174:0f86eedd511c
Device&... update. Not final!!!
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Diletant | 156:e68ee0bcdcda | 1 | #ifndef __DEVICE_COUNTERS_H__ |
Diletant | 156:e68ee0bcdcda | 2 | #define __DEVICE_COUNTERS_H__ |
Diletant | 156:e68ee0bcdcda | 3 | |
Diletant | 156:e68ee0bcdcda | 4 | typedef struct _DeviceCountersSettings { |
Diletant | 156:e68ee0bcdcda | 5 | } DeviceCountersSettings; |
Diletant | 156:e68ee0bcdcda | 6 | |
Diletant | 156:e68ee0bcdcda | 7 | typedef struct _DeviceCountersState { |
Diletant | 161:efd949e8d536 | 8 | int32_t delta[32]; //Cyclic buffer of QEI counts with (32 * oscillation frequency) update frequency |
Diletant | 161:efd949e8d536 | 9 | int32_t angle; //Sum of last 32 deltas from delta buffer - angle accumulated for 1 vibro cycle |
Diletant | 156:e68ee0bcdcda | 10 | int32_t displacement; //Sum of last 16 deltas minus sum of previous 16 deltas from delta buffer - displacement |
Diletant | 156:e68ee0bcdcda | 11 | int32_t amplitude; //Sum of positive displacements minus negative displacements from last 32 displacements - "dither amplitude" |
Diletant | 161:efd949e8d536 | 12 | int32_t frequency; //Sum of positive deltas minus negative deltas from last 32 deltas - dither "output frequency" |
Diletant | 161:efd949e8d536 | 13 | int32_t accumulator; //Angle accumulated between user read requests, or between periodic answers |
Diletant | 156:e68ee0bcdcda | 14 | } DeviceCountersState; |
Diletant | 156:e68ee0bcdcda | 15 | |
Diletant | 156:e68ee0bcdcda | 16 | typedef struct _DeviceCounters { |
Diletant | 156:e68ee0bcdcda | 17 | DeviceCountersSettings settings; |
Diletant | 156:e68ee0bcdcda | 18 | DeviceCountersState state; |
Diletant | 156:e68ee0bcdcda | 19 | } DeviceCounters; |
Diletant | 156:e68ee0bcdcda | 20 | |
Diletant | 167:bedc0a9d559a | 21 | void InitCountersDefaultSettings(void); |
Diletant | 167:bedc0a9d559a | 22 | void InitCountersState(void); |
Diletant | 167:bedc0a9d559a | 23 | void DeviceStartCounters(void); |
Diletant | 167:bedc0a9d559a | 24 | |
Diletant | 173:7f938afb0447 | 25 | void countersProcess(void); |
Diletant | 156:e68ee0bcdcda | 26 | |
Diletant | 156:e68ee0bcdcda | 27 | #endif /* __DEVICE_COUNTERS_H__ */ |