Probleme mit IRremote

Wenn die Daten einmal richtig ankommen, dann hat Dein Controller bei den anderen Übertragungsversuchen wohl einen zu variablen Takt.

Klemm mal ein Scope an Deinen Takt.

Ist bei solch kleinen teilen gar nicht mal so einfach ( mache ich morgen mal).

Ok da habe ich bis morgen noch mal eine frage welche Takt Abweichung kann ich noch hinnehmen/tolerieren ? 3,5-4,2 Volt)

Nach reichlich testen scheint es wirklich was mit Zufall zu tuhen haben das es mal geht.

Danke für deine hilfe

Keine. Die Frequenz kann sich zwar minimal mit der Temperatur ändern, aber herumzappeln darf sie nicht.

So habe oszi mal dran gehängt und nein saubere und konstante 8,000Mhz.(ungewöhnlich guter wert) muss also eher was in der Software sein.

Auch mit der Strom Versorgung habe ich rumgespielt hat aber kein Einfluss.

So also habe noch mal bissel getestet mit einen Arduino nano mit 16MHZ und 5 Volt läuft es natürlich. sobald ich den nano aber auf 8 MHz OHNE externen quarz ( ist ein SMD teil so was habe ich Garde nicht da) um flashe geht es nicht mehr und es wird nur noch Müll gesendet.

Ist also doch Software massig das problem.

HILFE ?
Danke

Ein Firmware Problem. Alle Änderungen müssen in der Beschreibungsdatei des Boards stehen, die dann auch für die Compilierung ausgewählt werden muß.

ok so langsam komme ich der Sache näher.
Also mit 8 MHz bekomme ich ein Signal von ca 32-34 Khz mit 16 Mhz genau 38,6 Khz.

MEIN Problem konnte ich jetzt eingrenzten.
2 Abfragen nach einander gehen wohl hier nicht wieso auch immer.
DAS geht!

AN1 = analogRead(A7); //nur Taster 2 abfragen OK
    if (AN1 > 950)
    {
      IrSender.sendSony(aAddress, BCommand, sRepeats);
      delay(1000);
    }
}

Das geht NICHT ? hier wird Müll gesendet

if (digitalRead(8) == LOW) { // Schalter 1 und Taster 2abfrage geht nicht.
  S1 = (1);
}
else
{
  S1 = (0);
}
if (S01 == 1) { // Taster 2
  AN7 = analogRead(A7); 
  if (AN7 > 950)
  {
    IrSender.sendSony(aAddress, BCommand, sRepeats);
    delay(10);
  }
}

Jemand eine Idee ?
Ich dachte die Pins sind vielleicht anderweitig schon belegt das ist es aber wohl nicht da es egal ist welchen pin ich zum abfragen für Schalter 1 nehme.
Beim flash gibt es aber keine Fehler.IR_sender.ino (8.4 KB)

Dir ist aufgefallen, daß S1 und S01 nicht dasselbe ist?

Danke aber ja das war mein Fehler das kahm durchs rein kopieren.

Ist natürlich NICHT das problem mein Problem ist das,
so bald ich versuche einen digitalen pin abzufragen ob dieser HIGH oder LOW Level ist sendet IRremote mir nur noch Müll.
OHNE diese Pin abfragen geht es wunderbar.
Auch serielle vergabe geht,
nur halt über Pin abfrage nicht dabei spielt es KEINE rolle welchen digitalen Pin ich abfrage.
Auch ist es egal ob ich mit INPUT_PULLUP (- GND) oder nur mit INPUT. (+3,3v) Abfrage.

hmm das wird langsam verwirrend.

IR_Sender Geht nicht.
IR_sender.ino (8.8 KB)

Test Sender Geht.
test_sender.ino (7.3 KB)

A4/A5 werden auch für I2C als SCL/SDA verwendet. Das könnte Probleme geben, wenn irgendwas mit I2C angeschlossen wird.

Irgendwie ist mir unklar, welchen Chip mit so vielen analogen Eingängen Du verwendest.

I2C wird nicht verwendet.
Und es ist der Amtmega328p wie oben zusehen genau die selbe Platine nur an stelle von 16 mit 8 Mhz quarzt.

Wenn ich aber die Digitalen Pins normal als Ausgang HIGH/LOW schalte für zb LEDs geht das ohne das senden zu stören. hmm

Ich habe mal auf die schnelle bissel farbe verteilt und ein plan gemalt.
Ich hoffe man kann es erkennen.

  1. #define USE_NO_SEND_PWM kann weg für die 3.2 Version, ist jetzt default.
  2. Alle Analogeingänge (ausser A6 + A7) sind auch Digitaleingänge und können mit digitalRead eingelesen werden.
  3. Benutze bei 8 MHZ besser #define SEND_PWM_BY_TIMER, dann ist der Output Pin allerdings fest auf 3.
  4. RC5 oder RC6 ist das denkbar schlechteste Protokoll zum Testen, das funktioniert schon so nur mit Mühe.

Ok Ich gebe auf!
Es geht einfach nicht.
Selbst auf einen Fertigen nano läuft das ganze nicht Stabil.

Ich bedanke mich für die zahlreiche Hilfe.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.