IRC Helicopter "SWIFT" Propo codec(Decode only) library
Dependents: SwiftPropoIR_TestProgram spinner2
CodecSwift.h@0:8ceeb99b4c21, 2013-06-23 (annotated)
- Committer:
- suupen
- Date:
- Sun Jun 23 07:25:04 2013 +0000
- Revision:
- 0:8ceeb99b4c21
IRC Helicpoter "SWIFT" Propo codec(decode only) library
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
suupen | 0:8ceeb99b4c21 | 1 | /** |
suupen | 0:8ceeb99b4c21 | 2 | * Codec IR Propo of Swift common class |
suupen | 0:8ceeb99b4c21 | 3 | * Version 0.0 130623 |
suupen | 0:8ceeb99b4c21 | 4 | * |
suupen | 0:8ceeb99b4c21 | 5 | * Writer:suupen |
suupen | 0:8ceeb99b4c21 | 6 | */ |
suupen | 0:8ceeb99b4c21 | 7 | |
suupen | 0:8ceeb99b4c21 | 8 | #ifndef _CODECSWIFT_H_ |
suupen | 0:8ceeb99b4c21 | 9 | #define _CODECSWIFT_H_ |
suupen | 0:8ceeb99b4c21 | 10 | |
suupen | 0:8ceeb99b4c21 | 11 | #include <mbed.h> |
suupen | 0:8ceeb99b4c21 | 12 | |
suupen | 0:8ceeb99b4c21 | 13 | |
suupen | 0:8ceeb99b4c21 | 14 | |
suupen | 0:8ceeb99b4c21 | 15 | class CodecSwift { |
suupen | 0:8ceeb99b4c21 | 16 | public: |
suupen | 0:8ceeb99b4c21 | 17 | |
suupen | 0:8ceeb99b4c21 | 18 | typedef struct{ |
suupen | 0:8ceeb99b4c21 | 19 | uint8_t count; |
suupen | 0:8ceeb99b4c21 | 20 | uint8_t band; // 1 to 255 |
suupen | 0:8ceeb99b4c21 | 21 | float slottle; // 0(min) to 1.0(max) |
suupen | 0:8ceeb99b4c21 | 22 | float ladder; // -1.0(Left) to 1.0(Right) |
suupen | 0:8ceeb99b4c21 | 23 | float elevator; // -1.0(backward) to 1.0(forward) |
suupen | 0:8ceeb99b4c21 | 24 | float trim; // -1.0 to 1.0 |
suupen | 0:8ceeb99b4c21 | 25 | } normalizePropo_t; |
suupen | 0:8ceeb99b4c21 | 26 | |
suupen | 0:8ceeb99b4c21 | 27 | |
suupen | 0:8ceeb99b4c21 | 28 | |
suupen | 0:8ceeb99b4c21 | 29 | typedef struct{ |
suupen | 0:8ceeb99b4c21 | 30 | uint8_t count; // recive count [1/1 [recive]/count] |
suupen | 0:8ceeb99b4c21 | 31 | uint8_t band; // 0x03:A band 0x02:B 0x01:C |
suupen | 0:8ceeb99b4c21 | 32 | uint8_t slottle; // 0x00 - 0x72 |
suupen | 0:8ceeb99b4c21 | 33 | int8_t trim; // -23 to 29 |
suupen | 0:8ceeb99b4c21 | 34 | int8_t ladder; // right:1 to 15, left:-1 to -15 |
suupen | 0:8ceeb99b4c21 | 35 | int8_t elevator; // forward: 1 to 15 , backward -1 to -15 |
suupen | 0:8ceeb99b4c21 | 36 | } swiftPropo_t; |
suupen | 0:8ceeb99b4c21 | 37 | |
suupen | 0:8ceeb99b4c21 | 38 | static const uint8_t BAND_A = 0x03; |
suupen | 0:8ceeb99b4c21 | 39 | static const uint8_t BAND_B = 0x02; |
suupen | 0:8ceeb99b4c21 | 40 | static const uint8_t BAND_C = 0x01; |
suupen | 0:8ceeb99b4c21 | 41 | |
suupen | 0:8ceeb99b4c21 | 42 | static const uint8_t SLOTTLE_MIN = 0x00; |
suupen | 0:8ceeb99b4c21 | 43 | static const uint8_t SLOTTLE_MAX = 114; |
suupen | 0:8ceeb99b4c21 | 44 | |
suupen | 0:8ceeb99b4c21 | 45 | static const int8_t TRIM_MIN = -23; |
suupen | 0:8ceeb99b4c21 | 46 | static const int8_t TRIM_MAX = 23; |
suupen | 0:8ceeb99b4c21 | 47 | |
suupen | 0:8ceeb99b4c21 | 48 | static const int8_t LADDER_MIN = -15; |
suupen | 0:8ceeb99b4c21 | 49 | static const int8_t LADDER_MAX = 15; |
suupen | 0:8ceeb99b4c21 | 50 | |
suupen | 0:8ceeb99b4c21 | 51 | static const int8_t ELEVATOR_MIN = -15; |
suupen | 0:8ceeb99b4c21 | 52 | static const int8_t ELEVATOR_MAX = 15; |
suupen | 0:8ceeb99b4c21 | 53 | |
suupen | 0:8ceeb99b4c21 | 54 | |
suupen | 0:8ceeb99b4c21 | 55 | private: |
suupen | 0:8ceeb99b4c21 | 56 | |
suupen | 0:8ceeb99b4c21 | 57 | CodecSwift(); |
suupen | 0:8ceeb99b4c21 | 58 | |
suupen | 0:8ceeb99b4c21 | 59 | |
suupen | 0:8ceeb99b4c21 | 60 | }; |
suupen | 0:8ceeb99b4c21 | 61 | |
suupen | 0:8ceeb99b4c21 | 62 | #endif |
suupen | 0:8ceeb99b4c21 | 63 | |
suupen | 0:8ceeb99b4c21 | 64 | |
suupen | 0:8ceeb99b4c21 | 65 | |
suupen | 0:8ceeb99b4c21 | 66 | |
suupen | 0:8ceeb99b4c21 | 67 | |
suupen | 0:8ceeb99b4c21 | 68 |