Arduino Library für XV-Display Displaymodule

Dirk

Administrator
Teammitglied
28. Jan. 2007
4.328
166
63
Mittelhessen, Giessen
Sprachen
  1. ANSI C
  2. C++
  3. C#
  4. Java
  5. Kotlin
  6. Pascal
  7. Assembler
  8. PHP
Arduino Library für XV-Display Displaymodule

Logo_XVDisplay_Library_Arduino.jpg



Ich habe eine Arduino-Library für die Displaymodul-Familien XV-TFT2428T, XV-TFT50D und XV-TFT60D von XV-Display.de geschrieben. Mit der Library könnt ihr einfach und schnell ein Displaymodul aus einer der drei Familien in euer Arduino-Projekt einbinden.

Die Schnittstelle aller Displaymodule ist übrigens kompatibel, auch der Befehlssatz ist bei allen Modulen gleich. Ihr könnt also einfach Displays gegeneinander austauschen. Beachten müsst ihr lediglich eine ggf. unterschiedliche Auflösung und bei größeren Displays eine höhere Stromaufnahme.

Entwicklungsumgebung


Es eignen sich zum Beispiel folgende Boards:





Library verwenden
In das Library-Verzeichnis eurer Arduino-Installation kopiert ihr einfach das im Download enthaltene Verzeichnis XVDisplay_Library mit Inhalt. Wenn ihr die Arduino IDE startet, steht die Library zur Verfügung. In eurem Projekt bindet ihr die Library ein und erstellt eine Instanz der Klasse "xvdisplay".

Code:
// Include library
#include <Config.h>
#include <XVDisplay_Library.h>

// Declare an instance of xvdisplay class
xvdisplay display;

Danach könnt ihr die Display-Funktionen folgendermaßen aufrufen:
display.DrawRect_PenColor(20, 50, 220, 100);

Konfiguration

Ihr müsst lediglich wenige grundsätzliche Einstellungen vornehmen. Wichtig sind hier die Angaben für Touchpanel und Schnittstelle. Als Schnittstelle habe ich SoftwareSPI realisiert, somit seid ihr bei der Wahl der IO-Pins ziemlich frei.
Die Einstellungen findet ihr in Config.h.
Code:
#define DISPLAY_MODULE_WIDTH  240
#define DISPLAY_MODULE_HEIGHT 320

#define DISPLAY_USE_TOUCHPANEL true  // true or false
        
#define DISPLAY_SPI_MISO         11
#define DISPLAY_SPI_MOSI         12
#define DISPLAY_SPI_SCK          7
#define DISPLAY_SIGNAL_BUSY      8
#define DISPLAY_SIGNAL_CS        9
#define DISPLAY_SIGNAL_TINT      10  // only assigned if touchpanel enabled

Connect%20display.jpg
Dieses Bild zeigt die Anschlußbelegung bei dem Board Arduino UNO, wenn ihr meine obigen Einstellungen in Config.h übernehmt. Ihr könnt natürlich auch andere IO-Pins nutzen.

Die Arduino MEGA Boards sind ja zum UNO kompatibel, hier sieht der Anschluß dementsprechend gleich aus.

Die beiden Itead Studio Boards ITEADUINO und ITEADUINO MEGA 2560 sind im Bereich Spannungsversorgung verglichen mit den originalen Arduino Boards verbessert, sie besitzen anstelle eines Linearreglers ein DC-DC power supply und arbeiten wahlweise mit VCC 5,0V oder 3,3V.


Als Adapter vom ZIF-Kabel der Displayseite auf das Rastermaß 2,54mm Stiftleisten eignet sich zum Beispiel
FPC-ADAP10-TC aus dem mikrocontroller-praxis.de Shop.




Demo-Projekt
Im Download ist ebenfalls ein Demo-Projekt enthalten, welches alle Funktionen der Library nutzt. Das Projekt ist für ein Display mit der Auflösung 240x320 und mit Touchpanel optimiert und soll die Anwendung der Funktionen zeigen. Damit es etwas übersichtlicher wird, habe ich die Software in kleinere Bereiche aufgeteilt:

Code:
    // Display a welcome screen
    Demo_WelcomeScreen();
    
    // Set display mode portrait / landscape
    Demo_DisplayMode();
    
    // Set pen and brush color
    Demo_SetColor();
        
    // Graphic functions
    Demo_Graphic_FillScreen();
    Demo_Graphic_DrawRectangle();
    Demo_Graphic_DrawLine();
    Demo_Graphic_DrawPixel();
    Demo_Graphic_DrawCircle();
                
    // Display text
    Demo_DisplayText();
    
    // Display numbers
    Demo_DisplayNumbers();
    
    // Display some images stored in user flash memory
    Demo_UserFlashMemory_Image();
    
    // Display some images stored on micro sd card
    Demo_MicroSDCard_Image();
    
    // Make use of embedded font
    Demo_EmbeddedFont();
    
    // Make use of font stored in user flash memory 
    Demo_UserFlashMemory_Font();
        
    // Demonstration using touchpanel functions
    Demo_Touchpanel();
    
    // Display raw rgb data
    Demo_DrawImageData();

Einige Funktionen nutzen das UserFlashMemory (Fonts + Bilder) und die MicroSDCard (Bilder). Damit auch diese Funktionen demonstriert werden können, müsst ihr zunächst UserFlashMemory programmieren und Bilddateien auf eine MicroSDCard kopieren. So geht ihr vor:

  1. UserFlashMemory programmieren: Kopiert die im Download enthaltene Resourcen-Datei flash.xvc auf die MicroSDCard (FAT32). Die MicroSDCard legt ihr in den Kartenhalter des Displays ein und aktiviert die Betriebsspannung. Das Display programmiert nun das UserFlashMemory. Nach erfolgreicher Programmierung, deaktiviert ihr die Betriebsspannung und entnehmt die MicroSDCard. (wichtig: flash.xvc von der MicroSDCard löschen, wenn ihr diese für Bilder verwendet).
  2. Im Download sind auch einige Beispielbilder (Windows Bitmap 24bit) enthalten. Diese kopiert ihr auf die MicroSDCard (FAT32). Die MicroSDCard legt ihr bei deaktivierter Betriebsspannung in den Kartenhalter des Displaymoduls ein.

Beispielbilder und flash.xvc befinden sich im Verzeichnis Resources des Downloads.


Übersicht der Funktionen

Display Mode
Code:
uint8_t SetDisplayMode(uint8_t mode);
//parameter: dmPortrait (display always starts in this mode)
//           dmLandscape

Set Color
Code:
uint8_t SetPenColor(uint8_t r, uint8_t g, uint8_t b);
uint8_t SetBrushColor(uint8_t r, uint8_t g, uint8_t b);
uint8_t SetPenColor_Index(uint32_t color);  // 00 bb gg rr
uint8_t SetBrushColor_Index(uint32_t color); // 00 bb gg rr

Graphic Fill Screen
Code:
uint8_t FillScreen_BrushColor(void);
uint8_t FillScreen_PenColor(void);
uint8_t FillScreen_RGBColor(uint8_t r, uint8_t g, uint8_t b);

Graphic Draw Rectangle
Code:
uint8_t DrawRect_PenColor(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2);
uint8_t DrawRect_PenColorFill(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2);
uint8_t DrawRect_BrushColor(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2);
uint8_t DrawRect_BrushColorFill(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2);
uint8_t DrawRect_RGBColor(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint8_t r, uint8_t g, uint8_t b);
uint8_t DrawRect_RGBColorFill(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint8_t r, uint8_t g, uint8_t b);

Graphic Draw Line
Code:
uint8_t MoveTo(uint16_t x, uint16_t y);
uint8_t LineTo_PenColor(uint16_t x, uint16_t y);
uint8_t LineTo_BrushColor(uint16_t x, uint16_t y);
uint8_t LineTo_RGBColor(uint16_t x, uint16_t y, uint8_t r, uint8_t g, uint8_t b);

Graphic Draw Pixel
Code:
uint8_t DrawPixel_PenColor(uint16_t x, uint16_t y);
uint8_t DrawPixel_BrushColor(uint16_t x, uint16_t y);
uint8_t DrawPixel_RGBColor(uint16_t x, uint16_t y, uint8_t r, uint8_t g, uint8_t b);

