Implement full SSD1306 OLED display support: - Splash screen on boot (1.5s) with project name, version, board - Dashboard showing radio state, config, counters, RSSI/SNR - RSSI history sparkline (64-sample ring buffer, 2px-wide bars) - DisplayOn/DisplayOff host commands routed via dedicated channel - Pure render functions against generic DrawTarget (no hardware coupling) - Display on/off control bypasses radio task entirely Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
23 lines
1.2 KiB
Rust
23 lines
1.2 KiB
Rust
#[doc = r"Register block"]
|
|
#[repr(C)]
|
|
pub struct ACL {
|
|
#[doc = "0x00 - Description cluster: Configure the word-aligned start address of region n to protect"]
|
|
pub addr: ADDR,
|
|
#[doc = "0x04 - Description cluster: Size of region to protect counting from address ACL\\[n\\].ADDR. Write '0' as no effect."]
|
|
pub size: SIZE,
|
|
#[doc = "0x08 - Description cluster: Access permissions for region n as defined by start address ACL\\[n\\].ADDR and size ACL\\[n\\].SIZE"]
|
|
pub perm: PERM,
|
|
}
|
|
#[doc = "ADDR (rw) register accessor: an alias for `Reg<ADDR_SPEC>`"]
|
|
pub type ADDR = crate::Reg<addr::ADDR_SPEC>;
|
|
#[doc = "Description cluster: Configure the word-aligned start address of region n to protect"]
|
|
pub mod addr;
|
|
#[doc = "SIZE (rw) register accessor: an alias for `Reg<SIZE_SPEC>`"]
|
|
pub type SIZE = crate::Reg<size::SIZE_SPEC>;
|
|
#[doc = "Description cluster: Size of region to protect counting from address ACL\\[n\\].ADDR. Write '0' as no effect."]
|
|
pub mod size;
|
|
#[doc = "PERM (rw) register accessor: an alias for `Reg<PERM_SPEC>`"]
|
|
pub type PERM = crate::Reg<perm::PERM_SPEC>;
|
|
#[doc = "Description cluster: Access permissions for region n as defined by start address ACL\\[n\\].ADDR and size ACL\\[n\\].SIZE"]
|
|
pub mod perm;
|