微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > CC2541的设置发射功率教程

CC2541的设置发射功率教程

时间:10-02 整理:3721RD 点击:

CC2541的设置发射功率教程


转自:897503845@qq.com:http://blog.csdn.net/feilusia/article/details/48546465 博主:甜甜的大香瓜
一、简介
本篇介绍CC2541的协议栈中如何设置发射功率。
二、实验平台
协议栈版本:BLE-CC254x-1.3.2
编译软件:IAR 8.20.2
三、发射功率的范围
CC2540支持4种发射功率:4dB、0dB(default)、-6dB、-23dB。
CC2541支持3种发射功率:0dB(default)、-6dB、-23dB。
四、使用举例
[cpp] view plain copy
void SimpleBLEPeripheral_Init( uint8 task_id )  
{  
  simpleBLEPeripheral_TaskID = task_id;  
  //设置发射功率  
  HCI_EXT_SetTxPowerCmd (HCI_EXT_TX_POWER_4_DBM);  
  ……  
}  
注:从机的广播数据中的0dB只是发给主机看看而已的
[cpp] view plain copy
// connection interval range  
0x05,   // length of this data  
GAP_ADTYPE_SLAVE_CONN_INTERVAL_RANGE,  
LO_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),   // 100ms  
HI_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),  
LO_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),   // 1s  
HI_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),  
// Tx power level  
0x02,   // length of this data  
GAP_ADTYPE_POWER_LEVEL,  
0       // 0dBm  
五、测试
1、测试代码
用了以下代码分别进行了2540和2541的测试
[cpp] view plain copy
//hciStatus_t hci_status = 0x38;  
//设置发射功率为4dB  
//hci_status = HCI_EXT_SetTxPowerCmd (HCI_EXT_TX_POWER_4_DBM);  
//设置发射功率为0dB  
//hci_status = HCI_EXT_SetTxPowerCmd (HCI_EXT_TX_POWER_0_DBM);  
//设置发射功率为-6dB  
//hci_status = HCI_EXT_SetTxPowerCmd (LL_EXT_TX_POWER_MINUS_6_DBM);  
//设置发射功率为-23dB  
//hci_status = HCI_EXT_SetTxPowerCmd (LL_EXT_TX_POWER_MINUS_23_DBM);  
//参数乱写  
//hci_status = HCI_EXT_SetTxPowerCmd (1111);  
2、测试结果
1)无论参数是多少,HCI_EXT_SetTxPowerCmd函数返回值都是0。(此处疑问,那返回值作何用?)
2)CC2541和CC2540的默认值确实是0dB。
3)当参数不正确时,发射功率不会被改变。
4)实验数据(通过手机看RSSI)
CC2540:
HCI_EXT_TX_POWER_4_DBM(-40dB)
HCI_EXT_TX_POWER_0_DBM(-44dB)——default
LL_EXT_TX_POWER_MINUS_6_DBM(-51dB)
LL_EXT_TX_POWER_MINUS_23_DBM(-67dB)
CC2541:
HCI_EXT_TX_POWER_0_DBM(-48dB)——default
LL_EXT_TX_POWER_MINUS_6_DBM(-54dB)
LL_EXT_TX_POWER_MINUS_23_DBM(-70dB)

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top