CC1101的寄存器初始化,是在CC1101工作这前必须做的一件事情,最主要初始化的三个参数是频率,速率,功率。最好是以结构体的方式初始化,否则当你改动速率或者频率或者功率的时候,你还要改变其他几个相关的寄存器,这样做就比较麻烦,我当初的做法是:利用SmartRF,把我需要的频率431,433,435,我需要的速率1.2K,2.4K,4.8K,10K......等等全部配置一边,然后利用截图截下SmartRF的值,然后利用这么一个结构体:
typedef struct
{
u8 IOCFG2;
u8 IOCFG1;
u8 IOCFG0;
u8 FIFOTHR;
u8 SYNC1;
u8 SYNC0;
u8 PKTLEN;
u8 PKTCTRL1;
u8 PKTCTRL0;
u8 ADDR;
u8 CHANNR;
u8 FSCTRL1;
u8 FSCTRL0;
u8 FREQ2;
u8 FREQ1;
u8 FREQ0;
u8 MDMCFG4;
u8 MDMCFG3;
u8 MDMCFG2;
u8 MDMCFG1;
u8 MDMCFG0;
u8 DEVAITN;
u8 MCSM2;
u8 MCSM1;
u8 MCSM0;
&nb

本文介绍了CC1101无线模块在工作前如何进行寄存器初始化,强调了以结构体方式初始化的重要性,以简化频率、速率和功率变更时的配置过程。通过提供一个具体的结构体示例,展示了如何为不同频率和速率配置寄存器,并使用宏定义简化代码。最后,文章提到了批量写入寄存器的方法,以便高效完成设置。
最低0.47元/天 解锁文章
8184





