This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC1310: 关于发送数据包长度的问题, 如何设置才能缩短发送时长?

Part Number: CC1310

为了减少一帧数据长度,我们对Tx数据帧进行简化,设置为1byte PreamBytes、8bits SyncWord、无CRC、2bytes固定长度的数据Payload,以便保证一帧的长度为4字节。具体代码如下:

RF_cmdPropTx.pktLen = 2;
RF_cmdPropTx.pPkt = txPacket;
RF_cmdPropTx.pktConf.bUseCrc = 0; //No CRC
RF_cmdPropTx.pktConf.bVarLen = 0; //Fix;
RF_cmdPropTx.startTrigger.triggerType = TRIG_NOW;

RF_cmdPropRadioDivSetup.formatConf.nSwBits = 8; //SyncWord 8bits
RF_cmdPropRadioDivSetup.preamConf.nPreamBytes = 1; //PreamBytes 1byte

并设置发送速率为5kbps(Long Range),如下:

// Parameter summary
// Address: off
// Address0: 0xAA
// Address1: 0xCC
// Frequency: 433.92000 MHz
// Data Format: Serial mode disable
// Deviation: 5.000 kHz
// pktLen: 30
// 802.15.4g Mode: off
// Select bit order to transmit PSDU octets:: 1
// Packet Length Config: Variable
// Max Packet Length: 128
// Packet Length: 20
// RX Filter BW: 49 kHz
// Symbol Rate: 19.99969 kBaud
// Sync Word Length: 32 Bits
// TX Power: 15 dBm (requires define CCFG_FORCE_VDDR_HH = 1 in ccfg.c, see CC13xx/CC26xx Technical Reference Manual)
// Whitening: No whitening

这样发送一帧的时长应该为4bytes*8/5kbps=6.4ms。

但利用示波器观察芯片耗电情况,发现实际发送时长为12ms左右,不知道为什么会出现这样的情况?如何设置才可以缩短这个发送时长?

另外,如果把上述设置改成:

RF_cmdPropTx.pktLen = 2;
RF_cmdPropTx.pPkt = txPacket;
RF_cmdPropTx.pktConf.bUseCrc = 1; //增加2bytes CRC
RF_cmdPropTx.pktConf.bVarLen = 1;  //增加1byte帧长字节
RF_cmdPropTx.startTrigger.triggerType = TRIG_NOW;

RF_cmdPropRadioDivSetup.formatConf.nSwBits = 8; //SyncWord 8bits
RF_cmdPropRadioDivSetup.preamConf.nPreamBytes = 1; //PreamBytes 1byte

这样发送一帧的时长应该为6bytes*8/5kbps=9.6ms。

但利用示波器观察芯片耗电情况,发现实际发送时长为16.8ms左右,不知道为什么会出现这样的情况?

从上述分析,是不是发送一帧数据需要格外开启发送电路一段准备时间(不实际发送数据),推算出大致7ms?

请问,上述哪个地方出现问题?如何设置才可以缩短这个发送时长?

谢谢!