CC1100无线模块使用说明Word格式文档下载.docx
- 文档编号:1569286
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:17
- 大小:72.50KB
CC1100无线模块使用说明Word格式文档下载.docx
《CC1100无线模块使用说明Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《CC1100无线模块使用说明Word格式文档下载.docx(17页珍藏版)》请在冰点文库上搜索。
和贴片焊接方式的版本。
(6)与51系列单片机P0口连接,需要加10K的上拉电阻,与其余口连接不需要。
(7)其他系列的单片机,如果是5V的,请参考该系列单片机IO口输出电流
大小,如果超过10mA,需要串联电阻分压,否则容易烧毁模块!
如果是3.3V
的,可以直接和RF1100SE模块的IO口线连接。
引脚编号
引脚名
引脚类型
描述
1,2
VCC
电源输入
1.9V-3.6V之间
3
SI
数据输入
连续配置接口(SPI接口),数据输入
4
SCLK
时钟输入
连续配置接口(SPI接口),时钟输入
5
SO(GD01)
数据输出
连续配置接口(SPI接口),数据输出
当CSn为高时为可选的一般输出脚
6
GDO2
数字输出
一般用途的数字输出脚:
测试信号FIFO状态信号时钟输出,从XOSC向下分割连续输入TX数据
7
CSn
数字输入
连续配置接口(SPI接口),芯片选择
8
GDO0
一般用途的数字输出脚:
测试信号FIFO状态信号时钟输出,从XOSC向下分割连续输入TX数据,也用作产品测试的模拟测试I/O
9,10
GND
地(模拟)
模拟接地
3.通信协议
所有配置字都是通过SPI接口送给CC110L。
SIP接口的工作方式可通过SPI指令进行设置。
SPI读/写操作
参数
描述
最小值
最大值
单位
FSCLK
SCLK频率
0
10
MHz
tsp,pd
CSn低到SCLK的正边缘,功率降低模式下
150
-
us
tsp
CSn低到SCLK的正边缘,活动模式下
20
ns
tch
时钟高
50
tcl
时钟低
trise
时钟上升时间
tfall
5
tsd
向SCLK的正边缘建立数据
76
thd
在SCLK的正边缘之后保持数据
20
tns
SCLK到CSn高时的负边缘
4.指令集
4.1.芯片状态字节
比特
名称
CHIP_RDYn
保持高,直到功率和晶体已稳定。
当使用SPI接口时应始终为低。
6:
STATE[2:
0]
表明当前主状态模式
值
状态
000
空闲
空闲状态
001
RX
接收模式
010
TX
发送模式
011
FSTXON
快速TX准备
100
校准
频率合成器校准正运行
101
迁移
PLL正迁移
110
RXFIFO_OVERFLOW
RXFIFO已经溢出,读
出任何有用数据,然后用SFRX冲洗FIFO
111
TXFIFO_OVERFLOW
TXFIFO已经下溢,同SFTX应答
3:
FIFO_BYTES_AVAILABLE[3:
TXFIFO中的自由比特数。
若FIFO_BYTES_AVAILABLE=15,它表明有15或更多个比特是可用/自由的。
4.2配置寄存器
地址
寄存器
保存在休眠状态中
0x00
IOCFG2
GDO2输出脚配置
Yes
0x01
IOCFG1
GDO1输出脚配置
0x02
IOCFG0
GDO0输出脚配置
0x03
FIFOTHR
RXFIFO和TXFIFO门限
0x04
SYNC1
同步词汇,高字节
0x05
SYNC0
同步词汇,低字节
0x06
PKTLEN
数据包长度
0x07
PKTCTRL1
数据包自动控制
0x08
PKTCTRL0
0x09
ADDR
设备地址
0x0A
CHANNR
信道数
0x0B
FSCTRL1
频率合成器控制
0x0C
FSCTRL0
频率控制词汇,高字节
0x0D
FREQ2
频率控制词汇,中间字节
0x0E
FREQ1
频率控制词汇,低字节
0x0F
FREQ0
调制器配置
0x10
MDMCFG4
0x11
MDMCFG3
0x12
MDMCFG2
0x13
MDMCFG1
0x14
MDMCFG0
调制器背离设置
0x15
DEVIATN
主通信控制状态机配置
0x16
MCSM2
0x17
MCSM1
0x18
MCSM0
频率偏移补偿配置
0x19
FOCCFG
位同步配置
0x1A
BSCFG
AGC控制
0x1B
AGCTRL2
0x1C
AGCTRL1
0x1D
AGCTRL0
高字节时间0暂停
0x1E
WOREVT1
低字节时间0暂停
0x1F
WOREVT0
电磁波激活控制
0x20
WORCTRL
前末端RX配置
0x21
FREND1
前末端TX配置
0x22
FREND0
频率合成器校准
0x23
FSCAL3
0x24
FSCAL2
0x25
FSCAL1
0x26
FSCAL0
RC振荡器配置
0x27
RCCTRL1
0x28
RCCTRL0
频率合成器校准控制
0x29
FSTEST
产品测试
No
0x2A
PTEST
AGC测试
0x2B
AGCTEST
不同的测试设置
0x2C
TEST2
0x2D
TEST1
0x2E
TEST0
5.操作函数
5.1.操作步骤
5.1.1.发射模式
1)芯片初始化
2)设置为发射模式
3)发送数据
4)检测是否发送成功
5.1.2.接收模式
2)设置为接收模式
3)检测到接收信号
4)读取数据寄存器
5.2.函数
1)读写一个字节
INT8USpiTxRxByte(INT8Udat)
{
INT8Ui,temp;
temp=0;
SCK=0;
for(i=0;
i<
8;
i++)
{
if(dat&
0x80)
{
MOSI=1;
}
elseMOSI=0;
dat<
<
=1;
SCK=1;
_nop_();
temp<
if(MISO)temp++;
SCK=0;
}
returntemp;
}
2)写命令
voidhalSpiStrobe(INT8Ustrobe)
CSN=0;
while(MISO);
SpiTxRxByte(strobe);
//写入命令
CSN=1;
3)写入配置
voidhalSpiWriteReg(INT8Uaddr,INT8Uvalue)
SpiTxRxByte(addr);
//写地址
SpiTxRxByte(value);
//写入配置
4)读取配置
INT8UhalSpiReadReg(INT8Uaddr)
INT8Utemp,value;
temp=addr|READ_SINGLE;
//读寄存器命令
SpiTxRxByte(temp);
value=SpiTxRxByte(0);
returnvalue;
5)写入一串数据
voidhalSpiWriteBurstReg(INT8Uaddr,INT8U*buffer,INT8Ucount)
INT8Ui,temp;
temp=addr|WRITE_BURST;
for(i=0;
i<
count;
SpiTxRxByte(buffer[i]);
6)读取一串数据
voidhalSpiReadBurstReg(INT8Uaddr,INT8U*buffer,INT8Ucount)
temp=addr|READ_BURST;
//写入要读的配置寄存器地址和读命令
i++)
buffer[i]=SpiTxRxByte(0);
7)发送一组数据
voidhalRfSendPacket(INT8U*txBuffer,INT8Usize)
halSpiWriteReg(CCxxx0_TXFIFO,size);
halSpiWriteBurstReg(CCxxx0_TXFIFO,txBuffer,size);
//写入要发送的数据
halSpiStrobe(CCxxx0_STX);
//进入发送模式发送数据
//WaitforGDO0tobeset->
synctransmitted
while(!
GDO0);
//WaitforGDO0tobecleared->
endofpacket
while(GDO0);
halSpiStrobe(CCxxx0_SFTX);
8)接收一组数据
INT8UhalRfReceivePacket(INT8U*rxBuffer,INT8U*length)
INT8Ustatus[2];
INT8UpacketLength;
INT8Ui=(*length)*4;
//具体多少要根据datarate和length来决定
halSpiStrobe(CCxxx0_SRX);
//进入接收状态
//delay(5);
//while(!
GDO1);
//while(GDO1);
delay
(2);
while(GDO0)
delay
(2);
--i;
if(i<
1)
return0;
}
if((halSpiReadStatus(CCxxx0_RXBYTES)&
BYTES_IN_RXFIFO))//如果接的字节数不为0
packetLength=halSpiReadReg(CCxxx0_RXFIFO);
//读出第一个字节,此字节为该帧数据长度
if(packetLength<
=*length)//如果所要的有效数据长度小于等于接收到的数据包的长度
halSpiReadBurstReg(CCxxx0_RXFIFO,rxBuffer,packetLength);
//读出所有接收到的数据
*length=packetLength;
//把接收数据长度的修改为当前数据的长度
//Readthe2appendedstatusbytes(status[0]=RSSI,status[1]=LQI)
halSpiReadBurstReg(CCxxx0_RXFIFO,status,2);
//读出CRC校验位
halSpiStrobe(CCxxx0_SFRX);
//清洗接收缓冲区
return(status[1]&
CRC_OK);
//如果校验成功返回接收成功
else
halSpiStrobe(CCxxx0_SFRX);
return0;
else
9)初始化配置
voidhalRfWriteRfSettings(void)
halSpiWriteReg(CCxxx0_FSCTRL0,rfSettings.FSCTRL2);
//Writeregistersettings
halSpiWriteReg(CCxxx0_FSCTRL1,rfSettings.FSCTRL1);
halSpiWriteReg(CCxxx0_FSCTRL0,rfSettings.FSCTRL0);
halSpiWriteReg(CCxxx0_FREQ2,rfSettings.FREQ2);
halSpiWriteReg(CCxxx0_FREQ1,rfSettings.FREQ1);
halSpiWriteReg(CCxxx0_FREQ0,rfSettings.FREQ0);
halSpiWriteReg(CCxxx0_MDMCFG4,rfSettings.MDMCFG4);
halSpiWriteReg(CCxxx0_MDMCFG3,rfSettings.MDMCFG3);
halSpiWriteReg(CCxxx0_MDMCFG2,rfSettings.MDMCFG2);
halSpiWriteReg(CCxxx0_MDMCFG1,rfSettings.MDMCFG1);
halSpiWriteReg(CCxxx0_MDMCFG0,rfSettings.MDMCFG0);
halSpiWriteReg(CCxxx0_CHANNR,rfSettings.CHANNR);
halSpiWriteReg(CCxxx0_DEVIATN,rfSettings.DEVIATN);
halSpiWriteReg(CCxxx0_FREND1,rfSettings.FREND1);
halSpiWriteReg(CCxxx0_FREND0,rfSettings.FREND0);
halSpiWriteReg(CCxxx0_MCSM0,rfSettings.MCSM0);
halSpiWriteReg(CCxxx0_FOCCFG,rfSettings.FOCCFG);
halSpiWriteReg(CCxxx0_BSCFG,rfSettings.BSCFG);
halSpiWriteReg(CCxxx0_AGCCTRL2,rfSettings.AGCCTRL2);
halSpiWriteReg(CCxxx0_AGCCTRL1,rfSettings.AGCCTRL1);
halSpiWriteReg(CCxxx0_AGCCTRL0,rfSettings.AGCCTRL0);
halSpiWriteReg(CCxxx0_FSCAL3,rfSettings.FSCAL3);
halSpiWriteReg(CCxxx0_FSCAL2,rfSettings.FSCAL2);
halSpiWriteReg(CCxxx0_FSCAL1,rfSettings.FSCAL1);
halSpiWriteReg(CCxxx0_FSCAL0,rfSettings.FSCAL0);
halSpiWriteReg(CCxxx0_FSTEST,rfSettings.FSTEST);
halSpiWriteReg(CCxxx0_TEST2,rfSettings.TEST2);
halSpiWriteReg(CCxxx0_TEST1,rfSettings.TEST1);
halSpiWriteReg(CCxxx0_TEST0,rfSettings.TEST0);
halSpiWriteReg(CCxxx0_IOCFG2,rfSettings.IOCFG2);
halSpiWriteReg(CCxxx0_IOCFG0,rfSettings.IOCFG0);
halSpiWriteReg(CCxxx0_PKTCTRL1,rfSettings.PKTCTRL1);
halSpiWriteReg(CCxxx0_PKTCTRL0,rfSettings.PKTCTRL0);
halSpiWriteReg(CCxxx0_ADDR,rfSettings.ADDR);
halSpiWriteReg(CCxxx0_PKTLEN,rfSettings.PKTLEN);
10)设置接收模式
voidsetRxMode(void)
11)设置发送模式
voidsetTxMode(void)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CC1100 无线 模块 使用说明