低成本、低功耗1GHz以下无线收发器(增强型CC1100)应用
l基于315/433/868/915 MHz ISM/SRD的极低功耗的无线应用。
l无线报警和安全系统
铅封号l工业监视和控制
产品描述
CC1101是低成本的1GHz以下的无线收发器,为极低功耗的无线应用而设计。电路主要设计为ISM(工业、科学和医疗)和SRD(短距离设备),频段在315、433、868和915,但是可以很容易的编程,使之工作在其他频率,在300-348MHz,387-464 MHz 和779-928 MHz 频段。
CC1101是CC1100 RF收发器改良以及代码一致的版本。CC1101的主要改进如下:
l改良的伪应答
电子散热扇l更好的关闭相位噪声,因而改善相邻信道功耗(ACP)的性能
l更高的输入饱和级别
eoal改善输出功率斜面
l扩大工作频段:
CC1100: 400-464 MHz and 800-928MHz
CC1101: 387-464 MHz and 779-928MHz
CC1101通过4线SPI兼容接口(SI,SO,SCLK和CSn)进行配置,CC1101作为从设备。这个接口同事用作读写缓冲器数据。SPI接口上所有的数据传送都是先传送MSB。
SPI接口上的所有传送都是以一个头字节(header byte)开始,包含一个读写位(R/W),一个突发(burst access)访问位(B)和6位地址位(A5~A0)。 在SPI总线上传输数据时,CSn脚必须保持低电平。如果在发送头字节或者读写寄存器时CSn拉高,传送将被取消。SPI接口上地址和数据的发送时序图见图12,并参考表19。 当CSn被拉低,MCU在发送头字节之前,必须等到CC1101的SO脚变为低电平。这说明晶振开始工作。除非芯片在SLEEP或者XOFF状态,SO脚在CSn引脚被拉低后马上变为低电平。 图12:配置寄存器读写操作
表19:SPI接口时序要求
10.1 芯片状态字节
当在SPI接口上发送头字节,数据字节或者命令选通(command strobe)时,CC1101在SO引脚上发送芯片状态字节。状态字节包含对MCU有用的关键状态信号。第1位,S7,为CHIP_RDYn信号,在SCLK的第一个上升沿之前,该信号必须变为低电平。CHIP_RDYn表示晶振已经开始工作。
第6、5、4位组成(STA TE)状态值,该值反映芯片的状态。在空闲(IDLE)状态,XOSC和数字核的电源被打开,但是其他模块全部掉电。频率和信道配置只能在芯片处于该状态时被更新。当芯片处于接收模式时,接收(RX)状态被激活。同样,当芯片处于发送模式时,发送(TX)状态被激活。
状态字节的最后4位(3:0)包含FIFO_BYTES_AVAILABLE。在读操作中(头字节的R/W位置1),FIFO_BYTES_AVAILABLE包含从RX FIFO可读到的数据字节数。在写操作中(头字节的R/W位置0),FIFO_BYTES_AVAILABLE 包含可写入到TX FIFO中的字节数。当FIFO_BYTES_AVAILABLE=15,15个或者更多字节是可读的/空闲的。
表20为状态字节概要。
位名称描述
7 CHIP_RDYn 保持高电平,直到电源和晶振稳定。当时用SPI接口时必须
变为低电平。
6:4 STATE[2:0] 显示当前主状态机器模式
值状态描述
000 IDLE 空闲状态
001 RX 接收模式
010 TX 发送模式
011 FSTXON 快速TX准备
100 CALIBRATE 频率合成器校准运行中
101 SETTLING PLL设置中
110 RXFIFO_OVE
RFLOW RX FIFO溢出。读出有用的数据,时用SFRX清洗FIFO
111 TXFIFO_UND
ERFLOW
TX FIFO下溢,使用SFTX命令
3:0 FIFO_BYTES_A V AILA
BLE[3:0]
表20:状态字节概要
10.2 寄存器访问
CC1101的配置寄存器位于SPI地址的0x00 ~ 0x2E。64页的表37列出了所有配置寄存器。推荐使用SmartRF@ Studio 生成合适的寄存器设定值。每个寄存器的详细说明见67页的29.1和29.2。所有配置寄存器都是可读写的。当写寄存器时,每次一个头字节或者数据字节在SI引脚上传送,一个状态字节都在SO引脚上传送。当读寄存器时,每次一个头字节在SI引脚上传送时,一个状态字节都在SO引脚上传送。
通过设置头字节的burst位(B)可以高效的实现寄存器的连续地址访问。地址位(A5~A0)
在内部地址指针中设置起始地址。指针通过每一个新的字节自动增加(每8个时钟脉冲)。突发访问可以是读,也可以是写访问,必须通过将CS脚拉高来停止操作。
便携式鱼缸在0x30 - 0x3D的寄存器地址范围,burst位置1选择状态寄存器,而burst置0选择命令选通(command strobes)。详见10.3。因此,突发访问不可用于状态寄存器的访问,一次只能访问一个状态寄存器。状态寄存器为只读。
10.3 读SPI
10.4命令选通(command strobes)
命令选通可以看做是CC1101的一个单字节指令。通过寻址一个命令选通寄存器,将启动内部序列。这些命令用来禁止晶振,使能接收,使能无线唤醒等。13个命令选通的清单见63页的表36。
Note:一个SIDLE命令将清除所有的未定命令,直到达到IDLE状态。这意味着比如当无线处于接收状态时执行SIDLE命令,当无线达到IDLE状态之前执行任何其他的命令选通都是无效的。
命令选通寄存器通过发送单一的头字节来访问(不传送数据字节)。也就是说,只有一个R/W位,一
个突发访问位(置0)和6位地址位(在0x30~0x3D范围内)被传送。R/W 位可以是1或者0,这将决定状态字节中的FIFO_BYTES_AVAILABLE区域如何确认。
当写命令选通时,状态字节将在SO引脚上被发送。
命令选通可以在CSn不被拉高的情况下,跟随在任何其他SPI访问之后。然而,如果一个SRES命令被执行,下一个头字节被执行之前必须等到SO引脚被拉低,见图13。命令选通将立即被执行,除了SPWD和SXOFF命令在CSn拉高之后执行。
10.5 FIFO访问
64字节的TX FIFO和64字节的RX FIFO通过0x3F地址访问。当R/W位置0时,TX FIFO被访问,当R/W位置1时RX FIFO被访问。TX FIFO为只写,RX FIFO为只读。
Burst位用来确定FIFO访问时单字节访问还是突发访问。单字节访问方式是一个burst 位置0的头字节
和一个数据字节。数据字节之后,跟随一个新的头字节。因此,CSn可以保持低电平。突发访问的方式是一个头字节和连续的数据字节,直到将CSn拉高来停止访问。
使用下列头字节来访问FIFO:
绝对式角度编码器Ø0x3F:单字节访问TX FIFO
Ø0x7F:突发访问TX FIFO
Ø0xBF:单字节访问RX FIFO
Ø0xFF:突发访问RX FIFO
当向TX FIFO写入数据时,在每一个新的字节发送时状态字节在SO引脚上输出。(图12)当向TX FIFO写入数据时,状态字节可以用来检测TX FIFO的下溢。
注意状态字节包含的空闲字节数是正在传送到TX FIFO的字节写入之前的值。当最后一个可以写入TX FIFO的字节在SI引脚上传送的时候,同时在SO引脚上接收的状态字节将显示TX FIFO中有一个字节的空闲。
TX FIFO可以通过SFTX命令刷新。同样SFRX命令可以刷新RX FIFO。SFTX和SFRX命令只能再IDLE、TXFIFO_UNDERFLOW、RXFIFO_OVERFLOW状态使用。在进入SLEEP 状态时,两个FIFO都将被刷新。
10.6 PATABLE访问
0x3E地址用来访问PATABLE,用来选择PA功率控制设置。SPI在接收到该地址后,传送8字节数据。通过编程PATABLE,可以完成对PA功率的增加和减少的控制,以及ASK 调制的修正以减小带宽。参照samrtRF studio推荐的修正和PA序列。参照55页的Section 24对PA功率输出编程的详细说明。
PATABLE是一个8字节表,定义PA功率控制使用的8个字节中的任意值。(通过FREND0.PA_POWER中的3位值选择)表格可以从最低设置(0)到最高的(7)读写,一次一个字节。一个索引指针用来控制访问表格。指针在每次读写表格的一个字节时自动增加,并且在CSn拉高时自动设置为最小值。当达到最高值时自动复位。
依靠burst位,访问PATABLE既可以是单字节访问也可以是突发访问。当时用突发访问时,索引指针自动增加,当指针达到7时,自动复位为0。R/W位控制访问时读操作还是写操作。
注意,当进入SLEEP状态时PATABLE的内容将全部消失,除了第一个字节(index0)。
11.MCU接口和引脚配置
在典型系统中,CC1101必须连接MCU。MCU必须具备:
Ø编程CC1101到不同的模式。
Ø读写数据缓冲器。
Ø通过4线SPI总线(SI、SO、SCLK和CSn)读取状态信息。
>亚太牌自动粉墙机