From db605dd18b11ecfb5cd9f92c721c52cb70543384 Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Mon, 1 Jun 2009 08:32:11 +0000 Subject: First integration of the Arduino code in Processing 5503: PreProcessor and Compiler have been integrated with changes to the Sketch. Compilation still has problems (Thread error on success, and can't handle non-pde files in a sketch). Modified the Mac OS X make.sh to copy the hardware, avr tools, and example over. Removing some of the antlr stuff. Disabling the Commander (command-line execution) for now. Added Library, LibraryManager, and Target. Added support for prefixed preferences (e.g. for boards and programmers). --- libraries/LiquidCrystal/LiquidCrystal.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 libraries/LiquidCrystal/LiquidCrystal.h (limited to 'libraries/LiquidCrystal/LiquidCrystal.h') diff --git a/libraries/LiquidCrystal/LiquidCrystal.h b/libraries/LiquidCrystal/LiquidCrystal.h new file mode 100755 index 0000000..a5edc5f --- /dev/null +++ b/libraries/LiquidCrystal/LiquidCrystal.h @@ -0,0 +1,31 @@ +#ifndef LiquidCrystal_h +#define LiquidCrystal_h + +#include +#include "Print.h" + +class LiquidCrystal : public Print { +public: + LiquidCrystal(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t); + LiquidCrystal(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, + uint8_t, uint8_t, uint8_t, uint8_t); + void clear(); + void home(); + void setCursor(int, int); + /* + void shiftDisplayLeft(); + void shiftDisplayRight(); + */ + virtual void write(uint8_t); + void command(uint8_t); +private: + void send(uint8_t, uint8_t); + + uint8_t _four_bit_mode; + uint8_t _rs_pin; // LOW: command. HIGH: character. + uint8_t _rw_pin; // LOW: write to LCD. HIGH: read from LCD. + uint8_t _enable_pin; // activated by a HIGH pulse. + uint8_t _data_pins[8]; +}; + +#endif -- cgit v1.2.3-18-g5258 From cdeb912f7d94928f7de4974a68e4cf727e51e703 Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Sat, 11 Jul 2009 00:54:26 +0000 Subject: Migrating to Limor Fried's improved LiquidCrystal library. --- libraries/LiquidCrystal/LiquidCrystal.h | 95 +++++++++++++++++++++++++++++---- 1 file changed, 85 insertions(+), 10 deletions(-) (limited to 'libraries/LiquidCrystal/LiquidCrystal.h') diff --git a/libraries/LiquidCrystal/LiquidCrystal.h b/libraries/LiquidCrystal/LiquidCrystal.h index a5edc5f..5a8d087 100755 --- a/libraries/LiquidCrystal/LiquidCrystal.h +++ b/libraries/LiquidCrystal/LiquidCrystal.h @@ -4,28 +4,103 @@ #include #include "Print.h" +// commands +#define LCD_CLEARDISPLAY 0x01 +#define LCD_RETURNHOME 0x02 +#define LCD_ENTRYMODESET 0x04 +#define LCD_DISPLAYCONTROL 0x08 +#define LCD_CURSORSHIFT 0x10 +#define LCD_FUNCTIONSET 0x20 +#define LCD_SETCGRAMADDR 0x40 +#define LCD_SETDDRAMADDR 0x80 + +// flags for display entry mode +#define LCD_ENTRYRIGHT 0x00 +#define LCD_ENTRYLEFT 0x02 +#define LCD_ENTRYSHIFTINCREMENT 0x01 +#define LCD_ENTRYSHIFTDECREMENT 0x00 + +// flags for display on/off control +#define LCD_DISPLAYON 0x04 +#define LCD_DISPLAYOFF 0x00 +#define LCD_CURSORON 0x02 +#define LCD_CURSOROFF 0x00 +#define LCD_BLINKON 0x01 +#define LCD_BLINKOFF 0x00 + +// flags for display/cursor shift +#define LCD_DISPLAYMOVE 0x08 +#define LCD_CURSORMOVE 0x00 +#define LCD_MOVERIGHT 0x04 +#define LCD_MOVELEFT 0x00 + +// flags for function set +#define LCD_8BITMODE 0x10 +#define LCD_4BITMODE 0x00 +#define LCD_2LINE 0x08 +#define LCD_1LINE 0x00 +#define LCD_5x10DOTS 0x04 +#define LCD_5x8DOTS 0x00 + class LiquidCrystal : public Print { public: - LiquidCrystal(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t); - LiquidCrystal(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, - uint8_t, uint8_t, uint8_t, uint8_t); + LiquidCrystal(uint8_t rs, uint8_t enable, + uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, + uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7); + LiquidCrystal(uint8_t rs, uint8_t rw, uint8_t enable, + uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, + uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7); + LiquidCrystal(uint8_t rs, uint8_t rw, uint8_t enable, + uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3); + LiquidCrystal(uint8_t rs, uint8_t enable, + uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3); + + void init(uint8_t fourbitmode, uint8_t rs, uint8_t rw, uint8_t enable, + uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, + uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7); + + void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS); + void clear(); void home(); - void setCursor(int, int); - /* - void shiftDisplayLeft(); - void shiftDisplayRight(); - */ + + void noDisplay(); + void display(); + void noBlink(); + void blink(); + void noCursor(); + void cursor(); + void scrollDisplayLeft(); + void scrollDisplayRight(); + void printLeft(); + void printRight(); + void shiftLeft(); + void shiftRight(); + void shiftIncrement(); + void shiftDecrement(); + + void createChar(uint8_t, uint8_t[]); + void setCursor(uint8_t, uint8_t); virtual void write(uint8_t); void command(uint8_t); private: void send(uint8_t, uint8_t); - - uint8_t _four_bit_mode; + void write4bits(uint8_t); + void write8bits(uint8_t); + void pulseEnable(); + uint8_t _rs_pin; // LOW: command. HIGH: character. uint8_t _rw_pin; // LOW: write to LCD. HIGH: read from LCD. uint8_t _enable_pin; // activated by a HIGH pulse. uint8_t _data_pins[8]; + + uint8_t _displayfunction; + uint8_t _displaycontrol; + uint8_t _displaymode; + + uint8_t _initialized; + + uint8_t _numlines,_currline; }; #endif -- cgit v1.2.3-18-g5258 From 58b4e52f7f7340f50f56363575dd2b08d71eec0e Mon Sep 17 00:00:00 2001 From: "David A. Mellis" Date: Sat, 25 Jul 2009 18:26:29 +0000 Subject: Updating LiquidCrystal API and examples. --- libraries/LiquidCrystal/LiquidCrystal.h | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'libraries/LiquidCrystal/LiquidCrystal.h') diff --git a/libraries/LiquidCrystal/LiquidCrystal.h b/libraries/LiquidCrystal/LiquidCrystal.h index 5a8d087..f66ec1b 100755 --- a/libraries/LiquidCrystal/LiquidCrystal.h +++ b/libraries/LiquidCrystal/LiquidCrystal.h @@ -72,12 +72,10 @@ public: void cursor(); void scrollDisplayLeft(); void scrollDisplayRight(); - void printLeft(); - void printRight(); - void shiftLeft(); - void shiftRight(); - void shiftIncrement(); - void shiftDecrement(); + void leftToRight(); + void rightToLeft(); + void autoscroll(); + void noAutoscroll(); void createChar(uint8_t, uint8_t[]); void setCursor(uint8_t, uint8_t); -- cgit v1.2.3-18-g5258