CLI回调代码解读-SRR_MSS_CLIAdvancedFrameCfg(五)

摘要:在SRR_MSS_CLIBasicCfg回调一文中已经详细解说过chirp配置的全过程,但是要实现这个demo例程的chirp配置则需要高级帧配置才能完成,关于这个例程的chirp配置内容在这篇文章chirp配置中已经讨论过了,在这里不在赘述。本文主要通过SRR_MSS_CLIAdvancedFrameCfg回调函数分片段来讲解案例的高级帧配置,接下来开始进入正题。

1.参数声明

进入到SRR_MSS_CLIAdvancedFrameCfg函数,首先我们将会看到下面代码片段的参数声明信息,以及判断mmWave FE模块是否已经被配置,如果是则退出程序,否则则执行往后的程序,由于关于这部分的参数说明一部分已经在SRR_MSS_CLIBasicCfg一文中讲解过,接下来只对部分新增参数进行讲解。

 

2.打开mmWave模块

参数声明后,接下来就是配置打开mmWave模块参数,并打开mmWave模块从而可以调用mmWave link API 与BSS建立连接,这部分内容的详细说明在SRR_MSS_CLIBasicCfg中已经详细说明,这里不再赘述。

3.配置profile文件

在对chirp进行配置时,首先还是先对profile文件进行配置,在打开mmWave模块后就是可以对profile文件配置了,如下代码段就是该文件的配置源码,函数Cfg_ProfileCfgInitParams (indx, &profileCfg)被定义在for循环中,意味着它定义多个profile文件,循环次数NUM_PROFILES=2,表明他定义了2个profile文件(2个chirp模板),一个用于SRR,另一个用于USRR,每循环一次,都会通过调用APIrlSetProfileConfig 将profile配置文件传递给mmWave FE,总共循环2次。

 下面是关于2个profile文件的配置信息,有关更多细节参阅SRR_MSS_CLIBasicCfg有关profile文件配置部分。

4.chirp配置

同样的,profile文件配置完成后,紧接着就是定义与之关联的chirp,然后通过rlSetChirpConfig API将配置信息传递给mmWave FE。像配置profile文件一样,定义chirp配置同样是在一个for循坏中,总共循坏NUM_CHIRP_PROG=4次,第一次循环定义了第一个子帧的前64个快chirp,第二次循坏定义了第一个子帧的后64个慢chirp,第三次循坏定义了第二个子帧的第一个chirp,第四次循坏定义了第二个子帧的第二个chirp,要想形成demo发射的一个帧,只需要在高级帧配置中,第一个子帧循坏一次,第二个子帧循坏32次,就可以形成一个完整的帧,如下图表示;

 这是一个完整的子帧。

 进入到Cfg_ChirpCfgInitParams函数,函数体如下所示;这个函数是用于配置chirp的函数相关的

 

 关于chirp配置的更多细节,参阅SRR_MSS_CLIBasicCfgchirp配置部分。

5.高级帧配置

在chirp定义好之后,接下来就是高级帧配置部分,代码如下;这部分的内容主要是针对子帧进行操作,以及对帧的相关信息进行配置,完成这一操作主要是在Cfg_AdvFrameCfgInitParams 函数中,接下来将分片段对这个函数进行解析。完成高级帧配置之后,将配置信息通过rlSetAdvFrameConfig发送到mmWave FE,到此案例的射频前端配置完成。

 

5.1 Cfg_AdvFrameCfgInitParams 解析

进入函数我们首先看到下面这部分代码

 

 

 到这里,demo的完整帧形状配置完成,我们可以注意到在上诉代码块运行完成后,由于函数使用了条件编译的语句,所以下面这部分的代码是不执行的,所以各位看官可以不必理会,直接导航到尾部的两句代码,接下图所示

这表示,将子帧数量赋值给高级帧配置参数,以便将其通过rlSetAdvFrameConfig API告知mmWave FE,方便FE解析。

 

6.设置状态标识

程序走到这里,本案例中相关chirp、帧配置已经基本完成,在剩余的代码中(如下代码段),就是要告知应用程序,配置已经完成了,即通过全局变量gSrrMSSMCB.cfgStatus = true;来表示基础配置已经完成,接着就是将这个消息显示在控制台中,并退出这个回调函数。

 到这里,这片文章就基本讲解完成,文章中有些地方可能表达得不是那么准确,如有疑问之处,可以联系小编,进行交流学习,要是对你有帮助可以点点赞和关注支持一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值