文章来源:https://www.cnblogs.com/debugdabiaoge/p/17622815.html
一、PA简介 PA是Power Amplifier的简称,中文名称为功率放大器,简称“功放”,指在给定失真率条件下,能产生最大功率输出以驱动某一负载的放大器。 对于射频通信系统,PA负责发射通道的信号放大,实现增加无线通讯距离的目的。
二、PA芯片推荐
中科微 AT2401C
Skyworks RFX2401C Octotech 8TR8201
芯片ANT引脚遵循50欧姆阻抗匹配,连接到PA芯片。
四、PA芯片控制 PA 芯片控制有点类似半双工的485控制,需要两个IO控制PA芯片的TXEN和RXEN。 - /* 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;
- /*******************************************************************************
- * @fn BLE_PAControlInit
- *
- * [url=home.php?mod=space&uid=2666770]@Brief[/url] pa control init
- * Can't be called until role Init //这个一定要遵守
- *
- * input parameters
- *
- * [url=home.php?mod=space&uid=3142012]@param[/url] paControl - pa control parameters(global variable)
- *
- * output parameters
- *
- * @param None.
- *
- * [url=home.php?mod=space&uid=1141835]@Return[/url] Command Status.
- */
- extern void BLE_PAControlInit( blePaControlConfig_t *paControl );
复制代码 具体用法- blePaControlConfig_t blePaControlConfigIO; //必须是全局变量
- //设置对应的Io为输出模式
- GPIOA_ModeCfg(GPIO_PIN_0|GPIO_Pin_1, GPIO_ModeOut_PP_5mA) ;//设置对应的GPIO为对应的拉高拉低寄存器//对应的pin是bit
- blePaControlConfigIO.txEnableGPIO = (uint32_t)R32_PA_OUT;
- blePaControlConfigIO.txDisableGPIO = (uint32_t)R32_PA_CLR;
- blePaControlConfigIO.tx_pin = GPIO_PIN_0;
- blePaControlConfigIO.rxEnableGPIO = (uint32_t)R32_PA_OUT;
- blePaControlConfigIO.rxDisableGPIO = (uint32_t)R32_PA_CLR;
- blePaControlConfigIO.rx_pin = GPIO_PIN_1;
- BLE_PAControlInit(&blePaControlConfigIO);
复制代码
|