⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cc1100_smartrf.c.bak

📁 用c8051f310开发的433M无线模块cc1100的完整程序
💻 BAK
字号:
#include "CC1100_z.h"
#include "CC1100_SMARTRF.h"
#include "CC1100_func.h"

#define FEC_EN	0x80

/******************************************************************************
//函数名:	void CC1100_Config( viod )
//
//说明:	使用SmartRF Studio产生的数据配置CC1100/CC2500寄存器。
//
// 参数:	无。
//
******************************************************************************/
void CC1100_Config( void )
{
	Write_Register( CC1100_FSCTRL1, SMARTRF_SETTING_FSCTRL1 );	//频率合成器控制寄存器1,设置IF中频。
	Write_Register( CC1100_FSCTRL0, SMARTRF_SETTING_FSCTRL0 );	//频率合成器控制寄存器0,设置频率偏差补偿初值。

	Write_Register( CC1100_FREQ2,   SMARTRF_SETTING_FREQ2 );	// 频率控制字寄存器2(高字节)。设定载波频率
	Write_Register( CC1100_FREQ1,   SMARTRF_SETTING_FREQ1 );	// 频率控制字寄存器1(中字节)。
	Write_Register( CC1100_FREQ0,   SMARTRF_SETTING_FREQ0 );	// 频率控制字寄存器0(低字节)。

	Write_Register( CC1100_MDMCFG4,  SMARTRF_SETTING_MDMCFG4 );    // 调制解调器配置寄存器4。设定信道带宽和信符速率。
	Write_Register( CC1100_MDMCFG3,  SMARTRF_SETTING_MDMCFG3 );    // 调制解调器配置寄存器3。设定信符速率。
	Write_Register( CC1100_MDMCFG2,  SMARTRF_SETTING_MDMCFG2 );    // 调制解调器配置寄存器2。设定DC滤波、调制格式、同步字认证。
	Write_Register( CC1100_MDMCFG1,  SMARTRF_SETTING_MDMCFG1 );    // 调制解调器配置寄存器1。设定FEC、前序字节数、信道间隔。
	Write_Register( CC1100_MDMCFG0,  SMARTRF_SETTING_MDMCFG0 );    // 调制解调器配置寄存器0。设定信道间隔。

//	Write_Register( CC1100_CHANNR,   SMARTRF_SETTING_CHANNR );	// 信道编号寄存器。

	Write_Register( CC1100_DEVIATN,  SMARTRF_SETTING_DEVIATN );	// 调制解调器频移设置。

	Write_Register( CC1100_FREND1,   SMARTRF_SETTING_FREND1 );	// RX前端配置寄存器。调节RX前端电路的电流。
	Write_Register( CC1100_FREND0,   SMARTRF_SETTING_FREND0 );	// TX前端配置寄存器。调节TX电路电流、输出功率号。

	Write_Register( CC1100_MCSM0,    SMARTRF_SETTING_MCSM0 );	// 主射频控制状态机配置寄存器。设定自动校准使能、校准方式、上电延时、管脚切换状态、晶振控制。

	Write_Register( CC1100_FOCCFG,   SMARTRF_SETTING_FOCCFG );	// 频率偏差补偿配置寄存器。设定自动补偿使能、补偿环路增益、饱和点。

	Write_Register( CC1100_BSCFG,    SMARTRF_SETTING_BSCFG );	// 位同步配置寄存器。设置接收同步字前后增益、数据速率偏差补偿饱和点。

	Write_Register( CC1100_AGCCTRL2, SMARTRF_SETTING_AGCCTRL2 );	// AGC控制寄存器2。设置DVGA增益、LAN增益、解调器人口平均电平。
	Write_Register( CC1100_AGCCTRL1, SMARTRF_SETTING_AGCCTRL1 );	// AGC控制寄存器1。设置LAN增益调节方式、相对和绝对载波检测门限。
	Write_Register( CC1100_AGCCTRL0, SMARTRF_SETTING_AGCCTRL0 );	// AGC控制寄存器0。设置AGC回差、采样次数、增益冻结控制、等

	Write_Register( CC1100_FSCAL3,   SMARTRF_SETTING_FSCAL3 );	// 频率合成器校准值寄存器。
	Write_Register( CC1100_FSCAL2,   SMARTRF_SETTING_FSCAL2 );	// 频率合成器校准值寄存器。
	Write_Register( CC1100_FSCAL1,   SMARTRF_SETTING_FSCAL1 );	// 频率合成器校准值寄存器。
	Write_Register( CC1100_FSCAL0,   SMARTRF_SETTING_FSCAL0 );	// 频率合成器校准值寄存器。
//以下4个寄存器用于测试目的,由于SLEEP不保留其内容,故唤醒后必须重写。其值由SmartRF Stdio软件给出。
//	Write_Register( CC1100_FSTEST,   SMARTRF_SETTING_FSTEST );	// 频率合成器校准值寄存器。
//	Write_Register( CC1100_TEST2,    SMARTRF_SETTING_TEST2 );	// 多种测试寄存器2。
//	Write_Register( CC1100_TEST1,    SMARTRF_SETTING_TEST1 );	// 多种测试寄存器1。
//	Write_Register( CC1100_TEST0,    SMARTRF_SETTING_TEST0 );	// 多种测试寄存器0。多信道时每个信道该值不同。

//				SMARTRF_SETTING_FIFOTHR

//	Write_Register( CC1100_IOCFG2,   SMARTRF_SETTING_IOCFG2 );	// GDO2输出管脚配置寄存器。
//	Write_Register( CC1100_IOCFG0,   SMARTRF_SETTING_IOCFG0D );	// GDO0输出管脚配置寄存器。

//	Write_Register( CC1100_PKTCTRL1, SMARTRF_SETTING_PKTCTRL1 );	// 数据包自动控制寄存器。设置同步字接收门限控制、CRC失败时清RXFIFO控制、附加状态信息控制、地核对控制。
//	Write_Register( CC1100_PKTCTRL0, SMARTRF_SETTING_PKTCTRL0 );	// 数据包自动控制寄存器。白化使能、包格式选择、CRC使能、包长度模式选择。
//	Write_Register( CC1100_ADDR,     SMARTRF_SETTING_ADDR );	// 芯片节点地址寄存器。
//	Write_Register( CC1100_PKTLEN,   SMARTRF_SETTING_PKTLEN );	// 数据包长度寄存器。


//	Write_burst( CC1100_PATABLE,	 &SETTING_PaTable[0], PaTabLen );	//写功率表。
//	Write_Register( CC1100_PATABLE,     POW_10dBm );	//写功率表。由主程序写。

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -