43-LCD_EADOG-Library (STM32F4)

Mit dieser Library können verschiedene Grafik-Displays der EA-DOG-Serie (von Electronic Assembly) benutzt werden.

Der Einfachheit halber habe ich nur eine einzige Library geschrieben und man muss im H-File sein Display per Define auswählen.

Im Moment werden 3 Displays unterstützt :
Chip : ST7565 [Display = EA-DOGM_132_5 mit 132 x 32 Pixel]
Chip : UC1610 [Display = EA-DOG_160-7 mit 160 x 104 Pixel]
Chip : UC1701 [Display = EA-DOGS_102_6 mit 102 x 64 Pixel]

Ein 8×5-Pixel-Font ist auch dabei, um Texte ausgeben zu können.

Die Displays werden im 4-Wire-SPI-Mode betrieben und aus dem Grund wird noch eine SPI-Library benötigt und im Mode-3 initialisiert.

Die GPIO-Pins für ChipSelect und CD-Pin können im H-File frei eingestellt werden.

Beispielbilder :

Benutzte Pins :

1
2
3
4
SCK an PB13
SDA an PB15
ChipSelect an PA8
CD an PB2

Voraussetzungen :

1
2
Benutzte Module der CooCox-IDE : GPIO
Benutzte Librarys : STM32_UB_SPI2

Funktionen :

1
2
3
4
5
ErrorStatus UB_EADOG_Init(void);                                     // zum Init vom Display
void UB_EADOG_Clear(void);                                           // zum löschen vom Display
void UB_EADOG_DrawByte(uint8_t xpos, uint8_t ypage, uint8_t wert);   // um ein einzelnes Byte zu zeichnen
void UB_EADOG_DrawChar(uint8_t xpos, uint8_t ypage, uint8_t ascii);  // zum ausgeben von einem Zeichen
void UB_EADOG_DrawString(uint8_t xpos, uint8_t ypage, char *ptr);    // zum ausgeben von einem String

Beispiel :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//--------------------------------------------------------------
// File     : main.c
// Datum    : 29.05.2013
// Version  : 1.0
// Autor    : UB
// EMail    : mc-4u(@)t-online.de
// Web      : www.mikrocontroller-4u.de
// CPU      : STM32F4
// IDE      : CooCox CoIDE 1.7.0
// Module   : CMSIS_BOOT, M4_CMSIS_CORE
// Funktion : Demo der LCD EADOG-Library
// Hinweis  : Diese zwei Files muessen auf 8MHz stehen
//              "cmsis_boot/stm32f4xx.h"
//              "cmsis_boot/system_stm32f4xx.c"
//--------------------------------------------------------------
 
#include "main.h"
#include "stm32_ub_eadog.h"
 
int main(void)
{
  SystemInit(); // Quarz Einstellungen aktivieren
 
  // init vom EADOG Display
  UB_EADOG_Init();
 
  // löschen vom Display
  UB_EADOG_Clear();
 
  // zwei Zeilen Text schreiben
  UB_EADOG_DrawString(0,0,"Hallo");
  UB_EADOG_DrawString(0,1,"Leute");
 
  while(1)
  {
 
  }
}

Hier die Library zum Download :

ub_stm32f4_lcd_eadog_v100

Hier der komplette CooCox-Projektordner zum Download :

Demo_43_LCD_EADOG

5 Antworten auf 43-LCD_EADOG-Library (STM32F4)

  1. Cortex-Einsteiger sagt:

    Demo getestet mit UC1701:
    define ändern -> compilieren -> flashen -> läuft :)
    einfacher geht nicht mehr, danke!

  2. µC Einsteiger sagt:

    hallo,

    ich habe hier ein STM32F4-Discovery und ein EA DOGXL160x104 und weiss leider nicht so recht, wie ich dies in betrieb nehmen kann. welche pins des display müssen wie beschaltet werden, ausser den 4 von der library verwendeten?

    super arbeit,
    grüße

    • admin_ub sagt:

      hier gibts das Datenblatt :
      http://www.lcd-module.de/deu/pdf/grafik/dogxl160-7.pdf
      Auf Seite 4 ist der 4-Wire-8Bit-SPI-Mode beschrieben mit Grundbeschaltung. Du brauchst 2 externe Kondensatoren 2,2uF und einen Block-C. Falls du auch die Hintergrundbeleuchtung willst, die Vorwiderstände der LEDs nicht vergessen.
      (Reset kannst du auf Vcc legen)

  3. Dmitry sagt:

    What about RESET (RST) pin? It’s not mentioned in the library…

    • admin_ub sagt:

      because i dont used the reset pin. I tied it to Vcc. If you want, connect a gpio and make a short reset pulse (about 10ms) in the init function.


Wie hat Dir dieser Artikel gefallen?

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (Noch keine Bewertungen)
Loading...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert