本文作者驱动熊,转载请注明出处及本博客链接。
主要介绍modem的编译和3G 、4G手机modem的配置方法。
以V107为例:
V107配置PA和TXM为 洛达AP6689+AP7115+AW9102
以一组LOW BAND 850TRX为例
/*MT6580RF*/ #define PDATA_GSM850_PR1 0x000000
/*MT6580RF*/ #define PDATA_GSM850_PR2 0x000006
/*MT6580RF*/ #define PDATA_GSM850_PR3 0x000000
其中PR1和PR3为起始和结束阶段取值为0x00
所以LB对应的900和850 PR2取值都是: 0x06 LB对应的PR2取值都是: 0x04
#define PDATA_GSM850_PT1 (0x000000 |PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT2 (0x000001 |PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT2B (0x000009 |PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT3 (0x000000 )
#define PDATA_GSM850_PT2M1_G8 (0x000009|PDATA_8PSK|PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT2M2_G8 (0x000009|PDATA_8PSK|PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT2M1_8G (0x000001 |PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT2M2_8G (0x000009 |PDATA_GSM_ERR_DET)
同理 PT1和PT3取值为0x00,分别代表意义为起始阶段和结束阶段。
其中PT2和PT2B的区别在于PT2的TX_EN引脚为至0;而PT2B TX_EN引脚要至1
所以LB 取值
#define PDATA_GSM850_PT2 (0x000001 |PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT2B (0x000009 |PDATA_GSM_ERR_DET)
HB 取值
#define PDATA_GSM850_PT2 (0x000003 |PDATA_GSM_ERR_DET)
#define PDATA_GSM850_PT2B (0x00000B |PDATA_GSM_ERR_DET)
/*MT6166*/ #define BAND1_CHANNEL_SEL LNA3_HIGH_BAND
/*MT6166*/ #define BAND2_CHANNEL_SEL LNA1_HIGH_BAND
/*MT6166*/ #define BAND3_CHANNEL_SEL NON_USED_BAND
/*MT6166*/ #define BAND4_CHANNEL_SEL NON_USED_BAND
/*MT6166*/ #define BAND5_CHANNEL_SEL LNA2_LOW_BAND
/*MT6166*/ #define BAND6_CHANNEL_SEL NON_USED_BAND
/*MT6166*/ #define BAND8_CHANNEL_SEL LNA2_LOW_BAND
/*MT6166*/ #define BAND9_CHANNEL_SEL NON_USED_BAND
/*MT6166*/ #define BAND10_CHANNEL_SEL NON_USED_BAND
/*MT6166*/ #define BAND11_CHANNEL_SEL NON_USED_BAND
/*MT6166*/ #define BAND19_CHANNEL_SEL NON_USED_BAND
如图所示对应填写即可,其中 B8和B5可以用同一个通道 LNA_2来进行传输。
/*MT6166*/ #define BAND1_OUTPUT_SEL TX_HIGH_BAND2
/*MT6166*/ #define BAND2_OUTPUT_SEL TX_HIGH_BAND2
/*MT6166*/ #define BAND3_OUTPUT_SEL TX_NULL_BAND
/*MT6166*/ #define BAND4_OUTPUT_SEL TX_NULL_BAND
/*MT6166*/ #define BAND5_OUTPUT_SEL TX_LOW_BAND1
/*MT6166*/ #define BAND6_OUTPUT_SEL TX_NULL_BAND
/*MT6166*/ #define BAND8_OUTPUT_SEL TX_LOW_BAND1
/*MT6166*/ #define BAND9_OUTPUT_SEL TX_NULL_BAND
/*MT6166*/ #define BAND10_OUTPUT_SEL TX_NULL_BAND
/*MT6166*/ #define BAND11_OUTPUT_SEL TX_NULL_BAND
/*MT6166*/ #define BAND19_OUTPUT_SEL TX_NULL_BAND
如图所示,B1和B2既可以共用一个HB2也可以分别引出。而B5和B8只能共用一个B1
/*MT6166*/ #define PDATA_BAND1_PR1 0x0005
/*MT6166*/ #define PDATA_BAND1_PR2 0x0005
/*MT6166*/ #define PDATA_BAND1_PR2B 0x0005
/*MT6166*/ #define PDATA_BAND1_PR3 0x0000
/*MT6166*/ #define PDATA_BAND1_PR1 0x0005
/*MT6166*/ #define PDATA_BAND1_PR2 0x0005
/*MT6166*/ #define PDATA_BAND1_PR2B 0x0005
/*MT6166*/ #define PDATA_BAND1_PR3 0x0000
这里PR1=PR2=PR2B,但PR3=0
/*MT6166*/ #define PDATA_BAND1_PT1 0x0005
/*MT6166*/ #define PDATA_BAND1_PT2 0x0415
/*MT6166*/ #define PDATA_BAND1_PT2B 0x0415
/*MT6166*/ #define PDATA_BAND1_PT3 0x0000
0x0005只是选择BAND1这个通道,我们要确定选择的是发射,这就需要PA TX B1_EN至1,所以这里应该是0x0015
但是起始阶段 PT1=PR1=0X0005选择BAND1的阶段;
PT2=0x0015,但是由于BAND1和BAND2是通过双分器9102过来,通过BPI10和BPI11来控制是BAND1或者是BAND2;所以PT2=0x0415 ;BAND2=0x0c11。如果没有9102,那么只能选择B1或者B2其中一个。
这就是3G手机modem配置,需要根据PA、TXM等芯片规格来确定寄存器的值,然后根据原理图来配置modem文件。4G手机modem配置较为复杂,过一段时间在来上传。