INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Programm läuft auf UNO aber nicht auf ATTINY85
11.12.2019, 18:40
Beitrag #41
RE: Programm läuft auf UNO aber nicht auf ATTINY85
Hallo Dieter

Ich habe die Lib gegen die von Dir verlinkte ausgetauscht, aber bei mir ändert sich leider gar nichts. Es bleibt bei exakt diesem Verhalten:

(11.12.2019 16:52)Diwo13 schrieb:  Reaktion auf einfachen Tastendruck "1" sowie "0" mehrfach und problemlos. Bei doppeltem Tastendruck auf "1" geht die LED entweder kurz an und dann aus oder direkt aus. Danach hängt der ATtiny85 und lässt sich nur noch durch wegnehmen der Versorgungsspannung zurücksetzen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.12.2019, 19:33
Beitrag #42
RE: Programm läuft auf UNO aber nicht auf ATTINY85
(11.12.2019 18:40)Diwo13 schrieb:  Hallo Dieter

Ich habe die Lib gegen die von Dir verlinkte ausgetauscht, aber bei mir ändert sich leider gar nichts. Es bleibt bei exakt diesem Verhalten:

(11.12.2019 16:52)Diwo13 schrieb:  Reaktion auf einfachen Tastendruck "1" sowie "0" mehrfach und problemlos. Bei doppeltem Tastendruck auf "1" geht die LED entweder kurz an und dann aus oder direkt aus. Danach hängt der ATtiny85 und lässt sich nur noch durch wegnehmen der Versorgungsspannung zurücksetzen.

Das Verhalten des ATtiny85 werde ich mal versuchen nachzuvollziehen.
So wie ich es verstanden habe, funktioniert das mit einem Uno/Nano einwandfrei ?
Muss nur mal schauen, wann die Zeit dafür da ist.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.12.2019, 20:31
Beitrag #43
RE: Programm läuft auf UNO aber nicht auf ATTINY85
Zitat:Das Verhalten des ATtiny85 werde ich mal versuchen nachzuvollziehen.
So wie ich es verstanden habe, funktioniert das mit einem Uno/Nano einwandfrei ?
Muss nur mal schauen, wann die Zeit dafür da ist.

Wow, das wäre super nett.

Ja auf dem NANO sowie dem UNO funktioniert es einwandfrei.

Ich habe gerade noch folgendes probiert:

Code:
#include <IRremote.h>         //IRremote by shirriff v2.2.3

int LED1 = 0;                 //ATTINY 0 / UNO 5 / Nano D9 (9)
int LED2 = 1;                 //ATTINY 1 / UNO 6 / Nano D5 (5)
int RECV_PIN = 2;             //ATTINY 2 / UNO 8 / Nano D6 (6)

IRrecv irrecv(RECV_PIN);
decode_results results;

unsigned long IRSignal;

unsigned long prevMillis = 0;
unsigned long intervall = 0;

int zufall;

void setup()
{
  //Serial.begin(9600);
  irrecv.enableIRIn();                                // Start the receiver
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(RECV_PIN, INPUT);                           // ob das Nötig ist?
  digitalWrite(LED1, HIGH);                           // LED beim Einschalten der Spannung einschalten
  digitalWrite(LED2, HIGH);                           // LED beim Einschalten der Spannung einschalten  
}

void loop() {  
  if(irrecv.decode(&results))
  {
   IRSignal = (results.value);
   irrecv.resume();                                   // Receive the next value
  }

switch (IRSignal) {
  case 547631446:                                     //einfacher Tastendruck auf "0" für AUS
      digitalWrite(LED1, LOW);
      digitalWrite(LED2, LOW);
      //Serial.println("aus");
    break;
  case 1229380719:                                    //einfacher Tastendruck auf "1" für Dauerleuchten  
      digitalWrite(LED1, HIGH);
      //digitalWrite(LED2, HIGH);
      //Serial.println("ein");
    break;
  case 2382528827:                                    //doppelter Tastendruck auf "1" für flackern    
    digitalWrite(LED2,HIGH);
    digitalWrite(LED1, LOW);
  }
}

Das funktioniert einwandfrei. Also kein blinken oder sowas, nur unterschiedlich Ausgänge setzen.
D.H. die IR-Signale werden korrekt empfangen und ausgewertet.

Und folgendes:
Code:
int LED1 = 0;                 //ATTINY 0 / UNO 5 / Nano D9 (9)
int LED2 = 1;                 //ATTINY 1 / UNO 6 / Nano D5 (5)

void setup()
{
  //Serial.begin(9600);
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(3, INPUT_PULLUP);
  pinMode(4, INPUT_PULLUP);
  digitalWrite(LED1, HIGH);                           // LED beim Einschalten der Spannung einschalten
  digitalWrite(LED2, HIGH);                           // LED beim Einschalten der Spannung einschalten  
}

void loop() {  


if (digitalRead(3) == LOW){
  analogWrite(LED1 ,50);
}
if (digitalRead(4) == LOW){
  analogWrite(LED1 ,100);
}
if ((digitalRead(3) == LOW) && (digitalRead(4) == LOW)){
  analogWrite(LED1 ,255);
}
}

Auch das funktioniert, soweit.

