调整无线模块的功率 点击:113 | 回复:0



思为无线

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:30帖 | 2回
  • 年度积分:0
  • 历史总积分:100
  • 注册:2017年8月15日
发表于:2019-12-17 16:25:52
楼主

无线模块的功率是一个很重要的参数,它对模块的工作性能有很大的影响。开发人员有必要在合适的时候选择适当的功率,以便于在模块工作时间和性能之间取得平衡。

本文讲述如何对无线模块的功率进行设置。

一般来说,调制功率可以从软件入手,也可以从硬件入手。从软件入手,就是修改相应的寄存器。通常芯片的参考手册都会有关于调整功率的描述。以SX1262为例,该芯片与输出功率有关的命令有两条,一条是SetPaConfig,另一条是SetTxParamsSetPaConfig设置的参数有paDutyCycle hpMaxdeviceSel。其中,paDutyCycle 控制芯片功放的占空比,并且最大输出功率,功率消耗,谐波会随着功率周期的变化而急剧变化。应根据推荐的值进行设置。hpMax则是控制芯片的输出功率上限,有四个值可以选。deviceSel是选择使用的设备类型。在设置好输出功率的的功率等级之后,我们应该用命令SetTxParams设置具体的输出功率值。该命令有两个参数,一个是power,一个是RampTime。其中power代表具体的输出功率值。根据选择的功率范围不同,power也有不同的取值范围。当选择低功率上限时,power取值的范围在- 17 (0xEF) t+14 (0x0E) dBm之间;当选择大功率的上限时,power取值的范围在- 9 (0xF7)  +22 (0x16) dBm之间。RampTime可以根据推荐的值进行选择。

最后应该通过设置寄存器进行设置功率。以下参考的设置:

voidSX1262SetPaConfig(void)

{

    uint8_t CmdBuf[5];

    CmdBuf[0] = SetPaConfig;

    CmdBuf[1] = 0x04;//paDutyCycle

    CmdBuf[2] = 0x07;//hpMax

    CmdBuf[3] = 0x00;//deviceSel

    CmdBuf[4] = 0x01;paLut reserved and always0x01

    SPIWriteCmd(5, CmdBuf);

}

voidSX1262SetTxParams(void)

{

    uint8_t CmdBuf[3];

    CmdBuf[0] = SetTxParams;

    CmdBuf[1] = 0x16; //22DBM

    CmdBuf[2] = 0x00;//RampTime

    SPIWriteCmd(3, CmdBuf);

}

不同芯片修改功率的方法各不相同。请参考对应芯片对应的手册进行修改功率。

除了软件设置,我们还可以从硬件方面入手。比如说某些应用场景下要求较远的传输距离,一般的小功率模块的输出功率可能不足。此时我们应考虑大功率的模块。例如,思为无线根据客户的不同需求,生产了很多不同功率的模块,以Lora系列的数传模块为例,有100mW1W5W30W的模块可供客户选择。此时,无线模块的最大输出功率尤其自身硬件决定。用户可以根据自己的实际需求选择合适的无线模块。

以上就是对无线模块功率调整的一些总结,希望能对您有所帮助。





热门招聘
相关主题

官方公众号

智造工程师