mirror of
https://github.com/Show-maket/IR-protocol.git
synced 2025-06-28 05:09:40 +00:00
merge from TX and RX
This commit is contained in:
46
IR_config.h
46
IR_config.h
@ -63,6 +63,12 @@ msg type:
|
||||
#define bytePerPack 3 // колличество байтов в пакете
|
||||
#define freeFrec true
|
||||
|
||||
#define carrierTune 8
|
||||
// 8 для gyverCore
|
||||
// 4~5 для arduino nano
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define bitPerByte 8U // Колличество бит в байте
|
||||
@ -86,13 +92,17 @@ typedef uint16_t crc_t;
|
||||
#define carrierFrec 38000U // частота несущей
|
||||
#define carrierPeriod (1000000U/carrierFrec) // период несущей в us
|
||||
|
||||
|
||||
#define halfPeriod ((carrierPeriod / 2) - carrierTune) //13 //8 // 14 при работе с регистрами, 14 -6 = 8 для digitalWrite()
|
||||
const auto _x_ = halfPeriod;
|
||||
|
||||
// В процессе работы значения будут отклонятся в соответствии с предыдущим битом
|
||||
#define bitActiveTakts 25U // длительность активной части бита в тактах
|
||||
#define bitPauseTakts 5U // длительность промежутков в тактах
|
||||
#define bitActiveTakts 30U // длительность активной части бита в тактах
|
||||
#define bitPauseTakts 7U // длительность промежутков в тактах
|
||||
|
||||
#define bitTakts (bitActiveTakts+bitPauseTakts*2U) // Общая длительность бита в тактах
|
||||
#define bitTime (bitTakts*carrierPeriod) // Общая длительность бита
|
||||
//const auto viewValue = bitTime;
|
||||
const auto viewValue = bitTime;
|
||||
#define tolerance 300U
|
||||
|
||||
class IR_FOX {
|
||||
@ -113,4 +123,34 @@ public:
|
||||
}
|
||||
return crc;
|
||||
}
|
||||
String printBytes(uint8_t* d ,uint8_t s , uint8_t mode = 10) {
|
||||
String str = "";
|
||||
uint8_t control = bitPerByte;
|
||||
uint8_t* _data = d;
|
||||
switch (mode) {
|
||||
case 2:
|
||||
for (size_t i = 0; i < s * 8; i++) {
|
||||
if (i == control) {
|
||||
str += " ";
|
||||
control += bitPerByte;
|
||||
}
|
||||
|
||||
str += _data[(i / 8)] >> (7 - (i % 8)) & 1;
|
||||
}
|
||||
break;
|
||||
case 10:
|
||||
for (size_t i = 0; i < s; i++) {
|
||||
str += _data[i];
|
||||
str += " ";
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
str += " ";
|
||||
return str;
|
||||
}
|
||||
};
|
||||
|
Reference in New Issue
Block a user