CH582 CH573 CH579 外接PA信号放大控制

时间:2023-01-30
本文章向大家介绍CH582 CH573 CH579 外接PA信号放大控制,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

CH582  CH573  CH579 提供的BLE LIB支持PA控制,已经封装好了控制接口可以自由定义PA或者PB口。

/* 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; //LIB定义的PA控制结构体,主要是Tx 和Rx双向控制IO的定义
/**
 * @brief   pa control init
 *          
 * @note    Can't be called until  role Init
 *
 * @param   paControl - pa control parameters(global variable)
 *
 * @return  Command Status.
 */
extern void BLE_PAControlInit( blePaControlConfig_t *paControl );
//配置完控制IO后,调用该函数生效控制信号

具体使用如下,以PB14和PB15为例

    R32_PB_DIR |= (1<<14)|(1<<15);    //GPIO 输出使能
    paConfig.txEnableGPIO  = (u32)(&R32_PB_CLR); //Tx使能信号,地有效
    paConfig.txDisableGPIO = (u32)(&R32_PB_OUT);//Tx禁止信号,高有效
    paConfig.tx_pin = (1<<14);
    paConfig.rxEnableGPIO  = (u32)(&R32_PB_CLR);//Rx同理
    paConfig.rxDisableGPIO = (u32)(&R32_PB_OUT);
    paConfig.rx_pin = (1<<15);    
    BLE_PAControlInit( &paConfig );

上述代码再库初始化后调用即可,具体如下

原文地址:https://www.cnblogs.com/debugdabiaoge/p/17077007.html