|
ISF15ACP4 Driver 1.0.0
API reference
|
Namespaces | |
| namespace | animations |
| namespace | colors |
| Common preset colors. | |
| namespace | detail |
| namespace | font |
| namespace | ssd1331 |
Classes | |
| class | Animator |
| Drives timed frame updates on top of a GraphicsContext. More... | |
| class | ButtonUI |
| Debounced switch handling with visual feedback on the OLED. More... | |
| class | Canvas |
| CPU-side RGB565 framebuffer with basic drawing operations. More... | |
| struct | DisplayGeometry |
| Compile-time display geometry for a product variant. More... | |
| struct | DisplayPresenter |
| Type-erased presenter used by HardwareDirect backend. More... | |
| class | GraphicsContext |
| Owns the active graphics backend selected at construction time. More... | |
| class | GraphicsSurface |
| CRTP interface every graphics backend must implement. More... | |
| struct | Point |
| 2D point in display coordinates. More... | |
| struct | Rect |
| Axis-aligned rectangle in display coordinates (inclusive bounds). More... | |
| class | SmartDisplay |
| High-level driver for NKK SSD1331-based SmartDisplay modules. More... | |
| struct | SmartDisplayConfig |
| Configuration for SmartDisplay construction. More... | |
| class | SpiInterface |
| CRTP transport interface for SPI writes and GPIO control. More... | |
Typedefs | |
| using | AnimationFrameFn = void(*)(GraphicsContext &gfx, uint32_t frame, void *user_data) noexcept |
| Callback that renders one animation frame into a graphics context. | |
| using | Color565 = uint16_t |
| 16-bit RGB565 color value (R5G6B5). | |
Enumerations | |
| enum class | ButtonEvent : uint8_t { None = 0 , Pressed , Released , Click , LongPress } |
| Edge-qualified button events from debounced polling. More... | |
| enum class | GraphicsBackend : uint8_t { BuiltinCanvas = 0 , HardwareDirect = 1 , Animator = 2 } |
| Selectable graphics engine used by SmartDisplay and UI helpers. More... | |
| enum class | CtrlPin : uint8_t { ChipSelect = 0 , DataCommand = 1 , Reset = 2 , VccEnable = 3 , Switch = 4 } |
| Hardware control signals for the SSD1331 SmartDisplay interface. More... | |
| enum class | GpioSignal : uint8_t { Inactive = 0 , Active = 1 } |
| Abstract GPIO level for control pins. More... | |
| enum class | SpiMode : uint8_t { Mode0 = 0 , Mode3 = 3 } |
| SPI mode required by NKK SmartDisplay devices. More... | |
| enum class | ProductVariant : uint8_t { Isf15acp4 = 0 , Isc15anp4 = 1 , Isc01p = 2 } |
| Supported NKK SmartDisplay OLED product variants. More... | |
| enum class | Error : uint16_t { None = 0 , SpiWrite = 1 << 0 , GpioControl = 1 << 1 , InvalidParam = 1 << 2 , NotInitialized = 1 << 3 , OutOfRange = 1 << 4 , PowerSequence = 1 << 5 } |
| Driver error flags (bitmask). More... | |
| enum class | DisplayState : uint8_t { Off = 0 , On = 1 , Dim = 2 } |
| Display power/visibility state. More... | |
Functions | |
| const char * | GetDriverVersion () noexcept |
| constexpr const DisplayGeometry & | GetGeometry (ProductVariant variant) noexcept |
| Get geometry metadata for a product variant. | |
| constexpr Color565 | MakeColor565 (uint8_t r, uint8_t g, uint8_t b) noexcept |
| Build an RGB565 color from 8-bit RGB channels. | |
| Color565 | BmpPixelToColor565 (const uint8_t *bgr) noexcept |
| Convert a 24-bit BMP pixel (BGR byte order) to RGB565. | |
Variables | |
| constexpr DisplayGeometry | kGeometryIsf15acp4 |
| constexpr DisplayGeometry | kGeometryIsc15anp4 |
| constexpr DisplayGeometry | kGeometryIsc01p |
| using isf15acp4::AnimationFrameFn = typedef void (*)(GraphicsContext& gfx, uint32_t frame, void* user_data) noexcept |
Callback that renders one animation frame into a graphics context.
| using isf15acp4::Color565 = typedef uint16_t |
16-bit RGB565 color value (R5G6B5).
|
strong |
|
strong |
Hardware control signals for the SSD1331 SmartDisplay interface.
The driver uses abstract ACTIVE/INACTIVE levels so platform adapters can map polarity correctly (e.g. CS is active-low on the physical pin).
|
strong |
|
strong |
|
strong |
|
strong |
Selectable graphics engine used by SmartDisplay and UI helpers.
Choose at construction time via SmartDisplayConfig::backend or GraphicsContext::Create().
|
strong |
Supported NKK SmartDisplay OLED product variants.
All variants share the SSD1331 controller but use different initialization tables, memory windows, and visible pixel areas.
| Enumerator | |
|---|---|
| Isf15acp4 | Frameless OLED pushbutton, 96x64 (ISF15ACP4) |
| Isc15anp4 | Standard OLED pushbutton, 64x48 (ISC15ANP4) |
| Isc01p | OLED display module, 52x36 (ISC01P) |
|
strong |
SPI mode required by NKK SmartDisplay devices.
Data is sampled on the rising edge of SCK (mode 0 or 3 depending on CPOL). Engineering kits commonly use CPOL=0, CPHA=0.
| Enumerator | |
|---|---|
| Mode0 | |
| Mode3 | |
|
inlinenoexcept |
Convert a 24-bit BMP pixel (BGR byte order) to RGB565.
| bgr | Pointer to three bytes in B, G, R order. |
|
inlinenoexcept |
|
inlineconstexprnoexcept |
Get geometry metadata for a product variant.
| variant | Product variant identifier. |
|
inlineconstexprnoexcept |
Build an RGB565 color from 8-bit RGB channels.
| r | Red channel (0-255). |
| g | Green channel (0-255). |
| b | Blue channel (0-255). |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |