mirror of
https://github.com/eclipse/upm.git
synced 2025-03-24 01:10:22 +03:00
ssd1327: various functions should return values
defects 377, 378, 379, 380 Signed-off-by: Jon Trulson <jtrulson@ics.com> Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
parent
dae5c67c02
commit
f8179328cf
@ -221,7 +221,7 @@ SSD1327::home()
|
|||||||
return setCursor(0, 0);
|
return setCursor(0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
mraa_result_t
|
void
|
||||||
SSD1327::setGrayLevel(uint8_t level)
|
SSD1327::setGrayLevel(uint8_t level)
|
||||||
{
|
{
|
||||||
grayHigh = (level << 4) & 0xF0;
|
grayHigh = (level << 4) & 0xF0;
|
||||||
@ -236,6 +236,7 @@ SSD1327::setGrayLevel(uint8_t level)
|
|||||||
mraa_result_t
|
mraa_result_t
|
||||||
SSD1327::writeChar(uint8_t value)
|
SSD1327::writeChar(uint8_t value)
|
||||||
{
|
{
|
||||||
|
mraa_result_t rv = MRAA_SUCCESS;
|
||||||
if (value < 0x20 || value > 0x7F) {
|
if (value < 0x20 || value > 0x7F) {
|
||||||
value = 0x20; // space
|
value = 0x20; // space
|
||||||
}
|
}
|
||||||
@ -250,10 +251,11 @@ SSD1327::writeChar(uint8_t value)
|
|||||||
data |= (bitOne) ? grayHigh : 0x00;
|
data |= (bitOne) ? grayHigh : 0x00;
|
||||||
data |= (bitTwo) ? grayLow : 0x00;
|
data |= (bitTwo) ? grayLow : 0x00;
|
||||||
|
|
||||||
m_i2c_lcd_control.writeReg(LCD_DATA, data);
|
rv = m_i2c_lcd_control.writeReg(LCD_DATA, data);
|
||||||
usleep(CMD_SLEEP - 2000);
|
usleep(CMD_SLEEP - 2000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
mraa_result_t
|
mraa_result_t
|
||||||
@ -266,35 +268,39 @@ SSD1327::setNormalDisplay()
|
|||||||
mraa_result_t
|
mraa_result_t
|
||||||
SSD1327::setHorizontalMode()
|
SSD1327::setHorizontalMode()
|
||||||
{
|
{
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0xA0); // remap to
|
mraa_result_t rv = MRAA_SUCCESS;
|
||||||
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0xA0); // remap to
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x42); // horizontal mode
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x42); // horizontal mode
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
|
|
||||||
// Row Address
|
// Row Address
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x75); // Set Row Address
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x75); // Set Row Address
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x00); // Start 0
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x00); // Start 0
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x5f); // End 95
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x5f); // End 95
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
|
|
||||||
// Column Address
|
// Column Address
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x15); // Set Column Address
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x15); // Set Column Address
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x08); // Start from 8th Column of driver
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x08); // Start from 8th Column of driver
|
||||||
// IC. This is 0th Column for OLED
|
// IC. This is 0th Column for OLED
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x37); // End at (8 + 47)th column. Each
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x37); // End at (8 + 47)th column. Each
|
||||||
// Column has 2 pixels(or segments)
|
// Column has 2 pixels(or segments)
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
mraa_result_t
|
mraa_result_t
|
||||||
SSD1327::setVerticalMode()
|
SSD1327::setVerticalMode()
|
||||||
{
|
{
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0xA0); // remap to
|
mraa_result_t rv = MRAA_SUCCESS;
|
||||||
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0xA0); // remap to
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
m_i2c_lcd_control.writeReg(LCD_CMD, 0x46); // Vertical mode
|
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x46); // Vertical mode
|
||||||
usleep(CMD_SLEEP);
|
usleep(CMD_SLEEP);
|
||||||
|
return rv;
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,7 @@ class SSD1327 : public I2CLcd
|
|||||||
* @param gray level from 0-255
|
* @param gray level from 0-255
|
||||||
* @return Result of operation
|
* @return Result of operation
|
||||||
*/
|
*/
|
||||||
mraa_result_t setGrayLevel(uint8_t level);
|
void setGrayLevel(uint8_t level);
|
||||||
/**
|
/**
|
||||||
* Write a string to LCD
|
* Write a string to LCD
|
||||||
*
|
*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user