Hi, I use CC2652P, SimpleLink SDKv4.20. My application is based on TI154stack sensor_2_4g.
I need to control cw test.
I use RF_open() with RF_cmdRadioSetup(command No 0x0802).
Then, I use RF_runCmd() with RF_cmdFs(command No 0x0803).
Finally, I use RF_postCmd with RF_cmdTxTest(command No 0x0808) to tx cw.
In RF_cmdTxTest, end trigger type is 0x1, so that cw will never stop.
Now, cw works fine. I can observe 2.4G spectrum on a spectrum analyzer.
And, after some time, I need to stop cw.
I tried 2 different ways to stop cw but they all fail.
1st way is:
When I want to stop cw, I set RF_cmdTxTest as below:
.endTrigger.triggerType = 0x4, .endTime = 4000
Then, I call RF_runCmd() with RF_cmdFs and RF_postCmd with RF_cmdTxTest again.
I expect that cw will restart and continue for 1ms, and then stop.
2nd way is :
When I want to stop cw, I use RF_runCmd with RF_cmdTrigger as below:
rfc_CMD_TRIGGER_t RF_cmdTrigger = { .commandNo = 0x0808, .triggerNo = 0x33 };
End trigger No. in RF_cmdTxTest is also 0x33 as below:
rfc_CMD_TX_TEST_t RF_cmdTxTest_ieee154_0 = { .commandNo = 0x0808, .status = 0x0000, .pNextOp = 0, .startTime = 0x00000000, .startTrigger.triggerType = 0x0, .startTrigger.bEnaCmd = 0x0, .startTrigger.triggerNo = 0x0, .startTrigger.pastTrig = 0x0, .condition.rule = 0x1, .condition.nSkip = 0x0, .config.bUseCw = 0x1, .config.bFsOff = 0x0, .config.whitenMode = 0x2, .__dummy0 = 0x00, .txWord = 0xABCD, .__dummy1 = 0x00, .endTrigger.triggerType = 1, .endTrigger.bEnaCmd = 0x1, .endTrigger.triggerNo = 0x33, .endTrigger.pastTrig = 0x00, .syncWord = 0x71764129, .endTime = 0x00000000 };
These 2 ways all fail to stop cw and trigger errors, goes into Main_excHandler().
So, How to stop cw when it has been started?