| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 | 
							- /* grove_lcd.h - Public API for the Grove RGB LCD device */
 
- /*
 
-  * Copyright (c) 2015 Intel Corporation
 
-  *
 
-  * SPDX-License-Identifier: Apache-2.0
 
-  */
 
- #ifndef ZEPHYR_INCLUDE_DISPLAY_GROVE_LCD_H_
 
- #define ZEPHYR_INCLUDE_DISPLAY_GROVE_LCD_H_
 
- #ifdef __cplusplus
 
- extern "C" {
 
- #endif
 
- /**
 
-  * @brief Display Drivers
 
-  * @defgroup display_interfaces Display Drivers
 
-  * @{
 
-  * @}
 
-  */
 
- /**
 
-  * @brief Grove display APIs
 
-  * @defgroup grove_display Grove display APIs
 
-  * @ingroup display_interfaces
 
-  * @{
 
-  */
 
- #define GROVE_LCD_NAME			"GLCD"
 
- /**
 
-  *  @brief Send text to the screen
 
-  *
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *  @param data the ASCII text to display
 
-  *  @param size the length of the text in bytes
 
-  */
 
- void glcd_print(const struct device *port, char *data, uint32_t size);
 
- /**
 
-  *  @brief Set text cursor position for next additions
 
-  *
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *  @param col the column for the cursor to be moved to (0-15)
 
-  *  @param row the row it should be moved to (0 or 1)
 
-  */
 
- void glcd_cursor_pos_set(const struct device *port, uint8_t col, uint8_t row);
 
- /**
 
-  *  @brief Clear the current display
 
-  *
 
-  *  @param port Pointer to device structure for driver instance.
 
-  */
 
- void glcd_clear(const struct device *port);
 
- /* Defines for the GLCD_CMD_DISPLAY_SWITCH options */
 
- #define GLCD_DS_DISPLAY_ON		(1 << 2)
 
- #define GLCD_DS_DISPLAY_OFF		(0 << 2)
 
- #define GLCD_DS_CURSOR_ON		(1 << 1)
 
- #define GLCD_DS_CURSOR_OFF		(0 << 1)
 
- #define GLCD_DS_BLINK_ON		(1 << 0)
 
- #define GLCD_DS_BLINK_OFF		(0 << 0)
 
- /**
 
-  *  @brief Function to change the display state.
 
-  *  @details This function provides the user the ability to change the state
 
-  *  of the display as per needed. Controlling things like powering on or off
 
-  *  the screen, the option to display the cursor or not, and the ability to
 
-  *  blink the cursor.
 
-  *
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *  @param opt An 8bit bitmask of GLCD_DS_* options.
 
-  *
 
-  */
 
- void glcd_display_state_set(const struct device *port, uint8_t opt);
 
- /**
 
-  * @brief return the display feature set associated with the device
 
-  *
 
-  * @param port the Grove LCD to get the display features set
 
-  *
 
-  * @return the display feature set associated with the device.
 
-  */
 
- uint8_t glcd_display_state_get(const struct device *port);
 
- /* Defines for the GLCD_CMD_INPUT_SET to change text direction */
 
- #define GLCD_IS_SHIFT_INCREMENT	(1 << 1)
 
- #define GLCD_IS_SHIFT_DECREMENT	(0 << 1)
 
- #define GLCD_IS_ENTRY_LEFT	(1 << 0)
 
- #define GLCD_IS_ENTRY_RIGHT	(0 << 0)
 
- /**
 
-  *  @brief Function to change the input state.
 
-  *  @details This function provides the user the ability to change the state
 
-  *  of the text input. Controlling things like text entry from the left or
 
-  *  right side, and how far to increment on new text
 
-  *
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *  @param opt A bitmask of GLCD_IS_* options
 
-  *
 
-  */
 
- void glcd_input_state_set(const struct device *port, uint8_t opt);
 
- /**
 
-  * @brief return the input set associated with the device
 
-  *
 
-  * @param port the Grove LCD to get the input features set
 
-  *
 
-  * @return the input set associated with the device.
 
-  */
 
- uint8_t glcd_input_state_get(const struct device *port);
 
- /* Defines for the LCD_FUNCTION_SET */
 
- #define GLCD_FS_8BIT_MODE	(1 << 4)
 
- #define GLCD_FS_ROWS_2		(1 << 3)
 
- #define GLCD_FS_ROWS_1		(0 << 3)
 
- #define GLCD_FS_DOT_SIZE_BIG	(1 << 2)
 
- #define GLCD_FS_DOT_SIZE_LITTLE	(0 << 2)
 
- /* Bits 0, 1 are not defined for this register */
 
- /**
 
-  *  @brief Function to set the functional state of the display.
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *  @param opt A bitmask of GLCD_FS_* options
 
-  *
 
-  *  @details This function provides the user the ability to change the state
 
-  *  of the display as per needed.  Controlling things like the number of rows,
 
-  *  dot size, and text display quality.
 
-  */
 
- void glcd_function_set(const struct device *port, uint8_t opt);
 
- /**
 
-  * @brief return the function set associated with the device
 
-  *
 
-  * @param port the Grove LCD to get the functions set
 
-  *
 
-  * @return the function features set associated with the device.
 
-  */
 
- uint8_t glcd_function_get(const struct device *port);
 
- /* Available color selections */
 
- #define GROVE_RGB_WHITE		0
 
- #define GROVE_RGB_RED		1
 
- #define GROVE_RGB_GREEN		2
 
- #define GROVE_RGB_BLUE		3
 
- /**
 
-  *  @brief Set LCD background to a predefined color
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *  @param color One of the predefined color options
 
-  */
 
- void glcd_color_select(const struct device *port, uint8_t color);
 
- /**
 
-  *  @brief Set LCD background to custom RGB color value
 
-  *
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *  @param r A numeric value for the red color (max is 255)
 
-  *  @param g A numeric value for the green color (max is 255)
 
-  *  @param b A numeric value for the blue color (max is 255)
 
-  */
 
- void glcd_color_set(const struct device *port, uint8_t r, uint8_t g,
 
- 		    uint8_t b);
 
- /**
 
-  *  @brief Initialize the Grove LCD panel
 
-  *
 
-  *  @param port Pointer to device structure for driver instance.
 
-  *
 
-  *  @return Returns 0 if all passes
 
-  */
 
- int glcd_initialize(const struct device *port);
 
- /**
 
-  * @}
 
-  */
 
- #ifdef __cplusplus
 
- }
 
- #endif
 
- #endif /* ZEPHYR_INCLUDE_DISPLAY_GROVE_LCD_H_ */
 
 
  |