Graphic Draw Circle
Code:
uint8_t DrawCircle_PenColor(uint16_t x, uint16_t y, uint8_t radius);
uint8_t DrawCircle_BrushColor(uint16_t x, uint16_t y, uint8_t radius);
uint8_t DrawCircle_RGBColor(uint16_t x, uint16_t y, uint8_t radius, uint8_t r, uint8_t g, uint8_t b);

Display Text
Code:
uint8_t DisplayText(uint16_t x, uint16_t y, unsigned char *s);
uint8_t DisplayText_F(uint16_t x, uint16_t y, const char *s);

Display Numbers
Code:
uint8_t DisplayDecimal8(uint16_t x, uint16_t y, uint8_t value);
uint8_t DisplayDecimal16(uint16_t x, uint16_t y, uint16_t value);
uint8_t DisplayDecimal32(uint16_t x, uint16_t y, uint32_t value);
uint8_t DisplayDecimalSigned8(uint16_t x, uint16_t y, uint8_t value);
uint8_t DisplayDecimalSigned16(uint16_t x, uint16_t y, uint16_t value);
uint8_t DisplayDecimalSigned32(uint16_t x, uint16_t y, uint32_t value);
uint8_t DisplayHex8(uint16_t x, uint16_t y, uint8_t value);
uint8_t DisplayHex16(uint16_t x, uint16_t y, uint16_t value);
uint8_t DisplayHex32(uint16_t x, uint16_t y, uint32_t value);
uint8_t DisplayHex64(uint16_t x, uint16_t y, uint64_t value);
uint8_t DisplayBinary8(uint16_t x, uint16_t y, uint8_t value);
uint8_t DisplayBinary16(uint16_t x, uint16_t y, uint16_t value);
  
uint8_t NumericalConfig(uint8_t config);
//parameter config (bit mask):
//NCONF_NoPlus      : display no plus (DisplayDecimalSigned)
//NCONF_NoZero      : display no leading zero (DisplayDecimal, DisplayDecimalSigned)
//NCONF_LeftAdjust  : display left adjust (DisplayDecimal, DisplayDecimalSigned)

User Flash Memory
Code:
uint8_t DisplayImagePackageImage(uint16_t x, uint16_t y, uint8_t packageindex, uint16_t itemindex);
// parameter: x, y, packageindex (0..63), itemindex (0..65535)

MicroSDCard
Code:
uint8_t DisplaySDCardImage(uint16_t x, uint16_t y, unsigned char *filename);
//parameter: x, y, *filename (points to string in sram)
uint8_t DisplaySDCardImage_F(uint16_t x, uint16_t y, const char *filename);
//parameter: x, y, *filename (points to string in flash memory)

Draw Image Data
Code:
uint8_t DrawImage_Begin(uint16_t x, uint16_t y, uint16_t width, uint16_t height);
void DrawImage_WritePixel(uint8_t r, uint8_t g, uint8_t b);
void DrawImage_Stop(void);

Touchpanel
Code:
uint8_t TouchPanel_SetConfig(uint8_t config)
//parameter: TOUCH_EVENT_CONT | TOUCH_EVENT_DOWN | TOUCH_EVENT_UP 
//return: dsSuccess, dsTimeout, dsBusy (display status)
    
uint8_t TouchPanel_ReadEvent(void)
//return: dsSuccess, dsTimeout, dsBusy (display status)  
//        Display.Events  
               
uint8_t TouchPanel_ReadCont(void)
//return: dsSuccess, dsTimeout, dsBusy (display status) 
//        Display.TouchX, Display.TouchY
              
uint8_t TouchPanel_ReadDown(void)
//return: dsSuccess, dsTimeout, dsBusy (display status)
//        Display.TouchDownX, Display.TouchDownY
            
uint8_t TouchPanel_ReadUp(void)
//return: dsSuccess, dsTimeout, dsBusy (display status)
//        Display.TouchUpX, Display.TouchUpY



AVR-PRAXiS-de_XVDisplay_Arduino.zip
Arduino Library for the display module families TFT2428T, TFT50D and TFT60D from XV-Display.de.

Revision 1



Links
Forum: Mikrocontroller-Praxis.de Online-Shop
Neu: Erweiterung der Displaymodul-Familie XV-TFT60D von XV-Display
Neu im Onlineshop: Intelligentes TFT Displaymodul XV-TFT60D 5,0 inch 800x480 Pixel
Neu: Displaymodul-Familie XV-TFT60D von XV-Display
Onlineshop: FPC-ADAP10-TC
 
Für die XV-Display-Libraries für Arduino und Atmel Studio 6 habe ich auch eine Demonstrationssoftware geschrieben, die euch den Umgang mit den Funktionen der Libraries zeigt (die Demosoftware ist ebenfalls im Zip-Verzeichnis enthalten).

Das folgende Video zeigt den Ablauf der Demosoftware

  • Set intensity of backlight
  • Set display mode portrait / landscape
  • Set pen and brush color
  • Graphic fill screen
  • Graphic draw rectangle
  • Graphic draw line / line to
  • Graphic draw pixel
  • Graphic draw circle
  • Display text
  • Display numbers
  • Display some images stored in user flash memory
  • Display some images stored on micro sd card
  • Make use of embedded font
  • Make use of font stored in user flash memory
  • Using touchpanel functions
  • Display raw rgb data


[video=youtube;oQPaV_cg7JU]http://www.youtube.com/watch?v=oQPaV_cg7JU[/video]
 
Arduino Library für XV-Display Displaymodule

/snip FQ
Hallo Dirk und alle anderen,

leider ist die Arduino-Fraktion hier ja eher unterbesetzt, deswegen bin ich umso erfreuter, diese Lib zu finden. Ich habe dazu einige Fragen, und hoffe diese hier beantwortet zu bekommen.

Mir geht es um das OLED XV-OLED302-SPI, auf das ich ein Auge geworfen habe. Die Dokumentation des OLEDs ist leider etwas dürftig oder ich bin zu doof, diese zu finden.

Meine Fragen:
  • Ist diese Lib mit dem OLED kompatibel?
  • Bietet der Controller die Möglichkeit, "Hardwarescrolling" durchzuführen, also per einzelnem Befehl und nicht Bild für Bild/Zeile für Zeile?
  • Funktioniert der Portrait und (vor allem) Landscape-Modus? Gibt es in diesem Zusammenhang Erfahrungen mit der Scrollrichtung (falls vorhanden)?
  • Was benötige ich wirklich, um dieses Display mit einem Arduino zu betreiben? Laut Shop wird für die LCDs ein ZIF-Connector samt zugehörigen Kabel empfohlen, vermutlich wird das auch für das OLED benötigt!? Ist das schon alles? Laut Datenblatt ist ein Betrieb bis 5,5V möglich, Datenleitung laufen dann mit Vcc, also direkt mit digitalWrite vom Arduino (Uno). Ist das korrekt? Ich benötigt also keine Levelkonverter?
  • Hat schon irgendwer Erfahrung mit diesem OLED und einem Arduino gemacht? Ich wäre wirklich sehr dankbar, weil ich mir bereits ein OLED mit SSD1325 (vermutlich) zerschossen habe und keine weitere herben Verluste leisten kann. OLEDs sind einfach so sch***teuer...

Danke schon mal im Voraus!

Was ich vorhabe: Ich möchte einen Wecker bauen. Mittlerweile bin ich mit dem Rest der Hardware am Arduino (beleuchtete Taster, DCF, RTC, FM-Radio und Audio) eigentlich zumindest im Experimentierstadium fertig. Ich verzweifele allerdings beim Display. LCD haben imo im absoluten Dunkeln Probleme mit Restlicht. Schwarz ist halt nicht schwarz sondern eher unregelmäßiges milchiges Grau und das abgestrahlte Restlicht stellt eine kleine Zimmerbeleuchtung dar, die ich nicht will. Die billigen LCDs/TFTs haben zudem noch arge Probleme mit der Blickwinkelstabilität. Dies scheint bei den XV-Displays ja kein Problem zu sein, was man auf Bildern/in Videos so sehen kann. Hat schon jemand Erfahrung mit den LCDs im absoluten Dunkeln? Wie sieht' s mit der regelbaren Hintergrundbeleuchtung und dem Restlicht aus?

