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
Problem mit Pin Change Interrupt in Library
10.02.2016, 23:37
Beitrag #1
Problem mit Pin Change Interrupt in Library
Hallo Leute,
vielleicht kann mir bitte jemand helfen.
Ich versuche einen Pin Change Interrupt in einer Library zu programmieren und erhalte dabei folgende Fehlermeldung:

error: cannot call member function 'void MyDCF77::dcf77_ISR()' without object MyDCF77::dcf77_ISR();

Der nachfolgende Code und die Library machen natürlich so keinen Sinn, ich habe den Code soweit reduziert, damit ich möglichst viele Fehlerquellen ausschließen kann.
Das Problem trat mit dem Einfügen der Interrupt Service Routine "ISR(PCINT2_vect)" in der DCF77.cpp-Datei auf, die mit einem "Pin Change" aufgerufen wird und von wo aus dann in die Funktion "dcf77_ISR()" verzweigt werden sollte.


Code:
#include <MyDCF77.h>
void setup() {
}
void loop() {
}

Code:
//MyDCF77.h

#ifndef MyDCF77_h
#define MyDCF77_h
#include "Arduino.h"
class MyDCF77
{
  public:
    MyDCF77();
    void init(byte signalPin, byte ledPin);
    void dcf77_ISR();
  private:
    byte _signalPin;
    byte _ledPin;
    volatile byte IRQAltPinWert;
};
#endif

Code:
//MyDCF77.cpp

#include "Arduino.h"
#include "MyDCF77.h"

MyDCF77::MyDCF77()
{
}
//***************************************************************
void MyDCF77::init(byte signalPin, byte ledPin)
{
  _signalPin = signalPin;
  _ledPin = ledPin;
}
//***************************************************************
void MyDCF77::dcf77_ISR()
{
  byte IRQPinWert = 1;
  IRQAltPinWert = IRQPinWert;
}
//***************************************************************
ISR(PCINT2_vect)
{
  MyDCF77::dcf77_ISR();
}

Vielleicht kennt jemand das Problem und weiß, was ich falsch mache.
Danke!!
Retian
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  LED-Bilnker: Wechsel durch Interrupt djculture2001 10 349 04.10.2017 19:23
Letzter Beitrag: djculture2001
  Interrupt und I2C gibt das Probleme? Badger1875 5 199 03.10.2017 23:26
Letzter Beitrag: GuaAck
  NeoPixels: Sketch will nicht - Problem mit delay? Zabsi 5 329 22.08.2017 15:17
Letzter Beitrag: Tommy56
  Problem mit LSM 303 Snörb 1 241 22.08.2017 14:16
Letzter Beitrag: Snörb
  Problem mit externem Interrupt manfred474 13 950 13.08.2017 08:54
Letzter Beitrag: MicroBahner
  Ethernet2 Library SSL ArduM0 1 307 10.08.2017 01:18
Letzter Beitrag: rkuehle
  Problem mit Klassen GuaAck 4 374 09.08.2017 09:28
Letzter Beitrag: MicroBahner
  Taster an Interrupt - Prellen geschickter vermeiden als millis() zu prüfen? Flap 19 1.987 04.08.2017 08:10
Letzter Beitrag: Binary1
Question Problem mit TFT Sam217 8 692 20.07.2017 21:51
Letzter Beitrag: hotsystems
  Problem FastLED fliege_m 3 457 16.07.2017 16:56
Letzter Beitrag: Tommy56

Gehe zu:


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