UniversalLCDlibrarySTM
lcd.h File Reference
#include "stm32f0xx.h"

Macros

#define LCD_TYPE_ST7920   0
 
#define LCD_TYPE_OLED   1
 
#define LCD_TYPE_UC1701   2
 
#define LCD_TYPE   LCD_TYPE_UC1701
 
#define LCD_MAX_WIDTH   128
 
#define LCD_MAX_HEIGHT   64
 
#define BUFF_SIZE   1024
 

Typedefs

typedef void( lcdb_init_callback )(void)
 
typedef void( lcdb_odswiez_ekran_callback )(void)
 
typedef void( lcdb_odswiez_obszar_callback )(uint8_t, uint8_t, uint8_t, uint8_t)
 

Functions

void lcdb_init (void)
 
void lcdb_czysc_bufor (void)
 
void lcdb_narysuj_znak (uint16_t x, uint16_t y, char c, uint8_t kolor)
 
void lcdb_pisz_tekst (uint16_t x, uint16_t y, char *wsk, uint8_t kolor)
 
void lcdb_pisz_liczbe (uint16_t x, uint16_t y, int16_t liczba, uint8_t kolor)
 
void lcdb_pisz_liczbe_x_znakow (uint16_t x, uint16_t y, int16_t liczba, uint8_t kolor, uint8_t znaki, uint8_t wypelniacz)
 
void lcdb_narysuj_znak_16 (uint16_t x, uint16_t y, char c, uint8_t kolor)
 
void lcdb_pisz_tekst_16 (uint16_t x, uint16_t y, char *wsk, uint8_t kolor)
 
void lcdb_pisz_liczbe_16 (uint16_t x, uint16_t y, int16_t liczba, uint8_t kolor)
 
void lcdb_pisz_liczbe_16_x_znakow (uint16_t x, uint16_t y, int16_t liczba, uint8_t kolor, uint8_t znaki)
 
void lcdb_zapal_pixel (uint16_t X, uint16_t Y, uint8_t zapal)
 
void lcdb_rysuj_obrazek_zmazywanie (const unsigned char s[], char x, char y)
 
void lcdb_rysuj_linie (uint16_t, uint16_t, uint16_t, uint16_t, uint8_t)
 
void lcdb_rysuj_linie_3p (uint16_t, uint16_t, uint16_t, uint8_t, uint8_t)
 
void lcdb_rysuj_okrag (uint16_t, uint16_t, uint16_t, uint8_t)
 
void lcdb_rysuj_prostokat (uint16_t, uint16_t, uint16_t, uint16_t, uint8_t)
 
void lcdb_odswiez_ekran (void)
 
void lcdb_odswiez_obszar (uint8_t x1, uint8_t y1, uint8_t x2, uint8_t y2)
 

Macro Definition Documentation

#define BUFF_SIZE   1024
#define LCD_MAX_HEIGHT   64
#define LCD_MAX_WIDTH   128
#define LCD_TYPE   LCD_TYPE_UC1701
#define LCD_TYPE_OLED   1
#define LCD_TYPE_ST7920   0
#define LCD_TYPE_UC1701   2

Typedef Documentation

typedef void( lcdb_init_callback)(void)
typedef void( lcdb_odswiez_ekran_callback)(void)

Utworzenie typu CALLbacka, dla funkcji odswiezajacej ekran

typedef void( lcdb_odswiez_obszar_callback)(uint8_t, uint8_t, uint8_t, uint8_t)

Function Documentation

void lcdb_czysc_bufor ( void  )

Czysci bufor w pamieci.

void lcdb_init ( void  )

Inicjalizacja wyswietlacza.

void lcdb_narysuj_znak ( uint16_t  x,
uint16_t  y,
char  c,
uint8_t  kolor 
)

Funkcja piszaca znak w zadanej pozycji

Parameters
x- wspolrzedna x.
y- wspolrzedna ya.
c- znak do napisania.
kolor- czy tekst ma byc czarny(1), czy bialy(0).
void lcdb_narysuj_znak_16 ( uint16_t  x,
uint16_t  y,
char  c,
uint8_t  kolor 
)

Funkcja piszaca znak w zadanej pozycji o wielkosci 16px.

Parameters
x- wspolrzedna x.
y- wspolrzedna ya.
c- znak do napisania.
kolor- czy tekst ma byc czarny(1), czy bialy(0).
void lcdb_odswiez_ekran ( void  )

Odswieza caly ekran.