Bin gerade am überlegen, ob ich einfach 2 ATtinys nehme. Einer der die IR-Signale auswertet, und der andere, der dann die LEDs ansteuert.
Vielleicht probiere ich das morgen mal aus.

Für heute ist aber erstmal Schicht. Vielen Dank für Eure Unterstützung.

Gruß
Dirk
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.12.2019, 22:16
Beitrag #44
RE: Programm läuft auf UNO aber nicht auf ATTINY85
Wie genau soll das Blinken denn aussehen ?

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.12.2019, 09:37 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2019 09:38 von Diwo13.)
Beitrag #45
RE: Programm läuft auf UNO aber nicht auf ATTINY85
Guten Morgen

Das blinken soll ein unrhythmisches flackern, wie von einer Kerze darstellen.
Das funktioniert mit diesem Programmteil ganz gut:
Code:
if(millis() - prevMillis > intervall){            
      prevMillis = millis();  
      intervall = random(75, 100);        //zufällige Pausenzeit zwischen den Änderungen der Helligkeit
      zufall = random(50, 255);            //zufällige Helligkeit
      analogWrite(LED1, zufall);
      analogWrite(LED2, zufall);    
      //Serial.println("flackern");      
    }
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.12.2019, 14:53 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2019 15:13 von hotsystems.)
Beitrag #46
RE: Programm läuft auf UNO aber nicht auf ATTINY85
Das Problem ist wohl tatsächlich nicht mit einem ATtiny85 zu lösen.
Wie du schon festgestellt hast, man kann eine Led einschalten, aber ein "Blinken oder Flackern" bekommt man nicht zu Stande.

Ich habe deine "Flacker-Funktion" in eine extrag Funktion ausgelagert, auch die wird nicht aufgerufen. Im Uno läuft das problemlos.

Dann solltest du deinen Weg mit 2 ATtiny85 gehen....oder evtl. einen ATtiny84 testen.

Das liegt wohl tatsächlich an den nicht ausreichend vorhandenen Timern.

Nachtrag:
Ohne IR-Library flackert die Led auch.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.12.2019, 16:29
Beitrag #47
RE: Programm läuft auf UNO aber nicht auf ATTINY85
(12.12.2019 14:53)hotsystems schrieb:  Das Problem ist wohl tatsächlich nicht mit einem ATtiny85 zu lösen.
Wie du schon festgestellt hast, man kann eine Led einschalten, aber ein "Blinken oder Flackern" bekommt man nicht zu Stande.

Ich habe deine "Flacker-Funktion" in eine extrag Funktion ausgelagert, auch die wird nicht aufgerufen. Im Uno läuft das problemlos.

Dann solltest du deinen Weg mit 2 ATtiny85 gehen....oder evtl. einen ATtiny84 testen.

Das liegt wohl tatsächlich an den nicht ausreichend vorhandenen Timern.

Nachtrag:
Ohne IR-Library flackert die Led auch.

Da ich von den Attiny85 noch hier liegen habe, werde ich es wohl mit 2 Stück davon probieren.

Vielen Dank auf jeden Fall für Deine Bemühungen.

Gruß
Dirk
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.12.2019, 16:35 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2019 16:49 von hotsystems.)
Beitrag #48
RE: Programm läuft auf UNO aber nicht auf ATTINY85
Und ich hab noch ein wenig weiter experimentiert und festgestellt, nur das starten der Flackerfunktion per IR geht nicht. Mit einem zusätzlichen Taster kann ich die Led dann flackern lassen. Ist schon ein wenig eigenwillig.

Wenn du es mit 2 ATtiny85 aufbaust, dann steuer diese per I2C. Da habe ich mal ein Projekt mit gebaut. Den Link dazu binde ich gleich ein. Hier der Link zum IR-ATtiny85 Modul

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Programm bleibt hängen Tellen 10 178 Gestern 23:46
Letzter Beitrag: Tellen
  Library Ethernet: Nicht zu compilieren GuaAck 5 207 22.02.2021 17:31
Letzter Beitrag: Tommy56
  von delay auf millis umgestellt, klappt nur nicht. Servo Geschwindigkeit einstellen. gutschy 8 364 21.02.2021 15:22
Letzter Beitrag: gutschy
  MMega2560-Clone läßt sich nicht programmieren kpc 8 385 08.02.2021 09:50
Letzter Beitrag: hotsystems
  If-Schleife wird nicht mehr durchlaufen LK2567 2 245 05.02.2021 21:20
Letzter Beitrag: LK2567
  Tasterabfrage funktioniert nicht Moehn 4 364 05.02.2021 15:23
Letzter Beitrag: Moehn
  Kompiler beschwert sich nicht, LC-Display macht aber nicht, was es soll. generic_user492 3 293 26.01.2021 14:11
Letzter Beitrag: MicroBahner
  Arduino Uno+ Ethernetshield W5100 wird in Fritz Box nicht erkannt Justus S. 14 597 23.01.2021 13:39
Letzter Beitrag: Justus S.
  Die && Verknuepfung von zwei Schaltern auf ESP8266 will nicht. gutschy 6 382 22.01.2021 22:25
Letzter Beitrag: hotsystems
  Zähler zählt nicht wonk 14 644 21.01.2021 20:26
Letzter Beitrag: wonk

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste