通信人家园

标题: ASN.1产品发布  [查看完整版帖子] [打印本页]

时间:  2021-8-29 14:21
作者: binxd     标题: ASN.1产品发布

       5G时代来临,本公司针对4G/5G协议栈定制ASN.1编解码产品,提供个性化服务,助力客户高效实现4G/5G 空口,NG口,XN口,E1口,F1口消息编解码。

        产品包括:


1. ASN.1语法转C语言(或其他语言)程序

        本产品对标业界全球领先公司产品,经过大量ASN.1协议完备测试,质量有保障。
        本产品提供源代码,方便客户随时进行个性化定制,同时,本公司承诺1年免费支持,免费提供ASN.1相关培训。
        本产品操作简单,平台搭建完成之后,只需输入如下形式的ASN.1文件:

DL-DCCH-MessageType ::=         CHOICE {
    c1                              CHOICE {
        rrcReconfiguration              RRCReconfiguration,
        rrcResume                       RRCResume,
        rrcRelease                      RRCRelease,
        rrcReestablishment              RRCReestablishment,
        securityModeCommand             SecurityModeCommand,
        dlInformationTransfer           DLInformationTransfer,
        ueCapabilityEnquiry             UECapabilityEnquiry,
        counterCheck                    CounterCheck,
        mobilityFromNRCommand           MobilityFromNRCommand,
        spare7 NULL,
        spare6 NULL, spare5 NULL, spare4 NULL,
        spare3 NULL, spare2 NULL, spare1 NULL
    },
    messageClassExtension   SEQUENCE {}
}

-- TAG-DL-DCCH-MESSAGE-STOP
-- TAG-PCCH-PCH-MESSAGE-START

PCCH-Message ::=                SEQUENCE {
    message                         PCCH-MessageType
}

PCCH-MessageType ::=            CHOICE {
    c1                              CHOICE {
        paging                          Paging,
        spare1  NULL
    },
    messageClassExtension       SEQUENCE {}
}

-- TAG-PCCH-PCH-MESSAGE-STOP
-- TAG-UL-CCCH-MESSAGE-START

...(略)
     生成的C代码(片断)如下:

void DecodeNRAPDL_DCCH_MessageType(
        AsnContext *asnContext,
        NRAPDL_DCCH_MessageType *value
)
{
        /* the fixed width of content field is 1 */
        value->choice = (EnumNRAPDL_DCCH_MessageType)GetBits(&asnContext->stream, 1);
       
        /* decode sub IE of DL_DCCH_MessageType as below */
        switch(value->choice)
        {
        case NRAPDL_DCCH_MessageTypec1Enum:
                DecodeNRAPDL_DCCH_MessageTypec1(asnContext, &value->val.c1);
                if(asnContext->isError == TRUE)
                {
                        return;
                }
               
                break;
               
        case NRAPDL_DCCH_MessageTypemessageClassExtensionEnum:
                DecodeNRAPDL_DCCH_MessageTypemessageClassExtension(
                        asnContext, &value->val.messageClassExtension);
                if(asnContext->isError == TRUE)
                {
                        return;
                }
               
                break;
               
        default:
                break;
        }
}

...(略)


2. 可视化ASN.1编解码工具
        可视化工具包括两个部分,ASN.1编解码库,以及界面交互信息处理。

        这是一个强大的编解码工具,解码码流之后,工具显示每一个IE的解码情况,包括每个位对应的含义,让使用者明白码流的真正内涵,快速定位编解码过程中出现的问题。

        ASN.1编解码工具操作如下:
工具操作


想要知道更多的工具介绍,大家也可以参考我另外一篇文章:

https://blog.csdn.net/Dybinx/article/details/115458634?spm=1001.2014.3001.5501

3. 联系方式
        诚邀合作伙伴,共筑美好未来。

        联系方式(QQ):3252477922

        祝好!




附件: [工具操作] 动画.gif (2021-8-29 14:19, 1.61 MB) / 下载次数 0
https://www.txrjy.com/forum.php?mod=attachment&aid=NDk0OTg5fGI4NzIxMDRjfDE3MzI5MDI1NDV8MHww




通信人家园 (https://www.txrjy.com/) Powered by C114