Infrarot signal senden.

Hallo zusammen

ich will meinen Fernseher mit einer Infrarotdiode einschalten. Hier was ich bereits weiss:

Auf HDMI umschalten:

Encoding  : RC5
Code      : 878 (12 bits)
Timing[23]: 
     +1150, - 600     +1150, - 650     +1950, - 700     +1000, - 800
     + 950, - 800     + 900, -1750     + 850, - 900     + 900, - 900
     + 850, - 900     +1750, - 900     + 850, - 900     + 850
unsigned int  rawData[23] = {1150,600, 1150,650, 1950,700, 1000,800, 950,800, 900,1750, 850,900, 900,900, 850,900, 1750,900, 850,900, 850};  // RC5 878
unsigned int  data = 0x878;








Einschalten:

Encoding  : RC5
Code      : 84C (12 bits)
Timing[21]: 
     +1050, - 750     +1000, - 750     +1850, - 800     +1000, - 750
     +1000, - 800     + 950, -1650     +1850, - 800     +1000, -1650
     + 950, - 800     +1800, - 850     + 950
unsigned int  rawData[21] = {1050,750, 1000,750, 1850,800, 1000,750, 1000,800, 950,1650, 1850,800, 1000,1650, 950,800, 1800,850, 950};  // RC5 84C
unsigned int  data = 0x84C;

versucht habe ich schon dieses Beispiel:
(Hier sollte ja meine ID Diode alle 5 Sekunden das Signal zum Ausschalten senden)

/*
 * IRremote: IRsendDemo - demonstrates sending IR codes with IRsend
 * An IR LED must be connected to Arduino PWM pin 3.
 * Version 0.1 July, 2009
 * Copyright 2009 Ken Shirriff
 * http://arcfn.com
 */


#include <IRremote.h>

IRsend irsend;

void setup()
{
}

void loop() {
	for (int i = 0; i < 3; i++) {
		irsend.sendRC5(0x84C, 12);
		delay(40);
	}
	delay(5000); //5 second delay between each signal burst
}

Problem: Es passiert nichts am TV. (Diode blinkt, getestet mit Digicam)

Ich bin Offen für jeden Vorschlag

Setup: Arduino Uno: Pin3 (PWM) → 180 Ω → IRDiode ->GND

Danke für Eure Mithilfe

Kannst du mit einem IR-Empfänger den gesendeten Code mit dem der Fernbedienung vergleichen.

Ich vermute mal, daß Du Deine Daten hier irgendwie einfügen mußt:

void loop() {
	for (int i = 0; i < 3; i++) {
		irsend.sendRC5(0x84C, 12);
		delay(40);
	}
	delay(5000); //5 second delay between each signal burst
}

DrDiettrich:
Ich vermute mal, daß Du Deine Daten hier irgendwie einfügen mußt:

void loop() {
for (int i = 0; i < 3; i++) {
	irsend.sendRC5(0x84C, 12);
	delay(40);
}
delay(5000); //5 second delay between each signal burst

}

Da stehen sie schon drin. “0x84c”

e013307:
ich will ...

Ich habe vor einiger Zeit einen IR-Sender für meine Pentax zusammengebaut. Eine Bibliothek nutze ich nicht. Der 38 kHz-Träger wird auf die „unsanfte“ Art erzeugt. Weil ich dachte, dass möglicherweise auch andere etwas damit anfangen können, habe ich das im Netz abgelassen: Guck hier

Vielleicht regt das ja zu einer ganz anderen Lösung an :slight_smile:

Gruß

Gregor

Erfolg...
Im Prinzip funktioniert es wie ich es programmiert habe. Die LED's spielten mir einen Streich.
Ich habe andere verwendet, die laufen nun einwandfrei.

Danke für Eure Hilfe.

e013307:
Erfolg...
Im Prinzip funktioniert es wie ich es programmiert habe. Die LED's spielten mir einen Streich.
Ich habe andere verwendet, die laufen nun einwandfrei.

Danke für Eure Hilfe.

Ich vermute, du meinst dir IR LED?

Falsche Wellenlänge eventuell? Es gibt mehrere IR-Bereiche und die LEDs haben ihre maximale Intensität bei verschiedenen Wellenlängen.