05-FONT-Library (STM32F746)

Beschreibung :

Mit dieser Library können Zeichen und Text Funktionen auf dem STM32F746 Discovery-Board benutzt werden.

Module :

1
stm32_ub_font.h, stm32_ub_font.c

Includes :

1
#include "stm32_ub_system.h"

Strukturen :

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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
//--------------------------------------------------------------
// Struktur von einem monospaced Font (max 16 Pixel Breite)
//-------------------------------------------------------------- 
typedef struct UB_Font_t {
  const uint16_t *table; // Tabelle mit den Daten
  uint16_t width;        // Breite eines Zeichens (in Pixel)
  uint16_t height;       // Hoehe eines Zeichens  (in Pixel)
}UB_Font;
 
 
//--------------------------------------------------------------
// Struktur von einem monospaced Font (max 32 Pixel Breite)
//--------------------------------------------------------------
typedef struct UB_Font32_t {
  const uint32_t *table; // Tabelle mit den Daten
  uint16_t width;        // Breite eines Zeichens (in Pixel)
  uint16_t height;       // Hoehe eines Zeichens  (in Pixel)
}UB_Font32;
 
 
//--------------------------------------------------------------
// Struktur von einem proportional Font (max 16 Pixel Breite)
//--------------------------------------------------------------
typedef struct UB_pFont_t {
  const uint16_t *table; // Tabelle mit den Daten
  uint16_t height;       // Hoehe eines Zeichens  (in Pixel)
  uint16_t first_char;   // erstes Zeichen  (Ascii-Nr)
  uint16_t last_char;    // letztes Zeichen (Ascii-Nr)
}UB_pFont;
 
 
//--------------------------------------------------------------
// Struktur von einem proportional Font (max 32 Pixel Breite)
//--------------------------------------------------------------
typedef struct UB_pFont32_t {
  const uint32_t *table; // Tabelle mit den Daten
  uint16_t height;       // Hoehe eines Zeichens  (in Pixel)
  uint16_t first_char;   // erstes Zeichen  (Ascii-Nr)
  uint16_t last_char;    // letztes Zeichen (Ascii-Nr)
}UB_pFont32;
 
 
//--------------------------------------------------------------
// Aktivierung der verschiedenen Fonts
// (unbenutzte einfach auskommentieren)
// fuer alle benutzten Fonts muss das entsprechende C-File
// in der CooCox-IDE hinzugefügt werden
//--------------------------------------------------------------
// monospaced
extern UB_Font Arial_7x10; 
extern UB_Font Arial_8x13;
extern UB_Font Arial_10x15;
extern UB_Font Arial_11x18;
extern UB_Font Arial_13x19;
extern UB_Font Arial_14x22;
extern UB_Font Arial_16x25;
extern UB_Font32 Arial_18x27;
// proportional
extern UB_pFont pArial_10;
extern UB_pFont pArial_13;
extern UB_pFont pArial_16;
extern UB_pFont pComic_12;
extern UB_pFont pComic_16;
extern UB_pFont pTimes_12;
extern UB_pFont pTimes_15;
extern UB_pFont32 pArial_21;
extern UB_pFont32 pComic_19;
extern UB_pFont32 pTimes_18;

Funktionen :

1
2
3
4
5
6
7
8
void UB_Font_DrawChar(uint16_t x, uint16_t y, uint8_t ascii, UB_Font *font, uint16_t vg, uint16_t bg);
void UB_Font_DrawString(uint16_t x, uint16_t y,char *ptr, UB_Font *font, uint16_t vg, uint16_t bg);
void UB_Font_DrawChar32(uint16_t x, uint16_t y, uint8_t ascii, UB_Font32 *font, uint16_t vg, uint16_t bg);
void UB_Font_DrawString32(uint16_t x, uint16_t y,char *ptr, UB_Font32 *font, uint16_t vg, uint16_t bg);
uint16_t UB_Font_DrawPChar(uint16_t x, uint16_t y, uint8_t ascii, UB_pFont *font, uint16_t vg, uint16_t bg);
void UB_Font_DrawPString(uint16_t x, uint16_t y,char *ptr, UB_pFont *font, uint16_t vg, uint16_t bg);
uint16_t UB_Font_DrawPChar32(uint16_t x, uint16_t y, uint8_t ascii, UB_pFont32 *font, uint16_t vg, uint16_t bg);
void UB_Font_DrawPString32(uint16_t x, uint16_t y,char *ptr, UB_pFont32 *font, uint16_t vg, uint16_t bg);

Beispiel :
Siehe: 01-F746-Demo LED, Button, LCD, Text und Grafik

Hier die Library zum Download :

05 = FONT : f746_font_v100


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.