SDK_SemiAutomaticDutyCycleTx¶
1 功能概述¶
本代码示例主要演示通过外部MCU结合PAN312x的低功耗特性,如何实现DutyCycleTx功能。
备注:
1、通过主控MCU来定时,控制PAN312x进入休眠的时间,待达到休眠的时间后,通过spi将PAN312x唤醒,待唤醒PAN312x后,然后在发送数据,发送数据的这段时间依赖于发送数据的长度,速率等参数;
2 环境要求¶
Board: PAN312x_EVB
PAN312x 模组
USB转串口模块
PC端串口数据显示上位机
3 编译和烧录¶
例程位置:01_SDK\PAN312x_DK_Develop\Projectc\MDK-ARM(AC5)
打开\Projectc\MDK-ARM(AC5)目录下project.uvprojx工程,选择SDK_SemiAutomaticDutyCycletTx,如下图所示

工程选择¶
然后编译并下载该程序。
4 RF参数参数设置¶

RF参数设置¶
如上图所示:RF参数目前主要包括频点、调制方式、速率、Tx Deviation、Rx Deviation、发射功率等,其中频点由基础频点,频点步进,通道3部分组成;
举例配置频点为493000000Hz,调制方式为2FSK,速率为50000bps,Tx Deviation为25000Hz,Rx Deviation为25000Hz,发射功率为21dBm,如下所示:

RF参数设置举例¶
5 帧结构参数设置¶

帧结构参数设置¶
如上图所示:帧结构参数目前主要包前导码长度,前导码内容,同步字长度,同步字内容,前导码、同步字和数据区域的manchester编码是否模式,以及manchester编码是否使能,Fec编码,白化选择等参数;
举例配置帧结构,如下图示:

帧结构参数设置举例¶
6 CRC参数设置¶

CRC参数设置¶
如上图所示:CRC参数目前主要CrcMode、Crc多项式、Crc种子、CrcBitOrder、CrcByteSwap、Crc作用范围,Crc输出是否取反等。
举例配置CRC为 CRC_16_IBM,如下图所示:

CRC参数设置举例¶
7 测试方法¶
1、复位PAN312x、等待PAN312x Ready;
2、初始化一些寄存器;
3、设置RF参数、帧结构参数、CRC参数;
4、设置TxPpacket为可变包长,根据需要确认是否需要使能CRC;
5、将TX_DONE、WAKEUP中断映射到IRQ(GPIO8)引脚上;
6、设置系统自动清除部分中断状态;
7、清除所有中断状态;
8、通过主控MCU来定时,控制PAN312x进入休眠的时间,待达到休眠的时间后,通过spi将PAN312x唤醒,待唤醒PAN312x后,然后在发送数据,发送数据的这段时间依赖于发送数据的长度,速率等参数:
备注:
1、若使能设置系统自动清除部分中断状态,除了 IRQ_RX_DONE、IRQ_RX_CRC_ERROR、 IRQ_TX_FIFO_TH、IRQ_RX_FIFO_TH 这些中断状态,需要额外发送命令来清除,其它中断状态都可以由PAN312x自动清除掉;