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>
28 lines
1.2 KiB
Rust
28 lines
1.2 KiB
Rust
#[repr(C)]
|
|
#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
|
|
#[doc = "Cluster UNIT%s_VALUE, containing UNIT?_VALUE_HI, UNIT?_VALUE_LO"]
|
|
pub struct UNIT_VALUE {
|
|
hi: HI,
|
|
lo: LO,
|
|
}
|
|
impl UNIT_VALUE {
|
|
#[doc = "0x00 - system timer unit0 value high register"]
|
|
#[inline(always)]
|
|
pub const fn hi(&self) -> &HI {
|
|
&self.hi
|
|
}
|
|
#[doc = "0x04 - system timer unit0 value low register"]
|
|
#[inline(always)]
|
|
pub const fn lo(&self) -> &LO {
|
|
&self.lo
|
|
}
|
|
}
|
|
#[doc = "HI (r) register accessor: system timer unit0 value high register\n\nYou can [`read`](crate::Reg::read) this register and get [`hi::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@hi`] module"]
|
|
pub type HI = crate::Reg<hi::HI_SPEC>;
|
|
#[doc = "system timer unit0 value high register"]
|
|
pub mod hi;
|
|
#[doc = "LO (r) register accessor: system timer unit0 value low register\n\nYou can [`read`](crate::Reg::read) this register and get [`lo::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lo`] module"]
|
|
pub type LO = crate::Reg<lo::LO_SPEC>;
|
|
#[doc = "system timer unit0 value low register"]
|
|
pub mod lo;
|