请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:CC2541 主题中讨论的其他部件:CC2543,
我正在研究 CC2543 BLE广播器示例代码(swrc291),并希望将此示例移植到 CC2541。
有两段代码用于设置输出功率:
=== 1.在函数 miniBlePhyInit in miniBLE_phy.c中:
#IF (CHIP == 2541)
TXPOWER = TXPOWER_0_DBM;//设置默认输出功率:0dBm。
TXFILTCFG = 0x03;//设置Tx过滤器带宽。
TXCTRL = 0x19;//设置DAC电流。
IVCTRL = 0x1B;//设置PA,混音器和DAC偏差。
=== 2.函数miniBleSetOutputPower in miniBLE.c:
UINT8 miniBleSetOutputPower(uint8 txPOWER){//
检查参数是否有效,对于CC2543,PA偏置控制必须设置为0x05。
#if(chip == 2543)
if((txpower & 0x05)!= 0x05){
#Elif(cchip == 2541)
if((txpower <minus_20_DBM)||(txpower >plus_0_DBM)){
#endif
return MINIBLE_FAIL_INVALID_argument;
}{intuint8
minState; Adv_intone,
fical_transmission {!therent_than?
HAL_INT_UNLOCK (intState);// Exit Critical (退出关键)部分。
返回MINIBLE_FAIL_RADIO_ACTIVE;
}
MINIBLE_PHY_SET_OUTPT_POWER (txpower);//设置新的TXPOWER设置。
HAL_INT_UNLOCK (intState);// Exit Critical部分。
返回MINIBLE_SUCCESS;
}
===========
如注释在第一个代码段中所述:
设置PA,混音器和DAC偏置。
注释在第二个代码段中表示:
对于CC2543,PA偏置控制必须设置为0x05。
因此,我猜 TXCTRL和IVCTRL可能需要设置为 不同输出级别的特定值。
我的问题是"对于不同的输出级别,应该为TXCTRL和IVCTRL设置什么值?"
例如,要将输出电平设置为-20dBm,需要为 TXCTRL和IVCTRL设置哪些值?
要将输出电平设置为-10dBm,需要为 TXCTRL和IVCTRL设置哪些值? 等等