void lcdb_odswiez_obszar ( uint8_t  x1,
uint8_t  y1,
uint8_t  x2,
uint8_t  y2 
)

Odswieza tylko wybrany obszar ekranu.

Parameters
x1- wspolrzedna x pierwszego wierzcholka.
y1- wspolrzedna y pierwszego wierzcholka.
x2- wspolrzedna x drugiego wierzcholka.
y2- wspolrzedna x drugiego wierzcholka.
void lcdb_pisz_liczbe ( uint16_t  x,
uint16_t  y,
int16_t  liczba,
uint8_t  kolor 
)

Funkcja piszaca liczbe w zadanej pozycji

Parameters
x- wspolrzedna x.
y- wspolrzedna ya.
liczba- wartosc do wyswietlenia.
kolor- czy tekst ma byc czarny(1), czy bialy(0).
void lcdb_pisz_liczbe_16 ( uint16_t  x,
uint16_t  y,
int16_t  liczba,
uint8_t  kolor 
)

Funkcja piszaca liczbe w zadanej pozycji o wielkosci 16px.

Parameters
x- wspolrzedna x.
y- wspolrzedna ya.
liczba- wartosc do wyswietlenia.
kolor- czy tekst ma byc czarny(1), czy bialy(0).
void lcdb_pisz_liczbe_16_x_znakow ( uint16_t  x,
uint16_t  y,
int16_t  liczba,
uint8_t  kolor,
uint8_t  znaki 
)
void lcdb_pisz_liczbe_x_znakow ( uint16_t  x,
uint16_t  y,
int16_t  liczba,
uint8_t  kolor,
uint8_t  znaki,
uint8_t  wypelniacz 
)

Funkcja piszaca liczbe w zadanej pozycji, ale tylko okreslona ilosc - uzupelnia wybranym znakiem w praktyce dziala jak wyrownanie do prawej

Parameters
x- wspolrzedna x.
y- wspolrzedna ya.
liczba- wartosc do wyswietlenia.
kolor- czy tekst ma byc czarny(1), czy bialy(0).
znaki- ilosc znakow.
wypelniacz- jakim znakiem maja byc wypelnione puste pola (np spacja lub 0).
void lcdb_pisz_tekst ( uint16_t  x,
uint16_t  y,
char *  wsk,
uint8_t  kolor 
)

Funkcja piszaca tekst w zadanej pozycji

Parameters
x- wspolrzedna x.
y- wspolrzedna ya.
wsk- wskaznik na tekst do wyswietlenia.
kolor- czy tekst ma byc czarny(1), czy bialy(0).
void lcdb_pisz_tekst_16 ( uint16_t  x,
uint16_t  y,
char *  wsk,
uint8_t  kolor 
)

Funkcja piszaca tekst w zadanej pozycji o wielkosci 16px.

Parameters
x- wspolrzedna x.
y- wspolrzedna ya.
wsk- wskaznik na tekst do wyswietlenia.
kolor- czy tekst ma byc czarny(1), czy bialy(0).
void lcdb_rysuj_linie ( uint16_t  ,
uint16_t  ,
uint16_t  ,
uint16_t  ,
uint8_t   
)
void lcdb_rysuj_linie_3p ( uint16_t  ,
uint16_t  ,
uint16_t  ,
uint8_t  ,
uint8_t   
)
void lcdb_rysuj_obrazek_zmazywanie ( const unsigned char  s[],
char  x,
char  y 
)

rysuje obrazek z tablicy do bufora program microlcd ze strony http://hobby.abxyz.bplaced.net/index.php?pid=5&aid=12 ustawienia zapisu : horizontal natomiast jesli chcemy skorzystac z pixel factory - ustawiamy vertical dla wygody w tablicy dwa pierwsze bajty oznaczaja dlugosc i wysokosc w pikselach - trzeba to zawsze samemu dopisac, ale latwiej sie uzywa w programie

Parameters
s- tablica z obrazkiem, ktora zawiera takze jego rozmiar.
x- wspolrzedna x.
y- wspolrzedna y.
void lcdb_rysuj_okrag ( uint16_t  ,
uint16_t  ,
uint16_t  ,
uint8_t   
)
void lcdb_rysuj_prostokat ( uint16_t  ,
uint16_t  ,
uint16_t  ,
uint16_t  ,
uint8_t   
)
void lcdb_zapal_pixel ( uint16_t  X,
uint16_t  Y,
uint8_t  zapal 
)

Czysci bufor w pamieci.