LLESTAT = 0x04; TXPOWER = 0xE5; TXCTRL = 0x79; // Change DAC current step from '110' to '111'. ACOMPQS = 0x16; // Finetune Q phase relative I (i.e. skewness). TXFILTCFG = 0x07; // Set Tx filter bandwidth FRMCTRL0 = 0x41; MDMCTRL0 = 0x51; MDMCTRL1 = 0x48; MDMCTRL3 = 0x63; ADCTEST0 = 0x66; MDMCTRL2 = 0xF7; PRF.PKT_CONF.AGC_EN = 0; PRF.PKT_CONF.START_TONE = 0; MDMTEST0 = 0x01; BSP_MODE = 0x02; BSP_P0= 0x00; BSP_P1= 0x00; BSP_P2= 0x05; BSP_P3= 0x80; PRF.CRC_INIT[0]= 0x00; PRF.CRC_INIT[1]= 0x00; PRF.CRC_INIT[2]= 0xFF; PRF.CRC_INIT[3]= 0xFF; PRF.CRC_LEN = 2; SW_CONF = 0x00; SW0 = 0x91; SW1 = 0xD3; SW2 = 0x91; SW3 = 0xD3; MDMTEST1 = 0x2F; FREQCTRL = 0x3E; // Freq. Setting 2440 MHz BSP_W = 0xE5; PRF_TASK_CONF = 0x01; PRF_W_INIT = 0x80; RFRAMCFG = 0x00; //**************** RF Setting for CC2543 Code Part ************************** // Enable radio in default beacon mode. LLESTAT = 0x04; halRfDisableRadio(FORCE); halRfInit();// TXPOWER = 0xE5; halRfConfig(MSK_250kbps, TX, 32, PKT_CONF_NRF); halRfSetCrc(CRC_16); halRfSetSyncWord(SYNCWORD, 0); halRfSetTxAddress(0xEF, ADDR_CONF_TX_AUTO, 16); PRF.ADDR_ENTRY[0].CONF.REUSE = 1; MDMTEST1 = 0x2F; halRfSetFrequency(2440); halRfEnableRadio(); // Seed pseudo-random generator. RNDL = 0x00; RNDL = 0xFF; // Enable RF interrupt. halRfEnableInterrupt(RFIRQF1_TASKDONE); // Enable global interrupt. halIntOn(); BSP_W = 0xE5; PRF_TASK_CONF = 0x01; PRF_W_INIT = 0x80; RFRAMCFG = 0x00; // Load packet payload. halRfLoadPERPacketPayload(LENGTH, 0); // Set radio to transmit packets every 10 ms. halRfPacketTxInterval(VALUE_10MS_IN_1US_UNITS); while(1) { // Start transmitter. halRfStartTx(); // Wait for TASKDONE and halt CPU (PM0) until task is completed. while (!(rfirqf1 & RFIRQF1_TASKDONE)) { #if(POWER_SAVING) halSleepEnterPowerMode(CPU_HALT); #endif P1_0 = 0; halMcuWaitMs(50); P1_0 = 1; halMcuWaitMs(50); }