32 lines
636 B
Rust
32 lines
636 B
Rust
#![no_std]
|
|
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
#[derive(Serialize, Deserialize, Debug, PartialEq)]
|
|
pub enum DeviceMessage {
|
|
Status(StatusMessage),
|
|
}
|
|
|
|
#[derive(Serialize, Deserialize, Debug, PartialEq)]
|
|
pub enum HostMessage {
|
|
RequestStatus,
|
|
SetPLLOutputs,
|
|
}
|
|
|
|
#[derive(Serialize, Deserialize, Debug, PartialEq, Clone)]
|
|
pub struct StatusMessage {
|
|
pub measured_frequency: u64,
|
|
pub average_frequency: u64,
|
|
pub pwm: u16,
|
|
}
|
|
|
|
impl Default for StatusMessage {
|
|
fn default() -> Self {
|
|
Self {
|
|
measured_frequency: 0u64,
|
|
average_frequency: 0u64,
|
|
pwm: 0u16,
|
|
}
|
|
}
|
|
}
|