Hi,
We made 2 samples using our self-made PCB, and then tested the wireless output without any RF.
Choose port 2 as the transceiver, we don’t have a demo board, so we can’t compare where the problem is.
Our test code is as follows:
ADF7242_reset();
ADF7242_idle();
ADF7242_FskRate(rfrate);//fsk RF RATE
ADF7242_setMode(0x04); //Set operating mode to GFSK/FSK packet mode
ADF7242_SetFrequency(Channel);//设置信道
ADF7242_syncWord(0x00, 0x00);
ADF7242_cfgPA(15, 1, 7); // Configure power amplifier (power, high power mode, ramp rate)
ADF7242_cfgAFC(80); // Writes AFC configuration for GFSK / FSK
ADF7242_cfgPB(0x080, 0x000); // Sets Tx/Rx packet buffer pointers
ADF7242_cfgCRC(0); // CRC - Disable automatic CRC = 1, else 0
ADF7242_cfgBasicPreamble(); // FSK preamble configuration
//ADF7242_PHY_RDY(); // System calibration
// Clear T/R buffer to all 0x00
for(int i = 0x000; i < 0x100; i++)
{
ADF7242_regWrite(i, 0x00);
}
//0x080,Set packet length MSB数据包长度的高8位;
//0x081,Set packet length LSB数据包长度的低8位;
for(unsigned char i = 0; i < 44; i++)
{
ADF7242_regWrite((0x081+i), 1);
}
ADF7242_regWrite(irq1_src1, value);//置1,清除发射中断标志位
ADF7242_regWrite(tx_fsk_test, 0x02);
ADF7242_PHY_RDY();
ADF7242_transmit();
while(1);
We tested the hardware, the voltage is normal, and the status return value is A3. After checking the specification, it should be correct. Please help to see if there is a problem with the configuration.
void ADF7242_initFSK(unsigned char dataRate) {
// Table 37. Settings common to all GFSK/FSK configurations
ADF7242_regWrite(synt,0x28);
ADF7242_regWrite(agc_cfg1,0x34); // from table 37
ADF7242_regWrite(agc_max,0x80); // from table 37
ADF7242_regWrite(agc_cfg2,0x37);
ADF7242_regWrite(agc_cfg3,0x2A);
ADF7242_regWrite(agc_cfg4,0x1D);
ADF7242_regWrite(agc_cfg6,0x24);
ADF7242_regWrite(agc_cfg7,0x7B);
ADF7242_regWrite(ocl_cfg0,0x00);
ADF7242_regWrite(ocl_cfg1,0x07);
ADF7242_regWrite(irq1_en0, 0x00);
ADF7242_regWrite(irq1_en1, 0x18);
ADF7242_regWrite(irq2_en0, 0x00);
ADF7242_regWrite(irq2_en1, 0x00);
ADF7242_regWrite(irq1_src0, 0xFF);
ADF7242_regWrite(irq1_src1, 0xFF);
ADF7242_regWrite(ocl_bw0,0x1A);
ADF7242_regWrite(ocl_bw1,0x19);
ADF7242_regWrite(ocl_bw2,0x1E);
ADF7242_regWrite(ocl_bw3,0x1E);
ADF7242_regWrite(ocl_bw4,0x1E);
ADF7242_regWrite(ocl_bws,0x00);
ADF7242_regWrite(ocl_bw13,0xF0);
ADF7242_regWrite(preamble_num_validate,0x01);
ADF7242_regWrite(fsk_preamble,0x04);
ADF7242_regWrite(tx_fd,0x03);//devition=30K
ADF7242_regWrite(dm_cfg0,0x37);//BW=
ADF7242_regWrite(tx_m,0x00);
ADF7242_regWrite(dr0,0x01);
ADF7242_regWrite(dr1,0xF4);
ADF7242_regWrite(iirf_cfg,0x17); // from table 38
ADF7242_regWrite(dm_cfg1,0x08); ADF7242_regWrite(rxfe_cfg,0x16); //收发端口选择
}