CC2530发射功率及其设置 zstack修改发射功率

 http://qshanbao.blog.ustc.edu.cn/?p=479

CC2530发射功率可编程范围:4.5dBm~-27.5dBm,Z-Stack可设置范围:-22dBm~+3dBm,发射功率和设置值的对应关系在工程文件mac\low_level下的mac_radio_defs.c中的 const uint8 CODE macRadioDefsTxPwrBare[]中定义,该常量数组并只包含部分建议值,只要取值在最大值0xF5和最小值0x05之间均有效。注意:发射功率与消耗功率不同,消耗功率远大于发射功率(射频输出功率),因为RF发射器(CC2520)本身要消耗能量以产生射频信号,比如输出0dBm的无线信号需要29mA电流,3.3V下约为100mW,而0dBm=1mW。

不同版本的ZStack发射功率设置方式及默认值不同:

1)ZStack-CC2530-2.3.0-1.4.0及以前版本设定方法:在工程文件COMPONENTS\mac\low_level下的mac_radio_defs.h文件中设置初始值

#define MAC_RADIO_CHANNEL_DEFAULT               11  //2440HZ
#define MAC_RADIO_TX_POWER_DEFAULT              0x32 //约为-17dBm

一般在协议栈初始化的时候会按初始值配置发射功率,如果程序里面需要修改发射功率,可按以下方式:

并在工程文件mac\low_level下的mac_radio.c的MAC_INTERNAL_API void macRadioSetTxPower(uint8 txPower) 函数中完成赋值设置,该函数调用被封装屏蔽,函数中在临界区通过语句reqTxPower = txPower;将txPower赋值给reqTxPower,然后调用macRadioUpdateTxPower()函数更新发射功率,操作语句为:

macPhyTxPower = reqTxPower;

MAC_RADIO_SET_TX_POWER(macPhyTxPower);//设置寄存器TXPOWER为macPhyTxPower

所以调整发射功率三种方法:

1.修改初始值#define MAC_RADIO_TX_POWER_DEFAULT              0x32

2.修改macRadioSetTxPower()函数中的 reqTxPower为欲设定值,协议栈会自动调用该函数设定发射功率

3.在应用中自行调用macRadioSetTxPower()函数设置发射功率。

2)ZStack-CC2530-2.3.0-1.4.0以后的高版本增加了对CC2533芯片的支持,其发射功率范围为-21dBm~+4dBm,设定方法为:

新版本中工程文件mac\high_level下多了mac_pib.c文件,用以设置发射功率初始值,并去掉了MAC_RADIO_TX_POWER_DEFAULT变量。mac_pib.c文件中的static CODE const macPib_t macPibDefaults变量有以下 语句:

#if defined (HAL_PA_LNA)
19,                                         /* phyTransmitPower for CC2591 */
#elif defined (HAL_PA_LNA_CC2590)
11,                                         /* phyTransmitPower for CC2590 */
#else
0,

分别19、11、0对应功放CC2591、CC2590、不带功放的默认发射功率,单位为dBm值,可在这里完成初始值的修改。

此外新版本仍可以通过调用macRadioSetTxPower函数来修改发射功率。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值