use serde::{Deserialize, Serialize};
#[derive(Default, Debug, Clone, Serialize, Deserialize)]
#[must_use]
pub(crate) struct LinearCounter {
pub(crate) reload: bool,
pub(crate) control: bool,
pub(crate) load: u8,
pub(crate) counter: u8,
}
impl LinearCounter {
pub(crate) const fn new() -> Self {
Self {
reload: false,
control: false,
load: 0u8,
counter: 0u8,
}
}
#[inline]
pub(crate) fn load_value(&mut self, val: u8) {
self.load = val >> 1; // D6..D0
}
}