4 #include "pirprotocol.h"
5 #include "pirrx51hardware.h"
8 // The RC5 protocol is apparently quite a bit older than the NEC protocol, but
9 // not as widespread. Still, it continues to be in use, as I've seen
10 // by my Elgato "Eye TV" remote control.
13 class RC5Protocol: public PIRProtocol
37 void startSendingCommand(
38 unsigned int threadableID,
42 unsigned int biphasePulse;
43 unsigned int biphaseSpace;
45 unsigned int leadPulse;
47 unsigned int headerPulse;
48 unsigned int headerSpace;
51 CommandSequence preData;
52 // CommandSequence postData;
56 // The original RC-5 specification marks a single bit as a "toggle bit",
57 // which should be inverted on each separate keypress. This was originally
58 // the third bit, but apparently some remotes invert a different bit.
59 // If set to 0, then no bits are inverted.
64 const CommandSequence &bits,
65 PIRRX51Hardware &device);
70 // Only one of the following can be true, but both can be false:
71 bool bufferContainsSpace;
72 bool bufferContainsPulse;
75 #endif // RC5PROTOCOL_H