mokomoking2501/profinet_master/io does not have a README file

    DataStatusFields

    pub(all) struct DataStatusFields {
    state : String
    redundancy : String
    data_valid : String
    provider_state : String
    station_problem : String
    ignore : String
    } derive(Eq,
    Debug
    )

    IAndM0

    pub(all) struct IAndM0 {
    vendor_id : Int
    order_id : String
    serial_number : String
    hardware_revision : Int
    sw_revision_prefix : Byte
    sw_revision_functional_enhancement : Byte
    sw_revision_bugfix : Byte
    sw_revision_internal_change : Byte
    revision_counter : Int
    profile_id : Int
    profile_specific_type : Int
    im_version_major : Byte
    im_version_minor : Byte
    im_supported : Int
    } derive(Eq,
    Debug
    )

    I&M0 (Identification & Maintenance) data.

    IAndM1

    pub(all) struct IAndM1 {
    function_tag : String
    location_tag : String
    } derive(Eq,
    Debug
    )

    I&M1 data.

    IdentificationData

    pub(all) struct IdentificationData {
    api : Int
    slots : Array[IoSlot]
    } derive(Eq,
    Debug
    )

    Expected/Real identification data — block for AR connect.

    IoConnection

    pub(all) struct IoConnection {
    uuid :
    Uuid

    rx_data_length : Int
    tx_data_length : Int
    is_tx_station_ok : Bool
    is_tx_provider_in_run : Bool
    is_tx_data_valid : Bool
    is_tx_primary : Bool
    } derive(Eq,
    Debug
    )

    IO connection state — models an active cyclic data connection.

    IoCyclicFrame

    pub(all) struct IoCyclicFrame {
    frame_id : Int
    cycle_counter : Int
    data_status : Byte
    transfer_status : Byte
    payload : Bytes
    } derive(Eq,
    Debug
    )

    IO cyclic data frame — provider status byte + data.

    IoSlot

    pub(all) struct IoSlot {
    slot_number : Int
    module_ident_number : Int
    subslots : Array[IoSubslot]
    } derive(Eq,
    Debug
    )

    IO slot definition.

    IoSubslot

    pub(all) struct IoSubslot {
    subslot_number : Int
    submodule_ident_number : Int
    } derive(Eq,
    Debug
    )

    IO subslot definition.

    block_type_expected_identification

    let block_type_expected_identification : Int

    Block type for expected identification data.

    block_type_iam0

    let block_type_iam0 : Int

    Block type for I&M0.

    block_type_iam1

    let block_type_iam1 : Int

    Block type for I&M1.

    block_type_real_identification

    let block_type_real_identification : Int

    Block type for real identification data.

    decode_data_status

    fn decode_data_status(status : Byte) -> DataStatusFields

    encode_cyclic_frame

    fn encode_cyclic_frame(frame : IoCyclicFrame) -> Bytes

    Encode a cyclic IO frame (for provider).

    encode_iam1

    fn encode_iam1(data : IAndM1) -> Bytes

    encode_iam1_block

    fn encode_iam1_block(data : IAndM1) -> Bytes

    encode_identification_data

    fn encode_identification_data(data : IdentificationData) -> Bytes

    Encode expected/real identification data body.

    format_iam0

    fn format_iam0(data : IAndM0) -> String

    Format I&M0 summary.

    parse_cyclic_frame

    fn parse_cyclic_frame(data : Bytes, offset : Int, data_length : Int) -> IoCyclicFrame raise
    FrameError

    Parse a cyclic IO frame.

    parse_iam0

    fn parse_iam0(data : Bytes, offset : Int) -> IAndM0 raise
    FrameError

    Parse I&M0 from body bytes.

    parse_iam1

    fn parse_iam1(data : Bytes, offset : Int) -> IAndM1 raise
    FrameError

    Parse I&M1 from body bytes.

    parse_identification_data

    fn parse_identification_data(data : Bytes, offset : Int) -> IdentificationData raise
    FrameError

    Parse identification data from body bytes.

    Source Files

    Powered by MoonBit

    Site sourceReport issueModulesSkillsBuild queueStatistics

    © 2026 mooncakes.io