37-VGA_Font-Library (STM32F4)

Diese Library dient zum zeichnen von Texten auf dem VGA-Screen.

Sie benötigt dazu die VGA-Library “STM32_UB_VGA_SCREEN″
und einen oder mehrere Font-Files die zusätzlich eingebunden werden müssen.

In diesem Library sind mehrere Fonts dabei. Mit dem von mir geschriebenen PC-Programm “PixelFontGenerator” , können Windows-Fonts in das benötigte Format umgewandelt werden.

neu ab der Version 1.1 ist die Unterstützung von bis zu 32 Pixel breiten Fonts.

Beispiel Fonts :

vga_font

Voraussetzungen :

1
2
Benutzte Module der CooCox-IDE : keine
Benutzte Librarys : STM32_UB_VGA_SCREEN

Funktionen :

1
2
3
4
void UB_VGA_Font_DrawChar(uint16_t x, uint16_t y, uint8_t ascii, UB_VGA_Font *font, uint8_t vg, uint8_t bg);     // zum zeichnen eines Zeichens (max 16pixel breite)
void UB_VGA_Font_DrawString(uint16_t x, uint16_t y,char *ptr, UB_VGA_Font *font, uint8_t vg, uint8_t bg);        // zum zeichnen eines Textes (max 16pixel breite)
void UB_VGA_Font_DrawChar32(uint16_t x, uint16_t y, uint8_t ascii, UB_VGA_Font32 *font, uint8_t vg, uint8_t bg); // zum zeichnen eines Zeichens (max 32pixel breite)
void UB_VGA_Font_DrawString32(uint16_t x, uint16_t y,char *ptr, UB_VGA_Font32 *font, uint8_t vg, uint8_t bg);    // zum zeichnen eines Textes (max 32pixel breite)

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
39
40
41
42
43
44
//--------------------------------------------------------------
// File     : main.c
// Datum    : 06.10.2013
// Version  : 1.1
// 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 VGA-Font-Library
// Hinweis  : Diese zwei Files muessen auf 8MHz stehen
//              "cmsis_boot/stm32f4xx.h"
//              "cmsis_boot/system_stm32f4xx.c"
//--------------------------------------------------------------
 
#include "main.h"
#include "stm32_ub_vga_font.h"
 
int main(void)
{
  SystemInit(); // Quarz Einstellungen aktivieren
 
  UB_VGA_Screen_Init(); // init vom Screen
 
  // Bildschirm löschen
  UB_VGA_FillScreen(VGA_COL_BLUE);
 
  // schwarzen Text auf weisem Grund zeichnen mit verschiedenen Fonts
  UB_VGA_Font_DrawString(10,10,"Arial-7x10",&VGA_Arial_7x10,VGA_COL_BLACK,VGA_COL_WHITE);
  UB_VGA_Font_DrawString(10,30,"Arial-8x13",&VGA_Arial_8x13,VGA_COL_BLACK,VGA_COL_WHITE);
  UB_VGA_Font_DrawString(10,50,"Arial-10x15",&VGA_Arial_10x15,VGA_COL_BLACK,VGA_COL_WHITE);
  UB_VGA_Font_DrawString(10,70,"Arial-11x18",&VGA_Arial_11x18,VGA_COL_BLACK,VGA_COL_WHITE);
  UB_VGA_Font_DrawString(10,100,"Arial-13x19",&VGA_Arial_13x19,VGA_COL_BLACK,VGA_COL_WHITE);
  UB_VGA_Font_DrawString(10,130,"Arial-14x22",&VGA_Arial_14x22,VGA_COL_BLACK,VGA_COL_WHITE);
  UB_VGA_Font_DrawString(10,160,"Arial-16x25",&VGA_Arial_16x25,VGA_COL_BLACK,VGA_COL_WHITE);
  // 32 Bit Font
  UB_VGA_Font_DrawString32(10,190,"Arial-18x27",&VGA_Arial_18x27,VGA_COL_BLACK,VGA_COL_WHITE);
 
  while(1)
  {
 
  }
}

Hier die Library zum Download :

ub_stm32f4_vga_font_v101

Hier der komplette CooCox-Projektordner zum Download :

Demo_37_VGA3

Hier der Link zu dem PC-Programm :

PC-Programme

5 Antworten auf 37-VGA_Font-Library (STM32F4)

  1. ANDREJ sagt:

    Hallo !

    Andrej ist meine name testiere ihre project VGA 3 DEMO37 und habe diese problem:

    Wie kann ich diese problem loesen?
    Bitte helfen Sie mir.
    MIt freundlichen gruessen !
    Andrej

    • admin_ub sagt:

      Hi Andrej, welche Version von CoIDE und GCC benutzt du ? Ich habe es gerade nochmal ausprobiert. Mit Version 1.7.0 und Version 1.7.4 kommen bei mir keine Fehler. Bitte nochmal das komplette Projekt runterladen. Und das File “Demo_37.coproj” mit CoIDE öffnen und per “F7″ neu compilieren. GCC muss die ARM Version 4.7 von q4/2012 sein.

  2. ANDREJ sagt:

    Danke fuer antwort, version
    CooCox CoIDE

    Version: 1.7.4
    Build id: 20130719-3184-1360

    CooCox CoIDE is a free software product.

    gcc 4.7-2013
    probiere noch mit altere version von 2012 moeglich ist das problem

  3. ANDREJ sagt:

    Compiliton get normal und bild ist schon am lcd monitor aber fehler ist in box CONSOLE,

    • admin_ub sagt:

      sorry, da kann ich leider nicht weiterhelfen.


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