IRC Helicopter "HonyBee" Propo decode test program

Dependencies:   RemoteIR mbed

これは、赤外線コントロールヘリコプター"HonyBee"のPropoからの送信データを解析して、PCに表示させるテストプログラムです。 詳しくは、 http://suupen-make.blogspot.jp/2013/06/irc-helicopter-honybeembedtest-program.html を参照してください。

Committer:
suupen
Date:
Sun Jun 23 07:28:06 2013 +0000
Revision:
0:f9e49220c97a
IRC Helicopter "HonyBee" Propo decode test program

Who changed what in which revision?

UserRevisionLine numberNew contents of line
suupen 0:f9e49220c97a 1 /**
suupen 0:f9e49220c97a 2 * Codec IR Propo of HonyBee common class
suupen 0:f9e49220c97a 3 * Version 0.0 130623
suupen 0:f9e49220c97a 4 *
suupen 0:f9e49220c97a 5 * Writer:suupen
suupen 0:f9e49220c97a 6 */
suupen 0:f9e49220c97a 7
suupen 0:f9e49220c97a 8 #ifndef _CODECHonyBee_H_
suupen 0:f9e49220c97a 9 #define _CODECHonyBee_H_
suupen 0:f9e49220c97a 10
suupen 0:f9e49220c97a 11 #include <mbed.h>
suupen 0:f9e49220c97a 12
suupen 0:f9e49220c97a 13
suupen 0:f9e49220c97a 14
suupen 0:f9e49220c97a 15 class CodecHonyBee {
suupen 0:f9e49220c97a 16 public:
suupen 0:f9e49220c97a 17
suupen 0:f9e49220c97a 18 typedef struct{
suupen 0:f9e49220c97a 19 uint8_t count;
suupen 0:f9e49220c97a 20 uint8_t band; // 1 to 255
suupen 0:f9e49220c97a 21 float slottle; // 0(min) to 1.0(max)
suupen 0:f9e49220c97a 22 float ladder; // -1.0(Left) to 1.0(Right)
suupen 0:f9e49220c97a 23 float elevator; // not use (-1.0(backward) to 1.0(forward))
suupen 0:f9e49220c97a 24 float trim; // -1.0 to 1.0
suupen 0:f9e49220c97a 25 } normalizePropo_t;
suupen 0:f9e49220c97a 26
suupen 0:f9e49220c97a 27
suupen 0:f9e49220c97a 28
suupen 0:f9e49220c97a 29 typedef struct{
suupen 0:f9e49220c97a 30 uint8_t count; // recive count [1/1 [recive]/count]
suupen 0:f9e49220c97a 31 uint8_t band; // 0x0a:A band 0x0b:B 0x0c:C
suupen 0:f9e49220c97a 32 uint8_t slottle; // 0x00:0 - 0x0e:14
suupen 0:f9e49220c97a 33 uint8_t trim; // 0x0f:Left 0x01:Right 0x00:neutral
suupen 0:f9e49220c97a 34 int8_t ladder; // -3:Left3 -2:Left2 -1:Left1 0:Neutral 1:Right1 2:Right2 3:Right3
suupen 0:f9e49220c97a 35 } honyBeePropo_t;
suupen 0:f9e49220c97a 36
suupen 0:f9e49220c97a 37
suupen 0:f9e49220c97a 38 static const uint8_t BAND_A = 0x00;
suupen 0:f9e49220c97a 39 static const uint8_t BAND_B = 0x01;
suupen 0:f9e49220c97a 40 static const uint8_t BAND_C = 0x02;
suupen 0:f9e49220c97a 41
suupen 0:f9e49220c97a 42 static const uint8_t SLOTTLE_MIN = 0x00;
suupen 0:f9e49220c97a 43 static const uint8_t SLOTTLE_MAX = 0x0e;
suupen 0:f9e49220c97a 44
suupen 0:f9e49220c97a 45 //static const int8_t TRIM_MIN = 0;
suupen 0:f9e49220c97a 46 //static const int8_t TRIM_MAX = 0x0f;
suupen 0:f9e49220c97a 47 static const int8_t TRIM_LEFT = 15;
suupen 0:f9e49220c97a 48 static const int8_t TRIM_RIGHT = 1;
suupen 0:f9e49220c97a 49 static const int8_t TRIM_NEUTRAL = 0;
suupen 0:f9e49220c97a 50
suupen 0:f9e49220c97a 51 static const int8_t LADDER_MIN = -3;
suupen 0:f9e49220c97a 52 static const int8_t LADDER_MAX = 3;
suupen 0:f9e49220c97a 53
suupen 0:f9e49220c97a 54 #if 0 // not use
suupen 0:f9e49220c97a 55 static const int8_t ELEVATOR_MIN = -15;
suupen 0:f9e49220c97a 56 static const int8_t ELEVATOR_MAX = 15;
suupen 0:f9e49220c97a 57 #endif
suupen 0:f9e49220c97a 58
suupen 0:f9e49220c97a 59 private:
suupen 0:f9e49220c97a 60
suupen 0:f9e49220c97a 61 CodecHonyBee();
suupen 0:f9e49220c97a 62
suupen 0:f9e49220c97a 63
suupen 0:f9e49220c97a 64 };
suupen 0:f9e49220c97a 65
suupen 0:f9e49220c97a 66 #endif
suupen 0:f9e49220c97a 67
suupen 0:f9e49220c97a 68
suupen 0:f9e49220c97a 69
suupen 0:f9e49220c97a 70
suupen 0:f9e49220c97a 71
suupen 0:f9e49220c97a 72