Added crate for usb-serial protocol
This commit is contained in:
parent
86a33b97a9
commit
bc557ccdeb
4 changed files with 82 additions and 0 deletions
37
protocol/src/lib.rs
Normal file
37
protocol/src/lib.rs
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
#![no_std]
|
||||
use heapless::Vec;
|
||||
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug, PartialEq)]
|
||||
pub enum RadomMessage {
|
||||
Status(StatusMessage),
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug, PartialEq)]
|
||||
pub enum HostMessage {
|
||||
RequestStatus,
|
||||
TriggerDFUBootloader,
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug, PartialEq, Clone)]
|
||||
pub struct StatusMessage {
|
||||
position: Position,
|
||||
alarms: Vec<Alarm, 64>,
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug, PartialEq, Clone)]
|
||||
pub struct Position {
|
||||
az: f32,
|
||||
el: f32,
|
||||
az_endcoder: f32,
|
||||
el_encoder: f32,
|
||||
az_magnetic: f32,
|
||||
el_magnetic: f32,
|
||||
}
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug, PartialEq, Clone)]
|
||||
pub enum Alarm {
|
||||
AZEncoderFault,
|
||||
ELEncoderFault,
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue