parent
c75086ea00
commit
161b2ce88f
@ -0,0 +1,13 @@ |
||||
#pragma once |
||||
|
||||
// Pin config file for LCD.
|
||||
|
||||
#include "lib/arduino_pins.h" |
||||
|
||||
#define LCD_RS D2 |
||||
#define LCD_RW D3 |
||||
#define LCD_E D4 |
||||
#define LCD_D4 D5 |
||||
#define LCD_D5 D6 |
||||
#define LCD_D6 D7 |
||||
#define LCD_D7 D8 |
@ -0,0 +1,58 @@ |
||||
//
|
||||
// Example of basic LCD usage
|
||||
//
|
||||
|
||||
#include <avr/io.h> |
||||
#include <avr/pgmspace.h> |
||||
#include <util/delay.h> |
||||
|
||||
#include "lib/calc.h" |
||||
#include "lib/lcd.h" |
||||
|
||||
// Bytes for custom glyph
|
||||
|
||||
// Here's a good glyph generator you can use:
|
||||
// http://omerk.github.io/lcdchargen/
|
||||
|
||||
const uint8_t glyph[] PROGMEM = { |
||||
0b00000, |
||||
0b00111, |
||||
0b01101, |
||||
0b11101, |
||||
0b10001, |
||||
0b10001, |
||||
0b10001, |
||||
0b11111 |
||||
}; |
||||
|
||||
|
||||
void main() |
||||
{ |
||||
lcd_init(); |
||||
|
||||
// Define custom glyph at character 0
|
||||
lcd_glyph_pgm(0, glyph); |
||||
|
||||
// After writing a glyph, the address is changed
|
||||
// So we need to fix that:
|
||||
lcd_xy(0, 0); |
||||
|
||||
// Print a string
|
||||
lcd_puts("Hello"); |
||||
|
||||
// Use _pgm for strings in program memory
|
||||
// Here we print string at position xy
|
||||
lcd_puts_xy_pgm(0, 1, PSTR("String from PGM ")); |
||||
|
||||
// print the custom glyph
|
||||
lcd_putc(0); |
||||
|
||||
// enable blink/bar cursor type
|
||||
lcd_cursor(CURSOR_BOTH); |
||||
|
||||
lcd_puts_xy(5, 2, "Third line?"); |
||||
lcd_puts_xy(3, 3, "Fourth line!"); |
||||
|
||||
// end
|
||||
while(1); |
||||
} |
Loading…
Reference in new issue