I2C 1.12" rectangular OLED display. More...
#include <sg_104030008_OLED112.hpp>
Public Types | |
enum | EOrientation { EOrientation::kInvalid = 0, EOrientation::kLandscape, EOrientation::kPortrait, EOrientation::kLandscape180, EOrientation::kPortrait180 } |
Orientation for the display. More... | |
typedef uint8_t | I2CBus |
I2C bus. More... | |
typedef uint8_t | I2CAddress |
I2C addresses. More... | |
typedef uint8_t | I2CRegister |
I2C register. More... | |
typedef std::vector< uint8_t > | I2CBlock |
Block of sequential bytes to read or write. More... | |
Public Member Functions | |
virtual | ~OLED112 (void) |
Destructor. More... | |
OLED112 (const std::string &name="", const SG::GroveI2CDigital::I2CAddress addr=0) | |
Constructor. If not specified, the I2C address will be obtained using get_address_from_type(). More... | |
virtual size_t | pixel_width (void) const |
Get the width in pixels. This always returns 128 for the 1.12" OLED. More... | |
virtual size_t | pixel_height (void) const |
Get the height in pixels. This always returns 64 for the 1.12" OLED. More... | |
virtual size_t | pixel_depth (void) const |
Get the number of bits per pixel. This always returns 1 (meaning each pixel is either on or off ) for the 1.12" OLED. More... | |
virtual size_t | memory_width (void) const |
Get the number of pixels that can be stored in memory. This always returns 128 for the 1.12" OLED. More... | |
virtual size_t | memory_height (void) const |
Get the number of pixels that can be stored in memory. This always returns 64 for the 1.12" OLED. More... | |
virtual size_t | memory_depth (void) const |
Get the number of bits each pixel occupies in memory. This always returns 1 for the 1.12" OLED. More... | |
virtual OLED112 & | reset (void) |
Reset the OLED. More... | |
virtual OLED112 & | clear_screen (void) |
Set all of the GDDRAM to 0x00 to clear the screen. More... | |
virtual CommonOLED & | turn_on (void) |
Turn ON the OLED. More... | |
virtual CommonOLED & | turn_off (void) |
turn OFF the OLED. More... | |
virtual CommonOLED & | set_contrast (const uint8_t level=0x7f) |
Set the contrast level to a value between 0 and 255. More... | |
virtual CommonOLED & | lock (void) |
Lock the OLED driver IC MCU. Once locked, the only command that will be accepted is unlock(). All other commands and memory access are ignored. More... | |
virtual CommonOLED & | unlock (void) |
Unlock the OLED driver IC MCU. More... | |
virtual CommonOLED & | start_scrolling (void) |
Start horizontal scrolling. Multiple calls can be made to start_scrolling() and stop_scrolling() to start and stop scrolling multiple times. More... | |
virtual CommonOLED & | stop_scrolling (void) |
virtual CommonOLED & | send_command (const uint8_t cmd) |
Stop horizontal scrolling. More... | |
virtual CommonOLED & | send_command (const uint8_t cmd, const uint8_t value) |
Send a command with an additional 1-byte parameter. More... | |
virtual CommonOLED & | set_XY (const uint8_t x=0, const uint8_t y=0) |
virtual CommonOLED & | flood (const I2CBlock &pattern) |
Repeat the given pattern until it fills up the entire OLED. More... | |
virtual CommonOLED & | fade_white_to_black (const size_t milliseconds_between_transitions=500) |
Fade from white to black. More... | |
virtual CommonOLED & | fade_black_to_white (const size_t milliseconds_between_transitions=500) |
Fade from black to white. More... | |
virtual I2CBlock | get_display_bitmap (void) |
Get the full display bitmap. More... | |
virtual CommonOLED & | set_display_bitmap (const I2CBlock &block) |
Set the full display bitmap. More... | |
virtual EOrientation | get_orientation (void) const |
Return the current orientation. The default after reset() is EOrientation::kLandscape. More... | |
virtual bool | is_analog (void) const |
This is always false for GroveI2CDigital. More... | |
virtual bool | is_digital (void) const |
This is always true for GroveI2CDigital. More... | |
I2CAddress | get_address_from_type (void) const |
Get the address for this Grove type. More... | |
virtual uint8_t | read8 (const I2CRegister reg) |
Read a byte (8 bits) from the specificed register. More... | |
virtual uint16_t | read16 (const I2CRegister reg) |
Read a 16-bit word from the specified register. More... | |
virtual uint16_t | read12 (const I2CRegister reg) |
Read a 16-bit word from the specified register, but only keep the bottom 12 bits. More... | |
virtual I2CBlock | read_block (const I2CRegister reg) |
Read a consecutive block of bytes, anywhere between 1 and 32 bytes in length. More... | |
virtual GroveI2CDigital & | write_byte (const uint8_t value) |
Write a single byte to the I2C bus. More... | |
virtual GroveI2CDigital & | write_block (const I2CRegister reg, const I2CBlock &v) |
Write a consecutive block of bytes, anywhere between 1 and 32 bytes in length. More... | |
virtual GroveI2CDigital & | write_block (const I2CBlock &v) |
Write a consecutive block of bytes directly to the I2C file handle. More... | |
virtual bool | is_grove_uart (void) const |
This is always false for GroveI2C. More... | |
virtual bool | is_grove_i2c (void) const |
This is always true for GroveI2C. More... | |
virtual bool | is_grove_gpio (void) const |
This is always false for GroveI2C. More... | |
virtual uint32_t | get_sku (void) const |
Return a guess as to the Seeed SKU number based on the grove type. More... | |
virtual std::string | get_type_name (void) const |
Return a short text string representing the grove type. More... | |
virtual EGroveType | get_type (void) const |
Return the grove type. More... | |
virtual std::string | get_name (void) const |
Return the user-supplied name. More... | |
virtual std::string | get_description (void) const |
Return a multi-word 1-line description of this object. More... | |
virtual OLED112 & | normal_display (void) |
Toggle the various display modes. More... | |
virtual OLED112 & | all_on_display (void) |
All pixels set ON . More... | |
virtual OLED112 & | all_off_display (void) |
All pixels set OFF . More... | |
virtual OLED112 & | do_not_invert_display (void) |
Do not invert display. More... | |
virtual OLED112 & | invert_display (void) |
Invert display mode. More... | |
virtual CommonOLED & | set_font (const Font::EType type=SG::Font::EType::k8x8CapRouge) |
Set a font to use when writing text to the OLED. By default, if not explicitely set, the font used will be SG::Font::CapRouge. More... | |
virtual CommonOLED & | set_font (std::shared_ptr< SG::Font::Monospace > font_to_use) |
virtual CommonOLED & | show (const char c) |
Display the given text. More... | |
virtual CommonOLED & | show (const std::string &str) |
Display the given text. More... | |
bool | is_portrait (void) const |
Quickly determine if the OLED is in portrait or landscape mode. More... | |
bool | is_landscape (void) const |
Quickly determine if the OLED is in portrait or landscape mode. More... | |
virtual CommonOLED & | rotate_90 (void) |
Set the orientation for the display. More... | |
virtual CommonOLED & | rotate_180 (void) |
Set the orientation for the display. More... | |
virtual CommonOLED & | rotate_270 (void) |
Set the orientation for the display. More... | |
virtual CommonOLED & | set_orientation (const EOrientation new_orientation=EOrientation::kLandscape) |
virtual GroveI2CDigital & | write8 (const I2CRegister reg, const uint8_t value) |
Write the given value to the specified register. More... | |
virtual GroveI2CDigital & | write16 (const I2CRegister reg, const uint16_t value) |
bool | operator== (const GroveBase &rhs) const |
Test object equality. More... | |
bool | operator!= (const GroveBase &rhs) const |
Test object equality. More... | |
Static Public Member Functions | |
static I2CBus | detect_i2c_bus_number (const bool force_detect=false, const int force_bus_number=-1) |
Detect the I2C bus to use to talk to Grove I2C devices. More... | |
static I2CAddress | get_address_from_type (const EGroveType &type) |
Get the default I2C address for a given type. More... | |
Public Attributes | |
I2CBus | i2c_bus_number |
The bus number to use for I2C Grove twigs. More... | |
I2CAddress | i2c_address |
The I2C address used to communicate with the Grove device. More... | |
int | i2c_file_handle |
The file handle to /dev/i2c-* used to communicate with the Grove device. More... | |
EGroveType | grove_type |
Grove type. More... | |
std::string | grove_name |
User-supplied name. More... | |
Protected Attributes | |
EOrientation | orientation |
Landscape or portrait mode. More... | |
std::shared_ptr< Font::Monospace > | font |
Font used when writing text to the OLED. Default is SG::Font::CapRouge. More... | |
Font::Monospace::Fontmap | font_map |
Font used when writing text to the OLED. Default is SG::Font::CapRouge. More... | |
I2C 1.12" rectangular OLED display.
This I2C Grove twig has 128 pixels across and 64 pixels in height, each of which is exactly 1 bit in depth. With a typical 8x8 font, this means you can display 8 lines of text, each one with 16 characters, for a total of 128 characters of text. This OLED is exactly half the height of OLED096.
The following measurements are approximate:
Description | Dimension (Imperial) | Dimension (Metric) |
---|---|---|
total width | 1.5" | 3.8 cm |
total height | 0.75" | 1.9 cm |
display width | 1" | 2.5 cm |
display height | 0.5" | 1.3 cm |
Description | Image |
---|---|
OLED with sample text. |
Connect the OLED display to the left-hand-side I2C interface. The I2C address for this I2C device is 0x3c
.
|
inherited |
I2C addresses.
|
inherited |
Block of sequential bytes to read or write.
|
inherited |
I2C bus.
|
inherited |
I2C register.
|
stronginherited |
|
virtual |
Destructor.
SG::OLED112::OLED112 | ( | const std::string & | name = "" , |
const SG::GroveI2CDigital::I2CAddress | addr = 0 |
||
) |
Constructor. If not specified, the I2C address will be obtained using get_address_from_type().
|
inlinevirtual |
All pixels set OFF
.
Implements SG::CommonOLED.
|
inlinevirtual |
All pixels set ON
.
Implements SG::CommonOLED.
References SG::CommonOLED::send_command().
|
virtual |
Set all of the GDDRAM to 0x00 to clear the screen.
Implements SG::CommonOLED.
References SG::CommonOLED::flood(), pixel_height(), pixel_width(), and SG::CommonOLED::stop_scrolling().
Referenced by invert_display(), and reset().
|
staticinherited |
Detect the I2C bus to use to talk to Grove I2C devices.
This is normally 1
or 2
. The detection consists of looking at /dev/i2c* devices.
[in] | force_detect | The detected bus number is usually remembered to prevent having to re-detect it every time a new GroveI2C object is instantiated. If force_detect is set to true , then this will force GroveI2C to ignore the previously cached bus number and re-detect the I2C bus. |
[in] | force_bus_number | If an explicit bus number should be used, then force_bus_number can be set to the correct bus value. This will prevent calls to detect_i2c_bus_number() from attempting to auto-detect the I2C bus. Setting the I2C bus number this way wont change existing GroveI2C objects that have already been instantiated. Only new objects will use the new bus number. The actual bus number used by specific objects is i2c_bus_number. |
std::system_error | if /dev cannot be opened. |
std::runtime_error | if the I2C bus cannot be found in /dev. |
Referenced by SG::GroveI2CDigital::is_digital().
|
inlinevirtual |
Do not invert display.
References SG::CommonOLED::send_command().
Referenced by reset().
|
virtualinherited |
Fade from black to white.
There are 4 transitions, so the default 500 millisecond pause between each transition means a total time of 2 seconds before this function returns.
References SG::CommonOLED::flood().
Referenced by reset(), and SG::CommonOLED::stop_scrolling().
|
virtualinherited |
Fade from white to black.
There are 4 transitions, so the default 500 millisecond pause between each transition means a total time of 2 seconds before this function returns.
References SG::CommonOLED::flood().
Referenced by reset(), and SG::CommonOLED::stop_scrolling().
|
virtualinherited |
Repeat the given pattern until it fills up the entire OLED.
References SG::CommonOLED::clear_screen(), SG::CommonOLED::pixel_height(), SG::CommonOLED::pixel_width(), SG::CommonOLED::set_XY(), and SG::GroveI2CDigital::write_block().
Referenced by clear_screen(), SG::CommonOLED::fade_black_to_white(), SG::CommonOLED::fade_white_to_black(), and SG::CommonOLED::stop_scrolling().
|
staticinherited |
Get the default I2C address for a given type.
Note that several Grove types have multiple addresses. This only returns the first address.
References SG::k3AxisDigitalAccelerometer16g, SG::k3AxisDigitalAccelerometer1_5g, SG::k3AxisDigitalAccelerometer400g, SG::k3AxisDigitalCompass, SG::k3AxisDigitalGyro, SG::k6AxisAccelerometerAndCompassV1, SG::k6AxisAccelerometerAndCompassV2, SG::kBarometerHighAccuracy, SG::kBarometerSensor, SG::kBarometerSensorBMP180, SG::kDigitalInfraredTemperatureSensor, SG::kDigitalLightSensor, SG::kGestureV1, SG::kI2CADC, SG::kI2CColorSensor, SG::kI2CFMReceiver, SG::kI2CMotorDriverV10, SG::kI2CMotorDriverV12, SG::kIMU10DOF, SG::kIMU9DOFV1, SG::kIMU9DOFV2, SG::kLCDRGBBacklight, SG::kMultichannelGasSensor, SG::kNFCTag, SG::kOLEDDisplay0_96, SG::kOLEDDisplay1_12, SG::kQTouchSensor, SG::kRTC, SG::kTemperatureAndHumiditySensor, and SG::kTouchSensor.
|
inlineinherited |
Get the address for this Grove type.
References SG::GroveI2CDigital::get_address_from_type(), SG::GroveBase::get_type(), SG::GroveI2CDigital::read16(), and SG::GroveI2CDigital::read8().
Referenced by SG::GroveI2CDigital::get_address_from_type(), SG::GroveI2CDigital::GroveI2CDigital(), and SG::GroveI2CDigital::is_digital().
|
virtualinherited |
Return a multi-word 1-line description of this object.
References SG::demangle(), SG::GroveBase::get_name(), SG::GroveBase::get_sku(), SG::GroveBase::get_type_name(), SG::GroveBase::is_grove_gpio(), SG::GroveBase::is_grove_i2c(), SG::GroveBase::is_grove_uart(), and SG::BeagleBone::Detect::to_string().
Referenced by buzzer(), chainable_rgb_led(), common_oled(), SG::GroveBase::get_name(), SG::GroveI2CDigital::GroveI2CDigital(), SG::GroveI2CDigital::read16(), SG::GroveI2CDigital::read8(), SG::GroveI2CDigital::read_block(), SG::CommonOLED::set_display_bitmap(), SG::CommonOLED::set_orientation(), temperature(), variable_led(), SG::GroveI2CDigital::write16(), SG::GroveI2CDigital::write8(), SG::GroveI2CDigital::write_block(), and SG::GroveI2CDigital::write_byte().
|
virtualinherited |
Get the full display bitmap.
The display contains 128 x 128 pixels, and each pixels has 4 bits, for a total of 65536 bits, or 8192 bytes (8 KiB).
Referenced by SG::CommonOLED::stop_scrolling().
|
inlinevirtualinherited |
Return the user-supplied name.
References SG::GroveBase::get_description(), SG::GroveBase::grove_name, SG::GroveBase::is_grove_gpio(), SG::GroveBase::is_grove_i2c(), and SG::GroveBase::is_grove_uart().
Referenced by SG::GroveBase::get_description(), SG::GroveBase::operator=(), and SG::GroveBase::operator==().
|
inlinevirtualinherited |
Return the current orientation. The default after reset() is EOrientation::kLandscape.
References SG::CommonOLED::orientation.
|
inlinevirtualinherited |
Return a guess as to the Seeed SKU number based on the grove type.
References SG::get_sku_from_grove_type(), and SG::GroveBase::grove_type.
Referenced by SG::GroveBase::get_description().
|
inlinevirtualinherited |
Return the grove type.
References SG::GroveBase::grove_type.
Referenced by SG::GroveI2CDigital::get_address_from_type(), SG::GroveBase::operator=(), and SG::GroveBase::operator==().
|
inlinevirtualinherited |
Return a short text string representing the grove type.
References SG::GroveBase::grove_type, and SG::to_string().
Referenced by SG::GroveBase::get_description().
|
inlinevirtual |
Invert display mode.
Implements SG::CommonOLED.
References clear_screen(), reset(), and SG::CommonOLED::send_command().
|
inlinevirtualinherited |
This is always false
for GroveI2CDigital.
Implements SG::GroveI2C.
|
inlinevirtualinherited |
This is always true
for GroveI2CDigital.
Implements SG::GroveI2C.
References SG::GroveI2CDigital::detect_i2c_bus_number(), and SG::GroveI2CDigital::get_address_from_type().
|
inlinevirtualinherited |
This is always false
for GroveI2C.
Implements SG::GroveBase.
References SG::GroveI2C::is_analog(), and SG::GroveI2C::is_digital().
|
inlinevirtualinherited |
This is always true
for GroveI2C.
Implements SG::GroveBase.
|
inlinevirtualinherited |
This is always false
for GroveI2C.
Implements SG::GroveBase.
|
inlineinherited |
Quickly determine if the OLED is in portrait or landscape mode.
References SG::CommonOLED::kLandscape, SG::CommonOLED::kLandscape180, SG::CommonOLED::orientation, SG::CommonOLED::rotate_180(), SG::CommonOLED::rotate_270(), SG::CommonOLED::rotate_90(), and SG::CommonOLED::set_orientation().
|
inlineinherited |
Quickly determine if the OLED is in portrait or landscape mode.
References SG::CommonOLED::kPortrait, SG::CommonOLED::kPortrait180, and SG::CommonOLED::orientation.
Referenced by SG::CommonOLED::show().
|
inlinevirtualinherited |
Lock the OLED driver IC MCU. Once locked, the only command that will be accepted is unlock(). All other commands and memory access are ignored.
References SG::CommonOLED::send_command().
Referenced by common_oled().
|
inlinevirtual |
Get the number of bits each pixel occupies in memory. This always returns 1
for the 1.12" OLED.
Implements SG::CommonOLED.
|
inlinevirtual |
Get the number of pixels that can be stored in memory. This always returns 64
for the 1.12" OLED.
Implements SG::CommonOLED.
|
inlinevirtual |
Get the number of pixels that can be stored in memory. This always returns 128
for the 1.12" OLED.
Implements SG::CommonOLED.
|
inlinevirtual |
Toggle the various display modes.
Normal display mode.
Implements SG::CommonOLED.
References SG::CommonOLED::send_command().
Referenced by reset().
|
inlineinherited |
Test object equality.
References SG::GroveBase::operator==().
|
inherited |
Test object equality.
References SG::GroveBase::get_name(), and SG::GroveBase::get_type().
Referenced by SG::GroveBase::operator!=(), SG::Buzzer::operator==(), SG::TemperatureAndHumiditySensor::operator==(), SG::TemperatureSensor::operator==(), and SG::I2CADC::operator==().
|
inlinevirtual |
Get the number of bits per pixel. This always returns 1
(meaning each pixel is either on
or off
) for the 1.12" OLED.
Implements SG::CommonOLED.
|
inlinevirtual |
Get the height in pixels. This always returns 64
for the 1.12" OLED.
Implements SG::CommonOLED.
Referenced by clear_screen().
|
inlinevirtual |
Get the width in pixels. This always returns 128
for the 1.12" OLED.
Implements SG::CommonOLED.
Referenced by clear_screen().
|
inlinevirtualinherited |
Read a 16-bit word from the specified register, but only keep the bottom 12 bits.
Some devices such as the I2CADC return 12-bit values.
References SG::GroveI2CDigital::read16(), SG::GroveI2CDigital::read_block(), SG::GroveI2CDigital::write16(), SG::GroveI2CDigital::write8(), SG::GroveI2CDigital::write_block(), and SG::GroveI2CDigital::write_byte().
Referenced by SG::I2CADC::read12().
|
virtualinherited |
Read a 16-bit word from the specified register.
std::system_error | if the register cannot be read. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, and SG::GroveI2CDigital::i2c_file_handle.
Referenced by SG::GroveI2CDigital::get_address_from_type(), and SG::GroveI2CDigital::read12().
|
virtualinherited |
Read a byte (8 bits) from the specificed register.
std::system_error | if the register cannot be read. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, and SG::GroveI2CDigital::i2c_file_handle.
Referenced by SG::GroveI2CDigital::get_address_from_type(), SG::ThreeAxisDigitalCompass::get_config(), SG::ThreeAxisDigitalCompass::get_data(), SG::ThreeAxisDigitalCompass::get_mode(), SG::ThreeAxisDigitalCompass::get_status(), and SG::I2CADC::read8().
|
virtualinherited |
Read a consecutive block of bytes, anywhere between 1 and 32 bytes in length.
std::system_error | if the register cannot be read. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, and SG::GroveI2CDigital::i2c_file_handle.
Referenced by SG::GroveI2CDigital::read12().
|
virtual |
Reset the OLED.
The OLED112 uses the Solomon Systech SSD1308 (128x64 dot matrix). Inspiration for the commands in reset()
came from LY190-128064.pdf section 9.4. Additional details came from SSD1308_1.0.pdf sections 8-9, pages 27-44.
Implements SG::CommonOLED.
References clear_screen(), do_not_invert_display(), SG::CommonOLED::fade_black_to_white(), SG::CommonOLED::fade_white_to_black(), SG::Font::k8x8CapRouge, SG::Font::k8x8CourierNew, SG::CommonOLED::kLandscape, normal_display(), SG::CommonOLED::send_command(), SG::CommonOLED::set_contrast(), SG::CommonOLED::set_font(), SG::CommonOLED::set_orientation(), SG::CommonOLED::set_XY(), SG::CommonOLED::show(), SG::CommonOLED::stop_scrolling(), SG::CommonOLED::turn_off(), SG::CommonOLED::turn_on(), and SG::CommonOLED::unlock().
Referenced by invert_display().
|
virtualinherited |
Set the orientation for the display.
References SG::CommonOLED::kLandscape, SG::CommonOLED::kLandscape180, SG::CommonOLED::kPortrait, SG::CommonOLED::kPortrait180, SG::CommonOLED::orientation, and SG::CommonOLED::set_orientation().
Referenced by SG::CommonOLED::is_landscape().
|
virtualinherited |
Set the orientation for the display.
References SG::CommonOLED::kLandscape, SG::CommonOLED::kLandscape180, SG::CommonOLED::kPortrait, SG::CommonOLED::kPortrait180, SG::CommonOLED::orientation, and SG::CommonOLED::set_orientation().
Referenced by SG::CommonOLED::is_landscape().
|
virtualinherited |
Set the orientation for the display.
References SG::CommonOLED::kLandscape, SG::CommonOLED::kLandscape180, SG::CommonOLED::kPortrait, SG::CommonOLED::kPortrait180, SG::CommonOLED::orientation, and SG::CommonOLED::set_orientation().
Referenced by SG::CommonOLED::is_landscape().
|
virtualinherited |
Stop horizontal scrolling.
References SG::GroveI2CDigital::write_block().
Referenced by all_on_display(), do_not_invert_display(), invert_display(), SG::CommonOLED::lock(), normal_display(), reset(), SG::CommonOLED::set_contrast(), SG::CommonOLED::start_scrolling(), SG::CommonOLED::stop_scrolling(), SG::CommonOLED::turn_off(), SG::CommonOLED::turn_on(), and SG::CommonOLED::unlock().
|
virtualinherited |
Send a command with an additional 1-byte parameter.
References SG::GroveI2CDigital::write_block().
|
inlinevirtualinherited |
Set the contrast level to a value between 0 and 255.
[in] | level | Default level is 127 (0x7f). 0 is dark, and 255 is bright. |
References SG::CommonOLED::send_command().
Referenced by common_oled(), and reset().
|
virtualinherited |
Set the full display bitmap.
[in] | block | Must be exactly 8192 bytes to represent 128 x 128 pixels x 4 bits grayscale. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::write_block(), and SG::GroveI2CDigital::write_byte().
Referenced by SG::CommonOLED::stop_scrolling().
|
virtualinherited |
Set a font to use when writing text to the OLED. By default, if not explicitely set, the font used will be SG::Font::CapRouge.
Fonts included with SG++:
References SG::Font::get().
Referenced by SG::CommonOLED::CommonOLED(), reset(), and SG::CommonOLED::stop_scrolling().
|
virtualinherited |
For example:
References SG::CommonOLED::font, and SG::CommonOLED::font_map.
|
virtualinherited |
std::invalid_argument | if the orientation is invalid. |
References SG::GroveBase::get_description(), SG::CommonOLED::kLandscape, SG::CommonOLED::kLandscape180, SG::CommonOLED::kPortrait, SG::CommonOLED::kPortrait180, SG::CommonOLED::orientation, SG::CommonOLED::stop_scrolling(), SG::BeagleBone::Detect::to_string(), and SG::GroveI2CDigital::write_block().
Referenced by SG::CommonOLED::is_landscape(), reset(), SG::CommonOLED::rotate_180(), SG::CommonOLED::rotate_270(), and SG::CommonOLED::rotate_90().
|
virtualinherited |
Referenced by SG::CommonOLED::flood(), reset(), and SG::CommonOLED::stop_scrolling().
|
virtualinherited |
Display the given text.
std::runtime_error | if the font bitmap is the wrong size. |
References SG::CommonOLED::font, SG::CommonOLED::font_map, SG::CommonOLED::is_portrait(), SG::BeagleBone::Detect::to_string(), and SG::GroveI2CDigital::write_block().
Referenced by reset(), SG::CommonOLED::show(), and SG::CommonOLED::stop_scrolling().
|
virtualinherited |
Display the given text.
std::runtime_error | if the font bitmap is the wrong size. |
References SG::CommonOLED::show().
|
inlinevirtualinherited |
Start horizontal scrolling. Multiple calls can be made to start_scrolling() and stop_scrolling() to start and stop scrolling multiple times.
References SG::CommonOLED::send_command().
Referenced by common_oled().
|
inlinevirtualinherited |
References SG::CommonOLED::fade_black_to_white(), SG::CommonOLED::fade_white_to_black(), SG::CommonOLED::flood(), SG::CommonOLED::get_display_bitmap(), SG::Font::k8x8CapRouge, SG::CommonOLED::send_command(), SG::CommonOLED::set_display_bitmap(), SG::CommonOLED::set_font(), SG::CommonOLED::set_XY(), and SG::CommonOLED::show().
Referenced by clear_screen(), common_oled(), reset(), and SG::CommonOLED::set_orientation().
|
inlinevirtualinherited |
turn OFF
the OLED.
References SG::CommonOLED::send_command().
Referenced by common_oled(), and reset().
|
inlinevirtualinherited |
Turn ON
the OLED.
References SG::CommonOLED::send_command().
Referenced by common_oled(), SG::OLED096::reset(), and reset().
|
inlinevirtualinherited |
Unlock the OLED driver IC MCU.
References SG::CommonOLED::send_command().
Referenced by common_oled(), and reset().
|
virtualinherited |
std::system_error | if the value cannot be written. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, and SG::GroveI2CDigital::i2c_file_handle.
Referenced by SG::GroveI2CDigital::read12(), and SG::I2CADC::write16().
|
virtualinherited |
Write the given value to the specified register.
std::system_error | if the value cannot be written. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, and SG::GroveI2CDigital::i2c_file_handle.
Referenced by SG::GroveI2CDigital::read12(), SG::ThreeAxisDigitalCompass::set_config(), SG::ThreeAxisDigitalCompass::set_mode(), and SG::I2CADC::write8().
|
virtualinherited |
Write a consecutive block of bytes, anywhere between 1 and 32 bytes in length.
std::length_error | if the block is too long to write. |
std::system_error | if the block failed to write. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, SG::GroveI2CDigital::i2c_file_handle, and SG::BeagleBone::Detect::to_string().
Referenced by SG::CommonOLED::flood(), SG::GroveI2CDigital::read12(), SG::OLED096::reset(), SG::CommonOLED::send_command(), SG::CommonOLED::set_display_bitmap(), SG::CommonOLED::set_orientation(), and SG::CommonOLED::show().
|
virtualinherited |
Write a consecutive block of bytes directly to the I2C file handle.
std::system_error | if the block failed to write. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, SG::GroveI2CDigital::i2c_file_handle, and SG::BeagleBone::Detect::to_string().
|
virtualinherited |
Write a single byte to the I2C bus.
std::system_error | if the value cannot be writen. |
References SG::GroveBase::get_description(), SG::GroveI2CDigital::i2c_address, and SG::GroveI2CDigital::i2c_file_handle.
Referenced by SG::OLED096::all_off_display(), SG::OLED096::all_on_display(), SG::OLED096::invert_display(), SG::OLED096::normal_display(), SG::GroveI2CDigital::read12(), and SG::CommonOLED::set_display_bitmap().
|
protectedinherited |
Font used when writing text to the OLED. Default is SG::Font::CapRouge.
Referenced by SG::CommonOLED::set_font(), and SG::CommonOLED::show().
|
protectedinherited |
Font used when writing text to the OLED. Default is SG::Font::CapRouge.
Referenced by SG::CommonOLED::set_font(), and SG::CommonOLED::show().
|
inherited |
User-supplied name.
Referenced by SG::GroveBase::get_name(), and SG::GroveBase::operator=().
|
inherited |
Grove type.
Referenced by SG::GroveBase::get_sku(), SG::GroveBase::get_type(), SG::GroveBase::get_type_name(), and SG::GroveBase::operator=().
|
inherited |
The I2C address used to communicate with the Grove device.
Referenced by SG::GroveI2CDigital::GroveI2CDigital(), SG::I2CADC::operator==(), SG::GroveI2CDigital::read16(), SG::GroveI2CDigital::read8(), SG::GroveI2CDigital::read_block(), SG::GroveI2CDigital::write16(), SG::GroveI2CDigital::write8(), SG::GroveI2CDigital::write_block(), and SG::GroveI2CDigital::write_byte().
|
inherited |
The bus number to use for I2C Grove twigs.
The exposed I2C bus is usually 1
or 2
. This is normally auto-detected by detect_i2c_bus_number() called by the constructor, and doesn't need to be manually set.
Referenced by SG::GroveI2CDigital::GroveI2CDigital().
|
inherited |
The file handle to /dev/i2c-* used to communicate with the Grove device.
Referenced by SG::GroveI2CDigital::GroveI2CDigital(), SG::GroveI2CDigital::read16(), SG::GroveI2CDigital::read8(), SG::GroveI2CDigital::read_block(), SG::GroveI2CDigital::write16(), SG::GroveI2CDigital::write8(), SG::GroveI2CDigital::write_block(), SG::GroveI2CDigital::write_byte(), and SG::GroveI2CDigital::~GroveI2CDigital().
|
protectedinherited |
Landscape or portrait mode.
Referenced by SG::CommonOLED::get_orientation(), SG::CommonOLED::is_landscape(), SG::CommonOLED::is_portrait(), SG::CommonOLED::rotate_180(), SG::CommonOLED::rotate_270(), SG::CommonOLED::rotate_90(), and SG::CommonOLED::set_orientation().