GLAST/LAT > DAQ and FSW > FSW > Index by Name within Package

Hdr3 - Telemetry Bitfield


"CCSDS telecommand header (bytes 6-7)" (SVC/ITC)

View Options: (help)

Definition:

    Alignment:2-byte boundary
    APID:720/0x2D0
    Attribute(s):
    C type:unsigned short
    Length: 16 bits (2 bytes)

Description:

    Bitfields for bytes 6-7 of a standard CCSDS telecommand header, where a two-byte secondary header containing a function code has been defined.

Layout: (hide detail; help)

    Start Stop Size Item Type and Name
    0 0 1 Fnc_pad fnc_pad
    1 15 15 Fnc_code fnc

    typedef struct _ITC_Hdr3_Bfl {
    
        #if ENDIANNESS_IS_BIG
    
        /* Padding */
        unsigned short       fnc_pad:1;
    
        /* CCSDS telecommand function code */
        unsigned short       fnc:15;
    
        #elif ENDIANNESS_IS_LITTLE
    
        /* CCSDS telecommand function code */
        unsigned short       fnc:15;
    
        /* Padding */
        unsigned short       fnc_pad:1;
    
        #else
    
        #error _FILE_ ENDIANNESS NOT DEFINED
    
        #endif
    
    } __attribute__((packed)) ITC_Hdr3_Bfl;
    
    typedef union _ITC_Hdr3 {
    
        /* underlying unsigned short */
        unsigned short                  us;
    
        /* struct mapped bitfield */
        struct _ITC_Hdr3_Bfl            bf;
    
    } ITC_Hdr3;
    

Fields:

      Attribute(s):  

      Brief:  "CCSDS telecommand function code"

      Instance(s):  fnc

      CCSDS telecommand function code

      Attribute(s):  

      Brief:  "Padding"

      Instance(s):  fnc_pad

      Function codes are not allowed to touch the most significnat bit of the 16-bit function code. This padding places the bit off limits.

Used by: