通信人家园

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索

军衔等级:

  新兵

注册:2013-6-15
跳转到指定楼层
1#
发表于 2021-8-29 14:21:19 |只看该作者 |倒序浏览
       5G时代来临,本公司针对4G/5G协议栈定制ASN.1编解码产品,提供个性化服务,助力客户高效实现4G/5G 空口,NG口,XN口,E1口,F1口消息编解码。

        产品包括:
  • ASN.1语法转C语言(或其他语言)程序,提供源码及相关服务;
  • 可视化ASN.1编解码工具,可生成消息码流,或者根据码流生成可视化的信息。


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

        祝好!


举报本楼

您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系我们 |网站地图  

GMT+8, 2024-5-10 00:41 , Processed in 0.179877 second(s), 18 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部