Gruß

Schleusser

PS: Ein Top-Beitrag, danke dafür! Ich wünsche mir, dass das Internet im Allgemeinen mehr so ist wie das hier. Utopia...

PPS: Ich habe in den Forenregeln keine Informationen zum Verhalten bei Blogeinträgen gefunden. Hoffentlich kann ich meine Frage hier einfach so stellen, ansonsten bitte ich einen Mod/Admin, den Beitrag zu verschieben oder ggf. mit Hinweis zu löschen.

Ui, ist ja ziemlich lang geworden...
 
Hallo Schleusser,

das OLED ist ja inzwischen schon ein bisschen älter. Meine Library für Arduino unterstützt dieses nicht, da der Befehlssatz anders ist, als bei den Familien TFT2428T und TFT60D (demnächst auch TFT50D verfügbar).

Harwarescrolling wird bei den Displays nicht unterstützt, beim OLED ist nur Portrait Modus möglich, bei allen anderen auch Landscape.

Die Displays der Familie TFT2428T sind für deine Anwendung wahrscheinlich gut geeignet, diese haben durch die IPS-Technik (in-plane switching) einen sehr großen Blickwinkel, dieser ist konstant nach allen Richtungen. Dann kommt noch der sehr hohe Kontrast hinzu, die Helligkeit ist auch sehr hoch, so dass die Darstellung brillant ist. Ich denke mal, das sieht man schon an den Bildern :) Das Backlight ist dimmbar (linear PWM in 256 Schritten).


Du kannst eigentlich mit der selben Software alle Displays der Familien TFT2428T, TFT60D und TFT50D ansteuern, da sowohl der Befehlssatz, wie auch die Schnittstelle kompatibel ist. Die Displaygrößen reichen von 2,4" bis 7".

Am Arduino UNO, Arduino Mega und Iteaduino Mega habe ich bis 4,3" (TFT60D) verwendet, bei den größeren ist mehr Strom wegen dem größeren Backlight notwendig, das wollte ich dann dem Linarregler auf den Arduino Boards nicht zumuten ;) Man kann aber auch zB. das Iteaduino MEGA verwendenden, das hat einen Schaltregler. TFT2428T laufen also direkt mit Arduino Uno und Mega.

In der Arduino Library habe ich SoftwareSPI realisiert, du brauchst dich selber nicht um Übertragung oder Protokoll kümmern. Das Video zeigt einfach den Ablauf der Beispielsoftware. Schau dir einfach mal die Demosoftware an, dann siehst du welche Befehle unterstützt werden und wie man diese anwendet.

Du benötigst 10 polige Flachbandleitung und den Adapter ADAP10, beides findest du unter "empfohlenes Zubehör" im Shop. Die Leitungen sollten möglichst kurz sein, ggf. empfehle ich in den Leitungen CS\ und SCK jeweils ein RC Glied (1kOhm in Reihe, 22pF nach GND auf der Displayseite). Es ist gerade eine neue ADAP10 Version in der Fertigung, die diese Eigenschaften hat, diese ist auch einreihig, so dass es auch auf Breadboard passt. Die Platine hat auch den Aufdruck der Signalnamen, der Adapter wird in 2 Wochen verfügbar sein.

Mehr wird zum Anschluß nicht benötigt.

TFT2428T und TFT50D arbeiten mit 3,3V bis 5,0V Systemen.
TFT60D arbeitet mit 5,0V Systemen und ist via Lötjumper umstellbar auf 3,3V Systeme.


Wie sich die TFT2428T gedimmt in absoluter Dunkelheit verhalten, weiß ich im Moment gar nicht, das könnte ich aber mal ausprobieren, allerdings ist es ja eine subjektive Einschätzung :)

PS: Ein Top-Beitrag, danke dafür! Ich wünsche mir, dass das Internet im Allgemeinen mehr so ist wie das hier. Utopia...

Dankeschön für die positive Rückmeldung :)

PPS: Ich habe in den Forenregeln keine Informationen zum Verhalten bei Blogeinträgen gefunden. Hoffentlich kann ich meine Frage hier einfach so stellen, ansonsten bitte ich einen Mod/Admin, den Beitrag zu verschieben oder ggf. mit Hinweis zu löschen.
Der Beitrag passt hier schon.

Dirk :ciao:
 
Hallo Schleusser,

das OLED ist ja inzwischen schon ein bisschen älter. Meine Library für Arduino unterstützt dieses nicht, da der Befehlssatz anders ist, als bei den Familien TFT2428T und TFT60D (demnächst auch TFT50D verfügbar).

Harwarescrolling wird bei den Displays nicht unterstützt, beim OLED ist nur Portrait Modus möglich, bei allen anderen auch Landscape.

Die Displays der Familie TFT2428T sind für deine Anwendung wahrscheinlich gut geeignet, diese haben durch die IPS-Technik (in-plane switching) einen sehr großen Blickwinkel, dieser ist konstant nach allen Richtungen. Dann kommt noch der sehr hohe Kontrast hinzu, die Helligkeit ist auch sehr hoch, so dass die Darstellung brillant ist. Ich denke mal, das sieht man schon an den Bildern :) Das Backlight ist dimmbar (linear PWM in 256 Schritten).

<SNIP FQ>
Hallo Dirk,

Danke für die schnelle und kompetente Antwort. Leider fällt diese für mich ja (zumindest teilweise) nicht so positiv aus. Irgendwie schade, dass das Thema OLED in diesem Bereich (intelligente Displays, µC) auf eher weniger Gegenliebe stößt, haben diese doch unbestreitbare Vorteile (und sicherlich auch reichlich Nachteile).

Nun ja, es ist wie es ist, schon aufgrund des mangelnden Landscape-Modus ist das OLED für mich gestorben, ich brauche für meinen Anwendung möglichst viel Darstellungsbreite.

Allerdings machen mir Deine Aussagen bzgl. des TFTs Mut, es damit mal zu probieren. Das hier IPS-Panels verbaut werden sehe ich sehr positiv, auch wenn diese das Problem Backlight-Bleeding nicht beheben. Aber die Darstellungsqualität im Allgemeinen scheint mir so hoch zu sein, dass ich mit dem Restlich ggf. leben kann. Auf der anderen Seite der Helligkeitsskala bietet das Display ja bis zu 350Mcd, das sollte auch bei deftiger optischer Filterung (graues Plexi?) noch genügend Kontrast bereitstellen.

Für mich ist halt das Verhalten bei absoluter Dunkelheit (weitere Raumbeleuchtung maximal durch einen zweiten Wecker) das Wichtigste, Farbtreue z.B. ist mir ziemlich egal. Wenn das Backlight per PWM ohne Flimmern soweit runter geregelt werden kann, dass in Dunkelheit quasi kein Grau mehr auf dem Bildschirm zu sehen ist reicht mir das ja. Wenn es dunkel ist muss die aktive Fläche (also die dargestellten Zahlen des Weckers) ja auch nicht mehr so hell sein.

Ich wäre dir oder jedem anderen sehr dankbar, wenn sie/er mal die Rolladen runter lässt und bei minimalem Backlight mal einen Blick riskiert. Eine sujektive Meinung reicht mir da völlig, ich denke das kann auch ein absoluter Laie sehen und einigermassen bewerten.

Hier ist mal ein Mockup, wie der Displayinhalt ungefähr aussehen würde: Mockup320240FullColor.jpg

Das würde, wenn das Schwarz nur dunkelgrau wäre schon realtiv bescheiden aussehen...

Bzgl. des Adapters habe ich den Verdacht, dass das Display dann nicht mehr so günstig zu bekommen ist... ;) Das Glück hat mich bei dem ganzen Projekt eh verlassen, ich bin vorsichtig geworden :eek: Die aktuellen Paar'n'sechzig Euro sind schon sehr verlockend, auch wenn ich aktuell eigentlich dafür sparen wollte; als Familienvater unterliegt man da ja gewissen Zwängen...

Gruß

Schleusser
 

Anhänge

  • Mockup320240FullColor.bmp
    76,1 KB · Aufrufe: 7
