diff --git a/cellular/src/amps.rs b/cellular/src/amps.rs new file mode 100644 index 0000000..312194f --- /dev/null +++ b/cellular/src/amps.rs @@ -0,0 +1,28 @@ +enum DSPMode { + OFF, // Channel not active + AUDIO_RX_AUDIO_TX, // stream audio + AUDIO_RX_FRAME_TX, // stream audio and send frames + AUDIO_RX_SILENCE_TX, // stream audio and send silence + FRAME_RX_FRAME_TX, // send and receive frames +} + +enum AMPSChannelType { + CC, // control channel + PC, // paging channel + CC_PC, // combined control+paging + VC, // voice channel + CC_PC_VC, // combined control+paging+voice +} + +enum AMPSState { + NULL, // power off + IDLE, // channel not in use + BUSY, // channel busy (call in progress) +} + +enum FSK_RX_Sync { + NONE, // not in sync, waiting for valid dotting sequence + DOTTING, // received a valid dotting sequence, check for sync sequence + POSITIVE, // valid sync, read all bits from the frame + NEGATIVE, // negative sync (high frequency deviation detected as low signal) +} \ No newline at end of file diff --git a/cellular/src/main.rs b/cellular/src/main.rs index d8889cb..11ae420 100644 --- a/cellular/src/main.rs +++ b/cellular/src/main.rs @@ -2,7 +2,7 @@ use ferris_says::say; use std::io::{stdout, BufWriter}; mod sdr; - +mod amps; fn main() -> Result<(), Box> { let stdout = stdout(); let message = String::from("Welcome to the Cellular Revolution!");