X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Flcd%2Flcm1602.h;h=386def9214b0012f9c67de7bc461eb6b1458a775;hb=9c9b273b5a807f24da90435c4c50282d2bf01b5d;hp=0e8920cd96dddc8cfa6bbe9671b4ff4f6b0c11c9;hpb=586acf7502f9724cbb3b2524176e891c3318b33e;p=contrib%2Fupm.git diff --git a/src/lcd/lcm1602.h b/src/lcd/lcm1602.h index 0e8920c..386def9 100644 --- a/src/lcd/lcm1602.h +++ b/src/lcd/lcm1602.h @@ -32,22 +32,59 @@ namespace upm { +/** + * @brief C++ API for LCM1602 i2c controller for HD44780 based displays + * + * This supports all sizes of HD44780 displays from 16x2 to 4x20, the + * controller has no idea of the actual display hardware so will let you write + * further than you can see + * + * @snippet lcm-lcd.cxx Interesting + */ class Lcm1602 : public I2CLcd { public: - /** LCM1602 Constructor. - * Calls MRAA initialisation functions. - * @param bus i2c bus to use - * @param address the slave address the lcd is registered on. - */ + /** + * Lcm1602 Constructor, calls libmraa initialisation functions + * + * @param bus i2c bus to use + * @param address the slave address the lcd is registered on + */ Lcm1602(int bus, int address); + /** + * Lcm1602 Destructor + */ ~Lcm1602(); - mraa_result_t write (std::string msg); - mraa_result_t setCursor (int row, int column); - mraa_result_t clear (); - mraa_result_t home (); + /** + * Write a string to LCD + * + * @param msg The std::string to write to display, note only ascii + * chars are supported + * @return Result of operation + */ + mraa_result_t write(std::string msg); + /** + * Set cursor to a coordinate + * + * @param row The row to set cursor to + * @param column The column to set cursor to + * @return Result of operation + */ + mraa_result_t setCursor(int row, int column); + /** + * Clear display from characters + * + * @return Result of operatio + */ + mraa_result_t clear(); + /** + * Return to coordinate 0,0 + * + * @return Result of operation + */ + mraa_result_t home(); private : - mraa_result_t send (uint8_t value, int mode); + mraa_result_t send(uint8_t value, int mode); mraa_result_t write4bits(uint8_t value); mraa_result_t expandWrite(uint8_t value); mraa_result_t pulseEnable(uint8_t value);