- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 21

Thema: Arduino IDE findet Display-Treiber nicht

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.694
    Bei mir siehts derzeit folgend aus ..
    Das sieht (nach meinem Geschmack) doch gut aus; die Linien geben ja dem Ganzen ne Ordnung. Fragt sich ob die anderen Zeichen (für Dich) besser lesbar sind.
    Ciao sagt der JoeamBerg

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.06.2019
    Beiträge
    148
    Zitat Zitat von oberallgeier Beitrag anzeigen
    Das sieht (nach meinem Geschmack) doch gut aus; die Linien geben ja dem Ganzen ne Ordnung. Fragt sich ob die anderen Zeichen (für Dich) besser lesbar sind.
    Schon Schön - aber zu wenig Zeichen. Mein Wunsch, min.6Zeilen, á20Zeichen.
    Ich würde gerne statt Zahlen, Klartexte eintragen, Bsp. "Messerwert1= " etc. Dafür muss die Schrift wesentlich kleiner (die Hälfte) sein.

    Zitat Zitat von oberallgeier Beitrag anzeigen
    Antwort: von hier.
    Wie kann ich lcd.h manuell installieren?
    Den Bsp-code versethe ich nicht. Kannst du mir DEIN Bsp. als code bitte zur Verfügung stellen?

    Hier habe ich noch eine Schöne Schrift gefunden.
    OLED, DejaVu Sans Light, Pain, 8, Adafruit GFX Font
    Diese Schriftart finde ich super schön. Wie code´et man hier? Eine Librarie mit ".h" finde ich nicht. Ist das eher ein Thema für Fortgeschrittenen?
    __________________________________________________ _
    | Sprache: C | Teensy 3.2 | Arduino 2.x | Status: EwigerAnfaenger |

  3. #3
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.694
    Schon Schön - aber zu wenig Zeichen. Mein Wunsch, min.6Zeilen, á20Zeichen.
    Ich würde gerne statt Zahlen, Klartexte eintragen, Bsp. "Messerwert1= " etc. Dafür muss die Schrift wesentlich kleiner (die Hälfte) sein..
    Na ja, das Display besteht im Prinzig aus einer BEGRENZTEN Anzahl von Pixeln. Viele der einfachen Schriften sind dann in 5x8-Pixeln dargestellt. Ich hatte das mal in C so programmiert (siehe Doppelpfeil schräg - mit Anmerkungen)

    Code:
    /* >> 
      Stand  .......\C5_Ronny-5_etc\R5M30\R5M3kalij.c
     =============================================================================== =
    ...
      *** Versionsgeschichte:
          ==================
     x23 19Sep22 1640 Aktualisierung File-Nummer
    ...
     ================================================================================ =
      *** Aufgabenstellung :    Software für RJjr / Ronny5
      Original: ..\C5_Ronny-5_etc\R5M_x01\R5M_kal80.c       x80 14Apr19 1706 Gute V...
     =============================================================================== */
    ...
    ...
    // ============================================================================== =
    //  Generierung von LCD-Sonderzeichen für DEM162xx, Satz 4 = RETURN
    // ============================================================================== =
      void LCD_SZ4(void)            // LCD-Sonderzeichen, NUR RETURN à la Pololu
     {                              //
    // - - - - - - - - - - - - - - - -
    ...
    // - - - - - - - - - - - - - - - -
    //      Pfeil auf
      uint8_t LCD_c_1[8] = {        // LCD-Character 1
            0b00000000,     //  -----
            0b00000000,     //  -----
            0b00000100,     //  --X--
            0b00001110,     //  -XXX-
            0b00010101,     //  X-X-X
            0b00000100,     //  --X--
            0b00000100,     //  --X--
            0b00000000      //  -----
            };
      lcd_generatechar(LCD_GC_CHAR1, LCD_c_1);
    // - - - - - - - - - - - - - - - -
    ...
    // - - - - - - - - - - - - - - - -
    //      Doppelpfeil   schräg linksunten<=>rechtsoben
      uint8_t LCD_c_4[8] = {        // LCD-Character 4 => Pfeil-lu-ro
            0b00000000,     //  -----      Zeile oben, Spalte (7)4..0
            0b00000111,     //  --XXX
            0b00000011,     //  ---XX
            0b00010101,     //  X-X-X
            0b00011000,     //  XX---
            0b00011100,     //  XXX--
            0b00000000,     //  -----
            0b00000000      //  -----
            };        //
      lcd_generatechar(LCD_GC_CHAR4, LCD_c_4);
    // Anmerkung für RN-frabe 14Nov24-10h22:                       <<<<<<<<!!!!!!!!                       <<<<<<<<!!!!!!!!
    //   Definition der Zeichen oben für 8x5 Pixel, daher sind die Pixel
    //    Nr 7, 6 u 5 der obigen Binärzahlen immer "0" (eigentlich egal)
    // - - - - - - - - - - - - - - - -
    //      linke Hälfte Copyright  ©
      uint8_t LCD_c_5[8] = {        // LCD-Character 5 => © linke Hälfte
            0b00000011,     //  ---XX
            0b00000100,     //  --X--
            0b00001001,     //  -X--X
            0b00001010,     //  -X-X-
            0b00001010,     //  -X-X-
            0b00001001,     //  -X--X
            0b00000100,     //  --X--
            0b00000011      //  ---XX
            };
      lcd_generatechar(LCD_GC_CHAR5, LCD_c_5);
      
    // - - - - - - - - - - - - - - - -
    //      Rechte Hälfte Copyright  ©
      uint8_t LCD_c_6[8] = {        // LCD-Character 6 => © rechte Hälfte
            0b00011000,     //  XX---
            0b00000100,     //  --X--
            0b00010010,     //  X--X-
            0b00000010,     //  ---X-
            0b00000010,     //  ---X-
            0b00010010,     //  X--X-
            0b00000100,     //  --X--
            0b00011000      //  XX---
            };
      lcd_generatechar(LCD_GC_CHAR6, LCD_c_6);
    
      return;                       //
     }              // Ende void LCD_SZ4(void)
    // === Ende
    // ============================================================================== =
    
    
    // ============================================================================== =
    // =====  ENDE    Subroutinen
    // ============================================================================== =
    Natürlich muss nun zwischen den einzelnen Zeichen ein oder zwei Pixel frei bleiben, ebenso zwischen den Zeilen. Daher ist eine VOLLE Ausnützung der Fläche an das Vielfache EINER Buchstabendefinition plus den Zwischenräumen gebunden. Und, soweit ich es beurteilen kann, ist die hier diskutierte klein(st)e Schriftgrösse eben das (untere*gg*) Ende der Fahnenstange. Natürlich kann man da variieren und evtl. nen kleinen TEil der Fläche unbeschreibbar machen - wenn das Vielfache EINES Zeichens eben nicht mehr vollständig reinginge.

    .. Wie kann ich lcd.h manuell installieren? Den Bsp-code versethe ich nicht. Kannst du mir DEIN Bsp. als code bitte zur Verfügung stellen? ..
    Mal ein Auszug der Anwendung des obigen Codes (und ein bisschen Notizen aus meinem "Labor"Handbuch zum Roboterbasteln)

    Code:
    4. Mai 2019      C4\arduino-cube mit oled (aco)  Die Software für das oled SSD1306 läuft sehr gut mit einem C-Code-Progamm.
    Quellen siehe unten, 27.April. Die Darstellung am oled geht in der schwierig lesbaren Normalgröße und in der – immer noch
    brillenpflichtigen –   Doppelgröße ziemlich gut.
      D:\D_pro-fils\compu_MC\C4\aco4\aco4_x21.c
      
      
    27. April 2019   C4\arduino-cube mit oled (aco)
    Wartezeit auf Kleinteile zum arduino-cube von Andree-HB. Es wird das Programm von Michael Köhler, siehe
    https://www.mikrocontroller.net/topic/415651#new
    aus github übernommen, siehe
      https://github.com/Sylaina/oled-display
    und leicht modifiziert.
    Code:
    // ============================================================================= =
    // ==   LCDausgabe, Folge 1
    // ============================================================================= =
      void lcd_01 (void)            // LCDausgabe "1"
     {                              //
      LCD_SZ4 ();                   // Eigen Sonderzeichen, Satz 4 mit ©           kal
      lcd_clear();                  // Vor LCD-Ausgabe Display leeren              lcd
      lcd_string( Revdat_lcd );     // #define/info01/main "R5M30 Archie xxx"
      Line2();                      // An den Anfang der 2. Zeile springen
      lcd_data( 5 ); lcd_data( 6 ); // Hier NUR "©" - in zwei Hälften
      lcd_string( Revdat_lc2 );     // #define/info01/main " JWT2020 xxxxx"
      waitms (  500);               //
      Line2();                      // An den Anfang der 2. Zeile springen
      lcd_string("                ");       // Zeile löschen
    
    //      Selbst definierte Zeichen ausgeben, Hier Zappelphilip
    //      =: SetCursor (2, 10) heisst SetCursor (x,y), x=zeile {1,2}, y=Pos {0, 15}
      LCD_SZ1 ();           // Eigene Sonderzeichen generieren, Satz 1             kal
      u8 llptr  =  1;               // Pointer auf Zeichen
      s8 llinc  =  1;
      for ( u8 ll=1; ll<16; ll++ ) // Zappelphilip-Testloop
      {                             //
        SetCursor (2, 10);
        if ( llptr <  8 ) lcd_data ( llptr );
        if ( llptr == 8 ) lcd_data ( 255 );
        if ( llptr == 8 ) waitms (  300);
        llptr  = llptr  + llinc;
        if ( llptr == 8 ) llinc = -1;
        if ( llptr == 1 ) llinc =  1;
        waitms (   50);
      }
    Ich weiß aber jetzt nicht, ob Dich das weiter bringt.
    Ciao sagt der JoeamBerg

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    56
    Beiträge
    2.210
    Wenn du externe Schriften einbinden willst, musst du die schriftart.h ins AdafruitGfx/Fonts-Verzeichnis kopieren.
    Der ist irgendwo in deinen Librarys.
    Dann kannst du sie ganz normal einbinden...
    Das ist der einfachste Weg, und hat den Vorteil, dass du sie später jederzeit wieder benutzen kannst.
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

Ähnliche Themen

  1. Programm findet Controler nicht
    Von Barung im Forum AVR Hardwarethemen
    Antworten: 1
    Letzter Beitrag: 26.04.2009, 13:04
  2. Windows findet Datei von Treibersoftware nicht
    Von Da_Vinci13 im Forum AVR Hardwarethemen
    Antworten: 2
    Letzter Beitrag: 11.02.2009, 15:09
  3. Probleme mit Lib (findet Funktionen nicht)
    Von facile im Forum Asuro
    Antworten: 4
    Letzter Beitrag: 07.02.2009, 11:34
  4. WinAvr findet Atmega32 nicht
    Von bugmenot im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 6
    Letzter Beitrag: 12.12.2008, 17:20
  5. Compiler findet Labels nicht???
    Von EDatabaseError im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 07.11.2006, 16:44

Stichworte

Berechtigungen

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

LiFePO4 Speicher Test