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:
Jon Trulson 2015-06-10 15:59:37 -06:00 committed by Mihai Tudor Panu
parent dae5c67c02
commit f8179328cf
2 changed files with 19 additions and 13 deletions

View File

@ -221,7 +221,7 @@ SSD1327::home()
return setCursor(0, 0);
}
mraa_result_t
void
SSD1327::setGrayLevel(uint8_t level)
{
grayHigh = (level << 4) & 0xF0;
@ -236,6 +236,7 @@ SSD1327::setGrayLevel(uint8_t level)
mraa_result_t
SSD1327::writeChar(uint8_t value)
{
mraa_result_t rv = MRAA_SUCCESS;
if (value < 0x20 || value > 0x7F) {
value = 0x20; // space
}
@ -250,10 +251,11 @@ SSD1327::writeChar(uint8_t value)
data |= (bitOne) ? grayHigh : 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);
}
}
return rv;
}
mraa_result_t
@ -266,35 +268,39 @@ SSD1327::setNormalDisplay()
mraa_result_t
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);
m_i2c_lcd_control.writeReg(LCD_CMD, 0x42); // horizontal mode
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x42); // horizontal mode
usleep(CMD_SLEEP);
// 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);
m_i2c_lcd_control.writeReg(LCD_CMD, 0x00); // Start 0
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x00); // Start 0
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);
// 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);
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
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)
usleep(CMD_SLEEP);
return rv;
}
mraa_result_t
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);
m_i2c_lcd_control.writeReg(LCD_CMD, 0x46); // Vertical mode
rv = m_i2c_lcd_control.writeReg(LCD_CMD, 0x46); // Vertical mode
usleep(CMD_SLEEP);
return rv;
}

View File

@ -81,7 +81,7 @@ class SSD1327 : public I2CLcd
* @param gray level from 0-255
* @return Result of operation
*/
mraa_result_t setGrayLevel(uint8_t level);
void setGrayLevel(uint8_t level);
/**
* Write a string to LCD
*