CH57X/CH58X/CH59X 加PA应用

一、前言

  在有些时候产品需要做到更远的距离在原来的基础上加上PA放大芯片来实现广播或者连接距离上的提升。

PA是Power Amplifier的简称,中文名称为功率放大器,简称“功放”,指在给定失真率条件下,能产生最大功率输出以驱动某一负载的放大器。对于射频通信系统,PA负责发射通道的信号放大,实现增加无线通讯距离的目的。

二、PA芯片使用

常用的有AT2401C,RFX2401C,CB2401C等

库中已经封装好了对应的函数

/* BLE pa control config struct */
typedef struct tag_ble_pa_control_config
{
    uint32_t txEnableGPIO;        // tx enable gpio register
    uint32_t txDisableGPIO;       // tx disable gpio register
    uint32_t tx_pin;              // tx pin define
    uint32_t rxEnableGPIO;        // rx enable gpio register
    uint32_t rxDisableGPIO;       // rx disable gpio register
    uint32_t rx_pin;              // tx pin define
} blePaControlConfig_t;

/**
* @brief pa control init
*
* @note Can't be called until role Init
*
* @param paControl - pa control parameters(global variable)
*
* @return Command Status.
*/
#define BLE_PAControlInit (( void (*) ( blePaControlConfig_t *paControl )) BLE_LIB_JT(109) )

代码实现

GPIOB_ModeCfg(GPIO_Pin_13|GPIO_Pin_14,GPIO_ModeOut_PP_5mA);//任意两个IO都可
blePaControlConfig_t pa_config;//全局变量
pa_config.txEnableGPIO=(uint32_t)&R32_PB_OUT;
pa_config.txDisableGPIO=(uint32_t)&R32_PB_CLR;
pa_config.tx_pin=GPIO_Pin_13;
pa_config.rxEnableGPIO=(uint32_t)&R32_PB_OUT;
pa_config.rxDisableGPIO=(uint32_t)&R32_PB_CLR;
pa_config.rx_pin=GPIO_Pin_14;
BLE_PAControlInit(&pa_config);加在角色初始化之后

原理图参考

仅用于个人学习分享;

如有错漏请指正。

 

posted @ 2024-10-08 19:44  小舟从此逝_1  阅读(44)  评论(0编辑  收藏  举报