This repository has been archived on 2026-08-31. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
donglora/vendor/esp32s3/src/usb0/hc.rs
T
swaitsandClaude Opus 4.6 3102fc747a feat: add display UI with splash screen, dashboard, and RSSI sparkline
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>
2026-03-29 20:42:54 -06:00

70 lines
3.8 KiB
Rust

#[repr(C)]
#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
#[doc = "Cluster HC%s, containing HCCHAR?, HCINT?, HCINTMSK?, HCTSIZ?, HCDMA?, HCDMAB?"]
pub struct HC {
char: CHAR,
_reserved1: [u8; 0x04],
int: INT,
intmsk: INTMSK,
tsiz: TSIZ,
dma: DMA,
_reserved5: [u8; 0x04],
dmab: DMAB,
}
impl HC {
#[doc = "0x00 - "]
#[inline(always)]
pub const fn char(&self) -> &CHAR {
&self.char
}
#[doc = "0x08 - "]
#[inline(always)]
pub const fn int(&self) -> &INT {
&self.int
}
#[doc = "0x0c - "]
#[inline(always)]
pub const fn intmsk(&self) -> &INTMSK {
&self.intmsk
}
#[doc = "0x10 - "]
#[inline(always)]
pub const fn tsiz(&self) -> &TSIZ {
&self.tsiz
}
#[doc = "0x14 - "]
#[inline(always)]
pub const fn dma(&self) -> &DMA {
&self.dma
}
#[doc = "0x1c - "]
#[inline(always)]
pub const fn dmab(&self) -> &DMAB {
&self.dmab
}
}
#[doc = "CHAR (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`char::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`char::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@char`] module"]
pub type CHAR = crate::Reg<char::CHAR_SPEC>;
#[doc = ""]
pub mod char;
#[doc = "INT (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`int::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`int::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@int`] module"]
pub type INT = crate::Reg<int::INT_SPEC>;
#[doc = ""]
pub mod int;
#[doc = "INTMSK (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`intmsk::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intmsk::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@intmsk`] module"]
pub type INTMSK = crate::Reg<intmsk::INTMSK_SPEC>;
#[doc = ""]
pub mod intmsk;
#[doc = "TSIZ (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`tsiz::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tsiz::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tsiz`] module"]
pub type TSIZ = crate::Reg<tsiz::TSIZ_SPEC>;
#[doc = ""]
pub mod tsiz;
#[doc = "DMA (rw) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`dma::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dma::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dma`] module"]
pub type DMA = crate::Reg<dma::DMA_SPEC>;
#[doc = ""]
pub mod dma;
#[doc = "DMAB (r) register accessor: \n\nYou can [`read`](crate::Reg::read) this register and get [`dmab::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmab`] module"]
pub type DMAB = crate::Reg<dmab::DMAB_SPEC>;
#[doc = ""]
pub mod dmab;