An I2C text LCD library for Displaytronic ACM1602NI-FLW-FBW-M01 MOD by Zak
Fork of ACM1602NI by
Diff: ACM1602NI.h
- Revision:
- 8:661827681a12
- Parent:
- 7:728c03b52b79
diff -r 728c03b52b79 -r 661827681a12 ACM1602NI.h --- a/ACM1602NI.h Sat Jan 18 02:27:30 2014 +0000 +++ b/ACM1602NI.h Sat Feb 15 13:48:55 2014 +0000 @@ -23,12 +23,15 @@ * The device does not work with default I2C library due to its slow I2C responce. * This library adds some extra waits so that the device can answer to the I2C commands. * The interface is basically the same as TextLCD by Simon Ford. + * + * This LCD device is manufactured by Xiamen Zettler Electronics Co. Ltd. and distributed by + * Akizuki Denshi Tsusho Co. Ltd. + * http://akizukidenshi.com/catalog/g/gP-05693/ + * http://akizukidenshi.com/download/ds/xiamen/ACM1602NI-FLW-FBW-M01_DISPLAYTRONIC_%20SPEC%20VER1.2.pdf * * Example: * @code * #include "mbed.h" - * - * // I2C Text LCD: http://mbed.org/users/takuo/code/ACM1602NI/ * #include "ACM1602NI.h" * * // I2C pins: p9 = sda, p10 = scl @@ -38,15 +41,13 @@ * // I2C i2c(p9, p10); * // ACM1602NI lcd(i2c); * - * int main() - * { + * int main() { * lcd.printf("Hello, World!\n"); * lcd.printf("ACM1602NI\n"); * } * @endcode */ -class ACM1602NI : public Stream -{ +class ACM1602NI : public Stream { public: /** Create an ACM1602NI object connected to the specified I2C pins. * @@ -78,6 +79,21 @@ int rows(); int columns(); +#if DOXYGEN_ONLY + /** Write a character to the LCD + * + * @param c The character to write to the display + */ + int putc(int c); + + /** Write a formated string to the LCD + * + * @param format A printf-style format string, followed by the + * variables to use in formating the string. + */ + int printf(const char* format, ...); +#endif + protected: static const int i2c_addr = 0x50 << 1; static const int i2c_bit_wait_us = 20; @@ -94,9 +110,10 @@ int address(int column, int raw); void character(int column, int row, int c); + int writeBytes(const char *data, int length, bool repeated = false); - void writeCommand(int command); - void writeData(int data); + void writeCommand(char command); + void writeData(char data); }; #endif