PIC18 LaurTec Library
3.1.1
Open Source C Library for PIC18 Microcontrollers based on C18 - XC8 Compilers
|
Go to the source code of this file.
Macros | |
#define | LCD_D0 0b00000001 |
#define | LCD_D1 0b00000010 |
#define | LCD_D2 0b00000100 |
#define | LCD_D3 0b00001000 |
#define | LCD_E 0b00010000 |
#define | LCD_RW 0b00100000 |
#define | LCD_RS 0b01000000 |
#define | LCD_LED 0b10000000 |
#define | PCF8574_ADDRESS_H 0x70 |
#define | PCF8574_ADDRESS_L 0x00 |
#define | LEFT 0b00000000 |
#define | RIGHT 0b00000100 |
#define | TURN_ON_CURSOR 0b00000010 |
#define | TURN_OFF_CURSOR 0b00000000 |
#define | TURN_ON_LED_LCD 0b00000000 |
#define | TURN_OFF_LED_LCD 0b10000000 |
#define | BLINKING_ON 0b00000001 |
#define | BLINKING_OFF 0b00000000 |
#define | Epulse enable_pulse_LCD |
#define | SendCommand send_command_LCD |
#define | HomeLCD home_LCD |
#define | ShiftLCD shift_LCD |
#define | ShiftCursorLCD shift_cursor_LCD |
#define | GotoLineLCD goto_line_LCD |
#define | WriteCharLCD write_char_LCD |
#define | WriteStringLCD write_message_LCD |
#define | WriteVarLCD write_string_LCD |
#define | WriteIntLCD write_integer_LCD |
#define | ClearLCD clear_LCD |
#define | CursorLCD cursor_LCD |
#define | BacklightLCD backlight_LCD |
#define | OpenLCD initialize_LCD |
Functions | |
void | enable_pulse_LCD (void) |
void | send_command_LCD (unsigned char data) |
void | home_LCD (void) |
void | shift_LCD (unsigned char shift, unsigned char number_of_shift) |
void | shift_cursor_LCD (unsigned char shift, unsigned char number_of_shift) |
void | goto_line_LCD (unsigned char line) |
void | goto_xy_LCD (unsigned char x, unsigned char y) |
void | write_char_LCD (unsigned char value) |
void | write_message_LCD (const rom unsigned char *buffer) |
void | write_string_LCD (unsigned char *buffer) |
void | write_integer_LCD (int value, unsigned char number_of_digits) |
void | clear_LCD (void) |
void | cursor_LCD (unsigned char active, unsigned char blinking) |
void | backlight_LCD (unsigned char active) |
void | initialize_LCD (unsigned char quartz_frequency) |
#define BacklightLCD backlight_LCD |
Definition at line 313 of file LCD_44780_I2C.h.
#define BLINKING_OFF 0b00000000 |
Definition at line 128 of file LCD_44780_I2C.h.
#define BLINKING_ON 0b00000001 |
Definition at line 127 of file LCD_44780_I2C.h.
#define ClearLCD clear_LCD |
Definition at line 284 of file LCD_44780_I2C.h.
#define CursorLCD cursor_LCD |
Definition at line 299 of file LCD_44780_I2C.h.
#define Epulse enable_pulse_LCD |
Definition at line 141 of file LCD_44780_I2C.h.
#define GotoLineLCD goto_line_LCD |
Definition at line 201 of file LCD_44780_I2C.h.
#define HomeLCD home_LCD |
Definition at line 161 of file LCD_44780_I2C.h.
#define LCD_D0 0b00000001 |
Definition at line 92 of file LCD_44780_I2C.h.
#define LCD_D1 0b00000010 |
Definition at line 93 of file LCD_44780_I2C.h.
#define LCD_D2 0b00000100 |
Definition at line 94 of file LCD_44780_I2C.h.
#define LCD_D3 0b00001000 |
Definition at line 95 of file LCD_44780_I2C.h.
#define LCD_E 0b00010000 |
Definition at line 96 of file LCD_44780_I2C.h.
#define LCD_LED 0b10000000 |
Definition at line 99 of file LCD_44780_I2C.h.
#define LCD_RS 0b01000000 |
Definition at line 98 of file LCD_44780_I2C.h.
#define LCD_RW 0b00100000 |
Definition at line 97 of file LCD_44780_I2C.h.
#define LEFT 0b00000000 |
Definition at line 118 of file LCD_44780_I2C.h.
#define OpenLCD initialize_LCD |
Definition at line 326 of file LCD_44780_I2C.h.
#define PCF8574_ADDRESS_H 0x70 |
Definition at line 111 of file LCD_44780_I2C.h.
#define PCF8574_ADDRESS_L 0x00 |
Definition at line 113 of file LCD_44780_I2C.h.
#define RIGHT 0b00000100 |
Definition at line 119 of file LCD_44780_I2C.h.
#define SendCommand send_command_LCD |
Definition at line 153 of file LCD_44780_I2C.h.
#define ShiftCursorLCD shift_cursor_LCD |
Definition at line 190 of file LCD_44780_I2C.h.
#define ShiftLCD shift_LCD |
Definition at line 175 of file LCD_44780_I2C.h.
#define TURN_OFF_CURSOR 0b00000000 |
Definition at line 122 of file LCD_44780_I2C.h.
#define TURN_OFF_LED_LCD 0b10000000 |
Definition at line 125 of file LCD_44780_I2C.h.
#define TURN_ON_CURSOR 0b00000010 |
Definition at line 121 of file LCD_44780_I2C.h.
#define TURN_ON_LED_LCD 0b00000000 |
Definition at line 124 of file LCD_44780_I2C.h.
#define WriteCharLCD write_char_LCD |
Definition at line 225 of file LCD_44780_I2C.h.
#define WriteIntLCD write_integer_LCD |
Definition at line 276 of file LCD_44780_I2C.h.
#define WriteStringLCD write_message_LCD |
Definition at line 246 of file LCD_44780_I2C.h.
#define WriteVarLCD write_string_LCD |
Definition at line 259 of file LCD_44780_I2C.h.
void backlight_LCD | ( | unsigned char | active | ) |
This function controls the backligth LED.
active | Activate the LED backlight [TURN_ON_LED_LCD, TURN_OFF_LED_LCD] |
blinking | Let the cursor blink [BLINKING_ON,BLINKING_OFF] |
This function controls the backligth LED.
active | Activate the LED backlight [TURN_ON_LED_LCD, TURN_OFF_LED_LCD] |
blinking | Let the cursor blink [BLINKING_ON,BLINKING_OFF] |
Definition at line 269 of file LCD_44780.c.
References data_buffer, LCD_LED, PCF8574_address, PCF8574_write_data(), and TURN_ON_LED_LCD.
void clear_LCD | ( | void | ) |
This Function cleans the LCD display.
Definition at line 251 of file LCD_44780.c.
References send_command_LCD().
void cursor_LCD | ( | unsigned char | active, |
unsigned char | blinking | ||
) |
This function controls the cursor option (blinking, active)
active | Activate the cursor, showing it or not [TURN_ON_CURSOR, TURN_OFF_CURSOR] |
blinking | Let the cursor blink [BLINK_ON,BLINK_OFF] |
This function controls the cursor option (blinking, active)
active | Activate the cursor, showing it or not [TURN_ON_CURSOR, TURN_OFF_CURSOR] |
blinking | Let the cursor blink [BLINKING_ON,BLINKING_OFF] |
Definition at line 260 of file LCD_44780.c.
References send_command_LCD(), and SendCommand.
void enable_pulse_LCD | ( | void | ) |
This function generates the Enable pulse.
Definition at line 49 of file LCD_44780.c.
References data_buffer, delay_ms(), LCD_E, PCF8574_address, and PCF8574_write_data().
void goto_line_LCD | ( | unsigned char | line | ) |
This function locates the LCD cursor on the selected line. Tested on 20x4 16x2 LCD displays.
line | Specify the number of the line [1,2,3,4] |
This function locates the LCD cursor on the selected line.
line | Specify the number of the line [1,2,3,4] |
Definition at line 111 of file LCD_44780.c.
References send_command_LCD().
void goto_xy_LCD | ( | unsigned char | x, |
unsigned char | y | ||
) |
This function locates the LCD cursor to an arbitrary X Y location. Y represents the line number from top.
x | It Specifies horizontal position |
y | It Specifies vertical position (line number) |
Definition at line 136 of file LCD_44780.c.
References goto_line_LCD(), RIGHT, and shift_cursor_LCD().
void home_LCD | ( | void | ) |
This function locates the cursor at home location. First line first character.
Definition at line 74 of file LCD_44780.c.
References send_command_LCD().
void initialize_LCD | ( | unsigned char | quartz_frequency | ) |
This funnction initializes the LCD to work in 4 bit modality.
quartz_frequency | Quartz freq. expressed in MHz used to run the CPU. |
Definition at line 277 of file LCD_44780.c.
References clear_LCD(), cursor_LCD(), delay_ms(), LCD_E, LCD_RS, LCD_RW, send_command_LCD(), and setQuartz().
void send_command_LCD | ( | unsigned char | data | ) |
This function generates the Enable pulse.
data | Data to be sent [0..255] |
Definition at line 68 of file LCD_44780_I2C.c.
References data_buffer, enable_pulse_LCD(), PCF8574_address, and PCF8574_write_data().
void shift_cursor_LCD | ( | unsigned char | shift, |
unsigned char | number_of_shift | ||
) |
This function shifts the LCD cursor on the left or rigt. The position of the cursor is where the next writting will be performed.
shift | Specify where the shift should be [LEFT, RIGHT]. |
number_of_shift | Specify the number of times the shift is executed. |
This function shifts the LCD cursor on the left or rigt. The position of the cursor is where the next writting will be performed.
shift | Specify where the shift should be [LEFT, RIGHT]. |
number_of_shift | Specify the number of times the shift is executed. |
Definition at line 98 of file LCD_44780.c.
References send_command_LCD().
void shift_LCD | ( | unsigned char | shift, |
unsigned char | number_of_shift | ||
) |
This function shifts the LCD screen on the left or rigt.
shift | Specify where the shift should be [LEFT, RIGHT]. |
number_of_shift | Specify the number of times the shift is executed. |
This function shifts the LCD screen on the left or rigt.
shift | Specify where the shift should be [LEFT, RIGHT]. |
number_of_shift | Specify the number of times the shift is executed. |
Definition at line 84 of file LCD_44780.c.
References send_command_LCD().
void write_char_LCD | ( | unsigned char | value | ) |
This function writes a char to the LCD display. (e.g WriteCharLCD ('a'); )
value | Specify the character to be sent [0-128 ASCII code]. |
Definition at line 145 of file LCD_44780.c.
References data_buffer, LCD_RS, PCF8574_address, PCF8574_write_data(), and send_command_LCD().
void write_integer_LCD | ( | int | value, |
unsigned char | number_of_digits | ||
) |
This function writes an integer to the LCD display. The integer is converted to string.
value | It is integer that must be written to the LCD diplay. |
numeber_of_digits | It specifies the number of shown digit [0-5]. 0: Left Justified 1-5: Right Justified with n digit |
Definition at line 210 of file LCD_44780.c.
References write_string_LCD().
void write_message_LCD | ( | const rom unsigned char * | buffer | ) |
This function writes a const string to the LCD display, e.g write_message_LCD("Hello"); .
buffer | Is a const string written in rom (is not an array). |
Definition at line 174 of file LCD_44780.c.
References write_char_LCD(), and write_message_LCD().
void write_string_LCD | ( | unsigned char * | buffer | ) |
This function writes an array of char to the LCD display, terminated with /0 .
buffer | It is an array of char terminated with /0 . |
This function writes an array of char to the LCD display, terminated with /0 .
buffer | It is an array of char terminated with /0 . |
Definition at line 194 of file LCD_44780.c.
References write_char_LCD().