Dobrý den, zkusil jsem Vaši radu, našel jsem knihovnu, která je podobná SoftwareSerial.h, jen se při vytvoření instance bere jako parametr pouze Tx pin. Tak jsem zkusil napsat jednoduchý prográmek , abych vyzkoušel, jestli to funguje:
https://forum.arduino.cc/t/using-only-t ... e/109623/2 - knihovna a kód
Kód: Vybrat vše
#include <SendOnlySoftwareSerial.h>
SendOnlySoftwareSerial mySerial(3); // Tx pin
void setup() {
mySerial.begin(115200);
}
void loop() {
mySerial.write("0xF7C03F"); // On
delay(1500);
mySerial.write("0xF740BF"); // Off
delay(1500);
mySerial.write("0xF7C03F"); // On
delay(1500);
mySerial.write("0xF700FF"); //jas+
delay(200);
mySerial.write("0xF700FF"); //jas+
delay(1500);
mySerial.write("0xF7807F"); //jas-
delay(200);
mySerial.write("0xF7807F"); //jas-
delay(1500);
mySerial.write("0xF7E01F"); //White
delay(1500);
mySerial.write("0xF720DF"); //Red
delay(1500);
mySerial.write("0xF7A05F"); //Green
delay(1500);
mySerial.write("0xF7609F"); //Blue
delay(1500);
mySerial.print("0xF7E01F"); //White, printem
delay(1500);
}
když jsem pin D3 Arduina připojil na místo modrého kabelu, tak se nic nestalo.
Zkoušel jsem ten kód pozměňovat, před hexa kód jsem napsal "0x" - našel jsem na internetu, použil jsem print() a write(), ale nic to neudělalo.
Hexa kódy jsem získal pomocí tohoto kódu (použil jsem starší verzi knihovny, aby ten kod fungoval):
Kód: Vybrat vše
#include <IRremote.h>
int RECV_PIN = 11;
int valuea = 0;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn();
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value,HEX);
valuea++;
irrecv.resume();
}
delay(100);
}
Když tak přemýšlým, mají se tam posílat hexadecimální kódy ?

nebo mám chybu v kódu ?
Děkuji za pomoc
