qcom rf 硬件连接
来源:互联网 发布:2011安全生产事故数据 编辑:程序博客网 时间:2024/06/05 15:39
RF总体的连接图如下
左边为天线开关模块跟功放的集成体,如RF360,QFE23XX,SKYXXXX 下边以SKY简称
中间的WTR4X05作用:射频收发器,工作过程为(基带信号<--->上/下变频<--->滤波<--->放大信号) 下边以WTR简称
最右边modem_ic指处理器芯片,我们这里可以假设为高通的MSM8909处理器, 下边就以MSM简称
WTR4X05(射频收发器)的内部结构图如下图:
上方为RF transmitters发送模块框图 ,quadrature upconverter为上变频,高频率才能发送
下方为RF receivers接收模块框图 quadrature downconverter下变频,变为低频率后才能有MSMcpu芯片处理
通过开关标号来实现通路的选择
最左边的接口分为三波:发送一波,主接收PRX一波,副接收DRX一波。一半副接收可以节省电量,在不接受的时候可以处于休眠状态
每一波又可以分为三小波:LB小波,HB小波,MB小波同下图QFI1040的硬件接口对应,不通的接口对应不同的band,如下表格所示
类似QFE1040模块主要作为asm(Antenna switch matrix)即天线开关模块
以上是对整体框架及作用的说明,在实际的项目中,硬件会给软件以下框图
软件主要是要打通一个通道,包括QFE1040、WTR1341都有各自的通道需要配置
QFE1040通道的配置,如下图,需要用到哪个band就打开相应的通道,比如:2,4band就需要打通TX_DA1通道
打开相应的通道只需要向QFE1040的寄存器中写入相应的值即可打开相应的通道,见后边的“寄存器值表格”
每一个RF port对应不同的频段,比如上图中的GSM850,就应该使用PRX_LB2硬件接口,对应的硬件电路图如下
硬件电路连接图
寄存器值表格,在SKY13455的芯片手册中可以找到
SKY到WTR的通路
寄存器值表格用来决定左边的硬件电路连接图用哪个来作为输入,在代码中的表示形式如下: //***代码所在文件 \modem_proc\rfdevice_asm\src\Rfdevice_asm_sky13455_data_ag.cpp asm(Antenna switch matrix)即天线开关模块
- #define RFDEVICE_ASM_SKY13455_ASM_ON_NUM_REGS 1
- static uint8 rfdevice_asm_sky13455_asm_on_regs[RFDEVICE_ASM_SKY13455_ASM_ON_NUM_REGS] = {0x00, };
- static int16 rfdevice_asm_sky13455_asm_on_data[RFDEVICE_ASM_SKY13455_NUM_PORTS][RFDEVICE_ASM_SKY13455_ASM_ON_NUM_REGS] =
- {
- { /* PORT NUM: 0 */
- 0x0A, 此值与寄存器值表格中的值相对应,比如 LTX 对应的值为 x0001010=0x0A
- },
- { /* PORT NUM: 1 */
- 0x08,
- },
- { /* PORT NUM: 2 */
- 0x04,
- },
- { /* PORT NUM: 3 */
- 0x05,
- },
- { /* PORT NUM: 4 */
- 0x06,
- },
- { /* PORT NUM: 5 */
- 0x07,
- },
- { /* PORT NUM: 6 */
- 0x09,
- },
- { /* PORT NUM: 7 */
- 0x0B,
- },
- { /* PORT NUM: 8 */
- 0x0C,
- },
- { /* PORT NUM: 9 */
- 0x01,
- },
- { /* PORT NUM: 10 */
- 0x02,
- },
- { /* PORT NUM: 11 */
- 0x03,
- },
- };
RF card部分的代码会用到以上port ,代码如下 : \modem_proc\rfc_jolokia\rf_card\rfc_wtr4905_om\lte\src\Rfc_wtr4905_om_lte_config_data_ag.c
- rfc_device_info_type rf_card_wtr4905_om_rx0_lte_b1_device_info =
- {
- RFC_ENCODED_REVISION,
- RFC_RX_MODEM_CHAIN_0, /* Modem Chain */
- 0, /* NV Container */
- RFC_INVALID_PARAM /* Warning: Not Specified */, /* Antenna */
- 2, /* NUM_DEVICES_TO_CONFIGURE */
- {
- {
- RFDEVICE_TRANSCEIVER,
- WTR4905, /* NAME */
- 0, /* DEVICE_MODULE_TYPE_INSTANCE */
- 0, /* PHY_PATH_NUM */
- {
- 0 /*Warning: Not specified*/, /* INTF_REV */
- (int)WTR4905_LTEFDD_PRXLGY1_BAND1_PMB2, /* PORT */ 此PORT是MSM处理器端的接口,具体选取见附录1</span>分析
- ( RFDEVICE_PA_LUT_MAPPING_INVALID ), /* RF_ASIC_BAND_AGC_LUT_MAPPING */
- FALSE, /* TXAGC_LUT */
- WTR4905_FBRX_ATTN_DEFAULT, /* FBRX_ATTN_STATE */
- 0, /* Array Filler */
- },
- },
- {
- RFDEVICE_ASM,
- GEN_ASM, /* NAME */
- 0, /* DEVICE_MODULE_TYPE_INSTANCE */
- 0 /*Warning: Not specified*/, /* PHY_PATH_NUM */
- {
- 0 /* Orig setting: */, /* INTF_REV */
- (0x01A5 << 22)/*mfg_id*/ | (0x41 << 14)/*prd_id*/ | (5)/*port_num*/, /* PORT_NUM */ //此处的port num会对应以上的rfdevice_asm_sky13455_asm_on_data[PORT_NUM]数组成员,在数组中用红色字体来表示
- 0, /* Array Filler */
- 0, /* Array Filler */
- 0, /* Array Filler */
- 0, /* Array Filler */
- },
- },
- },
- };
附录1 //以下定义在各个RF card目录的文件中,如\modem_proc\rfdevice_wtr4905\ag\api\Wtr4905_typedef_ag.h
- typedef enum
- {
- WTR4905_WCDMA_DRXLGY1_BAND1_DMB1,
- **************
- 以下步骤跟据硬件给的图来决定
- WTR4905_WCDMA_DRXLGY1_BAND8_DLB3,
- 先决定是哪个BAND //决定于下表右方的数字
- WTR4905_WCDMA_DRXLGY1_BAND11_DMB1,
- 再决定是否为主接受
- WTR4905_WCDMA_DRXLGY1_BAND11_DMB2,
- D代表rx1,副接收,用rx1表示 如:rf_card_wtr4905_om_rx1_wcdma_b8_device_info //对应硬件文档的RF port部分的DRX_xBx,如下表
- WTR4905_WCDMA_PRXLGY1_BAND1_PMB2, b8表示BAND8
- P代表rx0表示主接收 用rx0表示 如:rf_card_wtr4905_om_rx0_wcdma_b8_device_info //对应硬件文档的RF port部分的PRX_xBx,如下表
- WTR4905_WCDMA_PRXLGY1_BAND1_PMB3,
- WTR4905_WCDMA_PRXLGY1_BAND1_PHB1,
- 再决定后边的数字
- WTR4905_WCDMA_PRXLGY1_BAND1_PHB2,
- WTR4905_WCDMA_PRXLGY1_BAND2_PMB2,
- *****************
- WTR4905_WCDMA_PRXLGY1_BAND8_PLB2,
- WTR4905_WCDMA_PRXLGY1_BAND8_PLB3,
- WTR4905_WCDMA_RX_BAND_INVALID,
- } wtr4905_wcdma_rx_port_data_type;
三个器件相关代码目录为:
MSM: /modem_proc/rfc_jolokia/target/msm8909/src
WTR : /modem_proc/rfc_jolokia/rf_card/rfc_wtr4905_chile_3g/wcdma/src
SKY : /modem_proc/rfdevice_asm/src
下边是MSM跟WTR的通路
- rfc_signal_info_type rfc_wtr4905_china_ct_4m_sig_info[RFC_WTR4905_CHINA_CT_4M_SIG_NUM + 1] =
- {
- { RFC_MSM_TIMING_PA_CTL , RFC_LOW, DAL_GPIO_NO_PULL, DAL_GPIO_2MA, (DALGpioIdType)NULL }, /* RFC_WTR4905_CHINA_CT_4M_TIMING_PA_CTL*/
- { RFC_MSM_TIMING_PA_RANGE , RFC_LOW, DAL_GPIO_NO_PULL, DAL_GPIO_2MA, (DALGpioIdType)NULL }, /* RFC_WTR4905_CHINA_CT_4M_TIMING_PA_RANGE */
- { RFC_MSM_TIMING_ASM_CTL , RFC_LOW, DAL_GPIO_NO_PULL, DAL_GPIO_2MA, (DALGpioIdType)NULL }, /* RFC_WTR4905_CHINA_CT_4M_TIMING_ASM_CTL */
- { RFC_MSM_TIMING_PAPM_CTL , RFC_LOW, DAL_GPIO_NO_PULL, DAL_GPIO_2MA, (DALGpioIdType)NULL }, /* RFC_WTR4905_CHINA_CT_4M_TIMING_PAPM_CTL */
- { RFC_MSM_TIMING_TX_TX_RF_ON0, RFC_LOW, DAL_GPIO_NO_PULL, DAL_GPIO_2MA, (DALGpioIdType)NULL}, /* RFC_WTR4905_CHINA_CT_4M_TIMING_TX_TX_RF_ON0 */
- .......红色部分代表WTR和MSM的连接,此定义在WTR相关的文件中,这里RFC_MSM_TIMING_xx_xx就是MSM的一个引脚
- };
- typedef enum
- {
- RFC_WTR4905_OM_TIMING_PA_CTL, 你看看,顺序都一样,指的肯定是同一个引脚了,下边的程序中会用到
- RFC_WTR4905_OM_TIMING_PA_RANGE,
- RFC_WTR4905_OM_TIMING_ASM_CTL,
- RFC_WTR4905_OM_TIMING_PAPM_CTL,
- RFC_WTR4905_OM_TIMING_TX_TX_RF_ON0,
- RFC_WTR4905_OM_TIMING_TX_RX_RF_ON0,
- rfc_sig_info_type rf_card_wtr4905_om_tx0_lte_b1_sig_cfg =
- {
- RFC_ENCODED_REVISION,
- {
- { (int)RFC_WTR4905_OM_PA0_R0_ALT1, { RFC_CONFIG_ONLY, 0 }, {RFC_LOW, 0 } },这里用到上边结构体里定义的引脚,这里用来初始化引脚
- { (int)RFC_WTR4905_OM_PA0_R1_ALT1, { RFC_CONFIG_ONLY, 0 }, {RFC_LOW, 0 } },
- { (int)RFC_SIG_LIST_END, { RFC_LOW, 0 }, {RFC_LOW, 0 } }
- }, 因为选定特定的band的话,需要有些引脚需要初始化为特定电平,这个结构体来包含相应band情况下所有需要初始的引脚
- };
到这里,软件的通路就打通了
初学难免出错, 有分析不对之处还请明示
- qcom rf 硬件连接
- rf
- RF
- RF
- S3C2440硬件连接解析
- LCD12864硬件连接
- zedboard硬件连接过程
- 2硬件连接借口
- ASC0106硬件连接注意事项
- qcom build
- qcom DeviceTree
- 从RF、BB、AP、外设4个角度看手机的硬件性能
- basler相机硬件连接设置
- 获取连接设备硬件信息
- ROS06-能力进阶-硬件连接
- GBDT RF,rf 调参
- RF 无法连接到服务器,这可能由于连接的服务不存在,TCP 错误代码 10061
- QCom Camera Development
- Android-把Android Studio改为Eclipse项目结构
- 使用FactoryBean接口实现自定义bean初始化
- hdu 1130 卡特兰数加大数
- 第6天 函数的使用及有关定义
- spring batch
- qcom rf 硬件连接
- java类与c++类的区别
- Linux命令grep -a:Binary file (standard input) matches
- spring mvc 拦截器打印详细的请求参数信息
- 洛谷 P1328 生活大爆炸版石头剪刀布
- Matlab 并行代码
- 关于寻找shape特征(feature)的方法总结
- 从oracle中导出数据到access中,以mdb格式导出文件
- git上传项目到github