NiboRoboLib 3.3 - NIBO Library
gfx.h-Dateireferenz

Routinen zur Ansteuerung eines LC-Grafik-Displays. Mehr ...

#include <stdint.h>
#include <avr/pgmspace.h>

gehe zum Quellcode dieser Datei

Aufzählungen

enum  {
  GFX_DM_JAM1 =0, GFX_DM_JAM2 =1, GFX_DM_COMP =2, GFX_DM_JAM1_INV =4,
  GFX_DM_JAM2_INV =5, GFX_DM_COMP_INV =6
}
 

Funktionen

void gfx_init ()
 
uint8_t gfx_get_x ()
 
uint8_t gfx_get_y ()
 
void gfx_move (uint8_t x, uint8_t y)
 
void gfx_draw_mode (uint8_t mode)
 
void gfx_fill (uint8_t val)
 
uint8_t gfx_char_width (char ch)
 
uint8_t gfx_text_width (const char *txt)
 
uint8_t gfx_text_width_P (PGM_P txt)
 
void gfx_print_char (char c)
 
void gfx_print_text (const char *txt)
 
void gfx_print_text_P (PGM_P txt)
 
void gfx_draw_xbm (uint8_t width, uint8_t height, uint8_t *data)
 
void gfx_draw_xbm_P (uint8_t width, uint8_t height, PGM_P data)
 
void gfx_set_proportional (uint8_t prop)
 
uint8_t gfx_get_proportional (void)
 
void gfx_hline (uint8_t length)
 
void gfx_vline (uint8_t length)
 
void gfx_box (uint8_t width, uint8_t height)
 
void gfx_lineTo (uint8_t x, uint8_t y)
 
void gfx_pixel (uint8_t value)
 
void gfx_term_clear ()
 
void gfx_term_clearLine ()
 
void gfx_term_goto (uint8_t col, uint8_t row)
 
uint8_t gfx_term_getCol ()
 
uint8_t gfx_term_getRow ()
 
void gfx_term_scroll (uint8_t lines)
 
void gfx_term_print (char *text)
 
void gfx_term_print_P (PGM_P text)
 
void gfx_term_writec (unsigned char c)
 
void gfx_term_write (const unsigned char *buf, unsigned int size)
 

Ausführliche Beschreibung

Routinen zur Ansteuerung eines LC-Grafik-Displays.

Autor
Nils Springob (nils@.nosp@m.nica.nosp@m.i-sys.nosp@m.tems.nosp@m..de)
Datum
2007-07-16

Dieser Teil stellt Funktionen zur Textausgabe auf dem Grafikdisplay zur Verfügung. Alle Funktionen arbeiten blockierend, das heisst sie kehren erst zurück wenn die Daten übertragen wurden.

Dokumentation der Funktionen

void gfx_box ( uint8_t  width,
uint8_t  height 
)

Zeichnet ein Rechteck.

Parameter
widthBreite
heightHöhe
uint8_t gfx_char_width ( char  ch)

Liefert Breite in Pixeln für angegebenes Zeichen

Parameter
chZeichen
Rückgabe
Breite in Pixeln
void gfx_draw_mode ( uint8_t  mode)

Setzt den Zeichenmodus

Parameter
modeZeichenmodus
void gfx_draw_xbm ( uint8_t  width,
uint8_t  height,
uint8_t *  data 
)

Gibt angegebenes XBM Bild im RAM an der aktuellen Grafikposition aus.

Parameter
widthBreite
heightHöhe
dataXBM Daten im RAM
void gfx_draw_xbm_P ( uint8_t  width,
uint8_t  height,
PGM_P  data 
)

Gibt angegebenes XBM Bild im Flash an der aktuellen Grafikposition aus.

Parameter
widthBreite
heightHöhe
dataXBM Daten im Flash
void gfx_fill ( uint8_t  val)

Fulle gesamten Bildschirm mit angegebener Bitfolge

Parameter
valBitmaske
uint8_t gfx_get_proportional ( void  )

