- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 28

Thema: Tastenentprellung +++ Fehlerhaft

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #20
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.648
    Ich denke mal, wissen tu ich es ja nicht, dass Du diese Geschichte später woanders einsetzen willst, sprich, das muss alles ausgelagert werden, dass es später eingebunden werden kann. Da fängt man wohl mit einem Programmgerüst dafür an, würde ich jetzt so machen. Ich mache ein Beispiel. Dauert etwas ...

    Programmierst Du auch mit Arduino IDE ?

    MfG

    - - - Aktualisiert - - -

    Es gibt bei Klassen Methoden und Varibalen, die nach außen nutzbar sein sollen und damit "sichtbar" sind, also aufgerufen werden können und es gibt das Gegenteil, Methoden und Variablen, die nur innerhalb der Klasse verwendet werden und damit "privat" sind, also nicht nach außen sichtbar.

    Folgende Dateien könnten im Verzeichnis "libraries" im Arduino-Ordner gespeichert werden (dann dort Verzeichnis "MeinCode" und darin beide Dateien, *.h und *.cpp), damit sie in anderem Arduino-Code eingebunden werden können.


    Beispiel für "MeinCode.h"

    Code:
    #ifndef MeinCode_h
    
    
    #define MeinCode_h
    #include <Arduino.h>
    
    
    class MeinCode    //Klasse "MeinCode"
    {
      //Alle öffentlichen Variablen und Methoden hier bekanntgeben
      public:
        byte val1, val2;                     //Variablen
        MeinCode(unsigned long bps);  //Methode "MeinCode" - Hauptkonstruktor ... wird beim Instanziieren automatisch mit der Klasse aufgerufen
        boolean SendRequest(void);    //Methode von "MeinCode"
        
      //alle nicht öffentlichen Variablen und Methoden hier bekanntgeben
      private:
        void    ClearRBuffer(void);     //Methode
        boolean get2Chars(void);       //Methode
        int a;                                 //Variable
        unsigned long lastMillis;        //Variable
        byte tv1, tv2;                      //Variablen
    };
    
    
    #endif

    Beispiel für "MeinCode.cpp"

    Code:
    #include <Arduino.h>
    #include <MeinCode.h>
    
    //-----------------------------------------------------
    //Hauptkonstruktor
    //-----------------------------------------------------
    MeinCode::MeinCode(unsigned long bps)
    
    {
       .....
    }
    //-----------------------------------------------------
    boolean MeinCode::SendRequest(void)
    {
      ClearRBuffer();
      ....
      return ...;
    }
    //-----------------------------------------------------
    void MeinCode::ClearRBuffer(void)
    {
      ....
    }
    //-----------------------------------------------------
    boolean MeinCode::get2Chars(void)
    {
       ....
       return ....;
    }
    Eingebunden und verwendet wird das später, dann z.B. so.

    Code:
    #include <MeinCode.h>
    
    
    MeinCode meineInstanz();   //Hauptkonstruktor aufrufen, Instanz erzeugen (initialisieren von irgendwas im Code der Klasse "MeinCode")
    
    
    void setup() {
    
    
    }
    
    
    void loop() { 
    
    
        //Methoden (Funktionen) der Klasse "MeinCode" können über meine Instanz angesprochen werden
        if(meineInstanz.SendRequest()){
           . ...
        }
    
        //Variablen können wie Methoden meiner Instanz angesprochen werden
       Serial.print(meineInstanz.val1);
    
    
    }

    Für mehr Informationen siehe hier z.B. (da gibts noch zahlreiche andere Links im Netz) http://www.mintgruen.tu-berlin.de/ro...n:objektorient



    MfG
    Geändert von Moppi (18.04.2020 um 12:25 Uhr)

Ähnliche Themen

  1. ISR Fehlerhaft
    Von Zille im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 20.01.2014, 18:11
  2. Tastenentprellung-Wiki
    Von Finn91 im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 03.03.2009, 20:37
  3. Schaltung fehlerhaft
    Von Atmelbeginne im Forum PIC Controller
    Antworten: 3
    Letzter Beitrag: 12.09.2008, 16:56
  4. Uartausgabe Fehlerhaft
    Von Picht im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 19.02.2007, 16:45
  5. Tastenentprellung mit Bascom
    Von milisan im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 5
    Letzter Beitrag: 23.11.2004, 06:06

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad