mirror of
https://github.com/Theaninova/Arduino-IRremote.git
synced 2025-12-11 08:56:14 +00:00
sendSharp API change to make it compatible with decodeSharp
This commit is contained in:
11
IRremote.cpp
11
IRremote.cpp
@@ -1106,8 +1106,7 @@ i.e. use 0x1C10 instead of 0x0000000000001C10 which is listed in the
|
||||
linked LIRC file.
|
||||
*/
|
||||
|
||||
void IRsend::sendSharp(unsigned long data, int nbits) {
|
||||
unsigned long invertdata = data ^ SHARP_TOGGLE_MASK;
|
||||
void IRsend::sendSharpRaw(unsigned long data, int nbits) {
|
||||
enableIROut(38);
|
||||
|
||||
// Sending codes in bursts of 3 (normal, inverted, normal) makes transmission
|
||||
@@ -1132,8 +1131,12 @@ void IRsend::sendSharp(unsigned long data, int nbits) {
|
||||
}
|
||||
}
|
||||
|
||||
void IRsend::sendDISH(unsigned long data, int nbits)
|
||||
{
|
||||
// Sharp send compatible with data obtained through decodeSharp
|
||||
void IRsend::sendSharp(unsigned int address, unsigned int command) {
|
||||
sendSharpRaw((address << 10) | (command << 2) | 2, 15);
|
||||
}
|
||||
|
||||
void IRsend::sendDISH(unsigned long data, int nbits) {
|
||||
enableIROut(56);
|
||||
mark(DISH_HDR_MARK);
|
||||
space(DISH_HDR_SPACE);
|
||||
|
||||
@@ -28,7 +28,10 @@
|
||||
class decode_results {
|
||||
public:
|
||||
int decode_type; // NEC, SONY, RC5, UNKNOWN
|
||||
unsigned int panasonicAddress; // This is only used for decoding Panasonic data
|
||||
union { // This is used for decoding Panasonic and Sharp data
|
||||
unsigned int panasonicAddress;
|
||||
unsigned int sharpAddress;
|
||||
};
|
||||
unsigned long value; // Decoded value
|
||||
int bits; // Number of bits in decoded value
|
||||
volatile unsigned int *rawbuf; // Raw intervals in .5 us ticks
|
||||
@@ -101,7 +104,8 @@ public:
|
||||
void sendRC5(unsigned long data, int nbits);
|
||||
void sendRC6(unsigned long data, int nbits);
|
||||
void sendDISH(unsigned long data, int nbits);
|
||||
void sendSharp(unsigned long data, int nbits);
|
||||
void sendSharp(unsigned int address, unsigned int command);
|
||||
void sendSharpRaw(unsigned long data, int nbits);
|
||||
void sendPanasonic(unsigned int address, unsigned long data);
|
||||
void sendJVC(unsigned long data, int nbits, int repeat); // *Note instead of sending the REPEAT constant if you want the JVC repeat signal sent, send the original code value and change the repeat argument from 0 to 1. JVC protocol repeats by skipping the header NOT by sending a separate code value like NEC does.
|
||||
// private:
|
||||
|
||||
Reference in New Issue
Block a user