Liefert den aktuellen Proportionalitaetsmodus.

Rückgabe
0=fix, 1=Proportional
uint8_t gfx_get_x ( )

Liefert aktuelle X Position des Grafikcursors

uint8_t gfx_get_y ( )

Liefert aktuelle Y Position des Grafikcursors

void gfx_hline ( uint8_t  length)

Zeichnet eine horizontale Linie von der aktuellen Position nach rechts

Parameter
lengthLänge der Linie
void gfx_init ( )

Initialisiert das Grafik Display. Die Funktion display_init() muss vorher aufgerufen werden!

void gfx_lineTo ( uint8_t  x,
uint8_t  y 
)

Zeichnet eine Linie zur angegebenen Position.

Parameter
xX-Position des Zielpunktes (0..127)
yY-Position des Zielpunktes (0..63)
void gfx_move ( uint8_t  x,
uint8_t  y 
)

Setzt Grafikcursor auf angegebene Position

Parameter
xX-Position des Cursors (0..127)
yY-Position des Cursors (0..63)
void gfx_pixel ( uint8_t  value)

Setzt bzw. löscht den Pixel an der aktuellen Position.

Parameter
value0: löschen, anderer Wert: setzen
void gfx_print_char ( char  c)

Gibt angegebenes Zeichen an der aktuellen Grafikposition aus.

Parameter
cZeichen
void gfx_print_text ( const char *  txt)

Gibt angegebenen Nullterminierten String an der aktuellen Grafikposition aus.

Parameter
txtNullterminierter String
void gfx_print_text_P ( PGM_P  txt)

Gibt angegebenen Nullterminierten String im FLASH an der aktuellen Grafikposition aus.

Parameter
txtNullterminierter String im FLASH
void gfx_set_proportional ( uint8_t  prop)

Setzt den Proportionalitaetsmodus.

Parameter
prop0=fix, 1=Proportional
void gfx_term_clear ( )

Löscht den Bildschirm und setzt den Terminal-Cursor an die Position (0/0).

void gfx_term_clearLine ( )

Löscht die aktuelle Zeile, die Cursor Position bleibt unverändert.

uint8_t gfx_term_getCol ( )

Liefert die aktuelle Cursor-Spalte zurück

Rückgabe
Aktuelle Spalte
uint8_t gfx_term_getRow ( )

Liefert die aktuelle Cursor-Zeile zurück

Rückgabe
Aktuelle Zeile
void gfx_term_goto ( uint8_t  col,
uint8_t  row 
)

Setzt den Terminal-Cursor an die angegebene Position.

Parameter
colSpalte
colZeile
void gfx_term_print ( char *  text)

Gibt den Text im Terminal-Modus aus.

Parameter
textNullterminierter String im RAM
void gfx_term_print_P ( PGM_P  text)

Gibt den Text im Terminal-Modus aus.

Parameter
textNullterminierter String im FLASH
void gfx_term_scroll ( uint8_t  lines)

Scrollt den Bildschirm um die angegebene Zeilenanzahl.

Parameter
linesAnzahl der Zeilen
void gfx_term_write ( const unsigned char *  buf,
unsigned int  size 
)

Gibt die angegebene Anzahlvon Zeichen im Terminal-Modus aus.

Parameter
bufText
sizeAnzahl Zeichen
void gfx_term_writec ( unsigned char  c)

Gibt ein einzelnes Zeichen im Terminal-Modus aus.

Parameter
cASCII-Zeichen
uint8_t gfx_text_width ( const char *  txt)

Liefert Breite in Pixeln für Nullterminierten String

Parameter
txtNullterminierter String
Rückgabe
Breite in Pixeln
uint8_t gfx_text_width_P ( PGM_P  txt)

Liefert Breite in Pixeln für Nullterminierten String im FLASH

Parameter
txtNullterminierter String im FLASH
Rückgabe
Breite in Pixeln
void gfx_vline ( uint8_t  length)

Zeichnet eine vertikale Linie von der aktuellen Position nach unten

Parameter
lengthLänge der Linie