Hallo Schleusser,
Für mich ist halt das Verhalten bei absoluter Dunkelheit (weitere Raumbeleuchtung maximal durch einen zweiten Wecker) das Wichtigste, Farbtreue z.B. ist mir ziemlich egal. Wenn das Backlight per PWM ohne Flimmern soweit runter geregelt werden kann, dass in Dunkelheit quasi kein Grau mehr auf dem Bildschirm zu sehen ist reicht mir das ja. Wenn es dunkel ist muss die aktive Fläche (also die dargestellten Zahlen des Weckers) ja auch nicht mehr so hell sein.

Ich wäre dir oder jedem anderen sehr dankbar, wenn sie/er mal die Rolladen runter lässt und bei minimalem Backlight mal einen Blick riskiert. Eine sujektive Meinung reicht mir da völlig, ich denke das kann auch ein absoluter Laie sehen und einigermassen bewerten.

ich kann dies bei Gelegenheit prüfen und versuchen es einzuschätzen.

Noch ein Hinweis zu den großen Ziffern in deinem Design:
Fonts für kleine Schrift sind bereits integriert. Für große Schriften kannst du mit Hilfe eines Windows-Programms aus TrueType-Fonts sog. Fontpackages erzeugen, die du dann über eine MicroSD Karte (FAT32) in das UserFlashMemory programmierst. Die Fonts werden antialiased dargestellt und sehen dann entsprechend gut aus. :cool:

Bzgl. des Adapters habe ich den Verdacht, dass das Display dann nicht mehr so günstig zu bekommen ist... ;) Das Glück hat mich bei dem ganzen Projekt eh verlassen, ich bin vorsichtig geworden :eek: Die aktuellen Paar'n'sechzig Euro sind schon sehr verlockend, auch wenn ich aktuell eigentlich dafür sparen wollte; als Familienvater unterliegt man da ja gewissen Zwängen...

Ich denke, dass sich am Preis nicht viel ändern wird. :)

Dirk :ciao:
 
Moin,

das mit den Fonts hatte ich schon gesehen und bin wirklich gespannt, wie es in echt aussieht. Für mich ein echter Vorteil. Auch der Umgang via SD-Card für Updates und Bestückung find ich 'ne gute Sache, kein extra Kabel zum Apothekenpreis wie bei Konkurrenzprodukten.

Apropos, auch wenns reichlich OT ist: Die Displays sind also Arduino-Benutzer nur sehr schwer zu finden, da würde ein bisschen "agressivere Werbung" in Richtung Arduino imo richtig was bringen. Denn zumindest in DE gibts solche Produkte für Endverbraucher sonst nicht zu kaufen. Nur ranzige Character-LCDs, über deren Qualität braucht man nicht zu diskutieren. Und Arduinonutzer gibts (wenn ich das richtig mitbekomme) reichlich. Mit deiner lib gibts auf einmal hunderttausende potentielle Kunden...

Ich werde dann wohl mal auf den neuen Adapter warten, auch wenn ich den Anschluss dann eh per Stiftleiste auf Lochraster anbringe und RC dann nicht so das Problem wäre. Du kannst ja dann bei Gelegenheit mal schauen, wie das Display im Dunkeln aussieht. Bleibt ja dann genug Zeit ;)

Danke für Alles!

Gruß
Schleusser
 
Hallo,
Apropos, auch wenns reichlich OT ist: Die Displays sind also Arduino-Benutzer nur sehr schwer zu finden, da würde ein bisschen "agressivere Werbung" in Richtung Arduino imo richtig was bringen. Denn zumindest in DE gibts solche Produkte für Endverbraucher sonst nicht zu kaufen. Nur ranzige Character-LCDs, über deren Qualität braucht man nicht zu diskutieren. Und Arduinonutzer gibts (wenn ich das richtig mitbekomme) reichlich. Mit deiner lib gibts auf einmal hunderttausende potentielle Kunden...

ich weiß, dass die Displays von Arduino Anwendern noch nicht so gut gefunden werden. Meine Lib habe ich erst seit relativ kurzer Zeit fertig ... das wird schon noch ;)

Du kannst ja dann bei Gelegenheit mal schauen, wie das Display im Dunkeln aussieht. Bleibt ja dann genug Zeit ;)

Ja, das mache ich noch :)

Dirk :ciao:
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)