Subversion Repositories Code-Repo

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
148 Kevin 1
#ifndef OLED_NHD_0216KZW_AB5_H
2
#define	OLED_NHD_0216KZW_AB5_H
3
 
4
#define NHD_STRING_BUFFER_SIZE  64
5
 
6
// commands
7
#define LCD_CLEARDISPLAY 0x01
8
#define LCD_RETURNHOME 0x02
9
#define LCD_ENTRYMODESET 0x04
10
#define LCD_DISPLAYCONTROL 0x08
11
#define LCD_CURSORSHIFT 0x10
12
#define LCD_FUNCTIONSET 0x28
13
#define LCD_SETCGRAMADDR 0x40
14
#define LCD_SETDDRAMADDR 0x80
15
 
16
// flags for display entry mode
17
#define LCD_ENTRYRIGHT 0x00
18
#define LCD_ENTRYLEFT 0x02
19
#define LCD_ENTRYSHIFTINCREMENT 0x01
20
#define LCD_ENTRYSHIFTDECREMENT 0x00
21
 
22
// flags for display on/off control
23
#define LCD_DISPLAYON 0x04
24
#define LCD_DISPLAYOFF 0x00
25
#define LCD_CURSORON 0x02
26
#define LCD_CURSOROFF 0x00
27
#define LCD_BLINKON 0x01
28
#define LCD_BLINKOFF 0x00
29
 
30
// flags for display/cursor shift
31
#define LCD_DISPLAYMOVE 0x08
32
#define LCD_CURSORMOVE 0x00
33
#define LCD_MOVERIGHT 0x04
34
#define LCD_MOVELEFT 0x00
35
 
36
// flags for function set
37
#define LCD_8BITMODE    0x10
38
#define LCD_4BITMODE    0x00
39
#define LCD_JAPANESE    0x00
40
#define LCD_EUROPEAN_I  0x01
41
#define LCD_RUSSIAN     0x02
42
#define LCD_EUROPEAN_II 0x03
43
 
44
typedef struct __OLED_CHAR_DATA {
45
    unsigned char display_function;
46
    unsigned char display_control;
47
    unsigned char display_mode;
48
    unsigned char current_line;
49
    unsigned char num_lines;
50
} OLED_CHAR_DATA;
51
 
52
void NHD_Init(void);
53
void NHD_Begin(char cols, char rows);
54
void NHD_Clear(void);
55
void NHD_Home(void);
56
void NHD_Display(char option);
57
void NHD_Blink(char option);
58
void NHD_Cursor(char option);
59
void NHD_Autoscroll(char option);
60
void NHD_Scroll_Display_Left(void);
61
void NHD_Scroll_Display_Right(void);
62
void NHD_Left_To_Rigtht(void);
63
void NHD_Right_To_Left(void);
64
 
65
void NHD_Create_Char(unsigned char location, unsigned char *charmap);
66
void NHD_Set_Cursor(unsigned char col, unsigned char row);
67
 
68
void NHD_Send_Data(unsigned char value);
69
void NHD_Send_Command(unsigned char value);
70
 
71
void NHD_Pulse_Enable(void);
72
void NHD_Write_4_Bits(unsigned char value);
73
void NHD_Wait_For_Ready(void);
74
 
75
void NHD_Write_String(const rom char *fmt, ...);
76
 
77
#endif	/* OLED_NHD_0216KZW_AB5_H */
78