start adding improved CCSDS packet support #172

Merged
muellerr merged 1 commits from add-better-ccsds-packet-support into main 2025-10-29 15:44:39 +01:00
5 changed files with 1084 additions and 25 deletions

View File

@@ -13,6 +13,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- `CdsCommon` renamed to `CdsBase`
- Simplified CDS short timestamp, contains one less field which reduced serialization length.
## Added
- Added `CcsdsPacketCreator`, `CcsdsPacketReader` and `CcsdsPacketCreatorWithReservedData`
which simplify the process of creating full CCSDS space packets.
# [v0.16.1] 2025-09-26
## Fixed

View File

@@ -1,3 +1,7 @@
//! # CRC checksum support.
//!
//! Thin wrapper around the [crc] crate.
/// CRC algorithm used by the PUS standard, the CCSDS TC standard and the CFDP standard, using
/// a [crc::NoTable] as the CRC implementation.
pub const CRC_CCITT_FALSE_NO_TABLE: crc::Crc<u16, crc::NoTable> =

1093
src/lib.rs

File diff suppressed because it is too large Load Diff

View File

@@ -1,3 +1,8 @@
//! # Sequence counter module.
//!
//! CCSDS and ECSS packet standard oftentimes use sequence counters, for example to allow detecting
//! packet gaps. This module provides basic abstractions and helper components to implement
//! sequence counters.
use crate::MAX_SEQ_COUNT;
use arbitrary_int::traits::Integer;
use core::cell::Cell;

View File

@@ -1,4 +1,4 @@
/// # Support of the CCSDS Unified Space Data Link Protocol (USLP)
//! # Support of the CCSDS Unified Space Data Link Protocol (USLP)
use crate::{crc::CRC_CCITT_FALSE, ByteConversionError};
/// Only this version is supported by the library