2024年10月25日发(作者:度星驰)
CC1110无线部分中文参考手册
版本:V1.00
2009年3月23日
·andyla
·ZigBee&IAR学习小组
无线
CC1110Fx/CC1111Fx
的简化结构图如上Figure47.
低中频(10w-IF)接收是CC1110的特性之一。CC1110'收到的RF信号被低噪声放大器(LNA)
放大,并且将收到的同相信号和正交相位信号(1/Q)降频转换为中频(IF)信号。过滤掉残余在中
频(2MHz)信号中的1/Q信号后,放大中频信号。在中频信号中通过ADC数字化、自动增益控制,
以及精细信道的过滤、解调字节和包同步(bytesynchronization)等,所有这些都通过数字逻辑完
成。
CC1110的发射端基于RF频率直接合成。频率合成器包括一套完整的片上电感器电容器(LC)、
电压控制振荡器(VCO)和一个90度移相器,用来产生同相信号、正交相位信号(I/Q)和本地振荡
器(LO)信号给接收端的降频合成器。
26M的晶振作为频率合成器产生参考频率,同时为ADC和数字部分提供时钟脉冲。
一个特殊寄存器作为CPU访问的数据缓冲区。配置和状态寄存器统一映射到外部XDATA区的
寄存器进行访问。
数字基频包括频带配置支持,数据包处理和数据缓冲。一个片上电压管理器用来调节传递
1.8V的供电电压.
15.1
CPU使用了一系列选通命令来控制CC1110的无线操作。选通命令可以看成是单字节指令,每条命
令用来控制某个无线模块的功能。这些命令可以实现使能频率合成器、使能接收模式、使能发
送模式,以及其他功能。
图33简化状态表及典型用法和电流消耗
上图33中展示了一个简化状态表及典型用法和电流消耗。该表表明了在选通控制命令下的
状态转换。想看完整的状态转换机图可参考15.12节
图中命令简介:FSTXON:快速TX准备
TX_OFF_MODE:发送完数据时下一步选择做什么
RX_OFF_MODE:接收到数据后下一步选择做什么
选通命令通过写RFST寄存器发出。所有的选通命令列入表42中
RFST寄选通命令说明
存器值名称
0X00SFSTXON
当从IDLE到RX或TX(或SFSTXON)时,打开和校准频率合成器。(if
_AUTOCAL=1选择自动校准).如果是在RX或TX状态下发出命令则
会强制RADIO进入等待状态,此时只有频率合成器在运行(用于快速RX/TX
转换)
0X01SCAL
校准频率合成器并关掉它(打开快速启动)
0X02SRX
进入RX,若是从IDLE进入且选择自动校准(_AUTOCAL=1)先校准
进行频率校准
0X03STX
若在IDLE状态,则进入TX,若(_AUTOCAL=1)则先进行频率校准
如果在RX状态且空闲信息评估打开,若此时信道已清除则仅进入TX
0X04SIDLE
退出RX/TX,关掉频率合成器
0X05SAFC
执行自动频率偏移补偿(AFC)修正频率合成器
SNOP
所有其无操作
他
表42:选通命令
15.2无线寄存器
对无线操作是通过配置一系列的射频寄存器完成的。这些RF寄存器映射到了外部的XDATA
存储器中。
除了RF射频寄存器外,RF也提供无线模块的状态信息。RF寄存器的控制/状态位的详细信
息参见后面几小节的描述
15.3中断
无线模块具有两个中断向量:RFTXRX中断(中断0)和RF中断(中断12)。其功能如下:
·RFTXRX:接收准备好/发送完成。TXFIFO下溢出(TXFIFO空)、RXFIFO上溢出(RXFIFO满);
·RF:所有其他RF中断由RFIF中断标志给出。(其他普通的6路中断)
注意:这些RF中断均由上升沿触发。比如说SFD的状态标志从0变为1时产生一个中断。
RF中断也可以用来触发计数器1。
15.3.1
两个主要的中断控制SFR寄存器用于使能RF和RFERR中断:
●RFTXRX:E;
●RF:。
两个主要的中断标志用来保持RF和RFTXRX中断标志:
●RFTXRX:;
●RF:(CPU可检测的)
RF中断与6路不同的无线源有关。两个SFR寄存器(即RFIF和RFIM)用于分别设置6路
RFIF无线中断标志及其中断使能。它们是RFIF和RFIM
SFR寄存器中的中断标志RFIF表示每个RF中断向量的中断源所对应的状态。
RFIM中的中断使能位用来屏蔽禁止各RF中断向量的中断源。
注意:RFIM屏蔽中断源并不影响RFIF寄存器状态的更新。
中断标志和中断屏蔽详见下表
RFIF(0X90)RFIterruptFlags
位名字
7:6-未用
5IRQ_TIMEOUT/接收超时
4IRQ_DONE/包接收/发送完成
(上下溢检测)
3IRQ_CS/载波检测
2IRQ_PQT/前导(前同步码)
1IRQ_CCA/空闲(清除)信道评
估
0IRQ_SFD/帧首定界符,
同步字检测
复位值
00
0
0
0
0
0
0
读/写
R0
R/W0
R/W0
R/W0
R/W0
R/W0
R/W0
说明(0无中断置位)
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
由于在RFIM中个别中断屏蔽位的使用,加上用于所给的RF中断的主要中断
屏蔽,这就使得这个中断屏蔽有两层,特别要注意的是处理下面描述的这类中断。
为了清楚RF中断,和RFIF中的中断标志需要清0,代码如下:
MOVRFIF,#00h;清0所有中断标志.
MOVSICON#00h;清0总的中断标志
MOVRFIM,RFIM;设置中断屏蔽
注意:SICON在RFIF之后清0,否则S1CON。RFIF可能由于同一个中断而再次置位。
RFIM(0X91)RFIterruptMask
位名字复位值读/写说明(0无中断置位)
7:6-未用00R00:无中禁止/1:中断使能
5IRQ_TIMEOUT/接收超时0R/W00:无中禁止/1:中断使能
4IRQ_DONE/包接收/发送完成0R/W00:无中禁止/1:中断使能
(上下溢检测)
3IRQ_CS/载波检测0R/W00:无中禁止/1:中断使能
2IRQ_PQT/前导(前同步码)0R/W00:无中禁止/1:中断使能
1IRQ_CCA/空闲(清除)信道评0R/W00:无中禁止/1:中断使能
估
0IRQ_SFD/帧首定界符,0R/W00:无中禁止/1:中断使能
同步字检测
15.4TX/RX数据传送
无线模块的数据收发是通过寄存器RF完成的。当向RF寄存器写入数据后就进行发送,同理,
当从接收到数据后再从RF寄存器中读取数据。
在收发的时候需要在内存中使用一个FIFO的数据结构来执行数据TX/RX的FIFO。所以在绝
大多数实际应用中,推荐使用存储器直接存取(DMA)在存储器和芜线模块之间传送数
据,前面的13.2小节中已介绍过如何安装和使用DMA传送。
下面介绍一个小的例子来说明写TX数据,它没有使用DMA但说明了某些基本原理。
例:
MOVDPTR,PA_TABLE0//设置输出功率
MOVA,#0FFh
MOVX@DPTR,A
MOVCLKCON,#00H//选择26M晶振
MOVRFST,#03H;//下达STX命令开始TX
C1:JNBIE0,C1//等待接收是否准备好的中断标志位,然后写数据
CLRIE0
MOVRFD,#02H//第一个数据为包长度:2个字节
C2:JNBIE0,C2//等待发送完成
CLRIE0
MOVRFD,#12H//发送第一个有效数据为#12
C3:JNBIE0,C3;//等待发送完成
CLRIE0;
MOVRFD,#34H;//发送第二个有效数据为#34
简单的RF发送例子
15.5数据率设计
传输时数据率被使用,或接收时数据率被期望,由_M和
_E配置寄存器控制。数据率由下式算得。如下式所示,控制的数据率由晶
体频率决定。
下面的方法能用来找到对应于给定数据率的合适的值
若DRATE_M靠近其最近的寄存器而且接近256,则增加DRATE_E,使DRATE_M为0。
数据率可以设计为从12kbps到500kbps最小的步长如下图表:
15.6接收信道滤波带宽
为了满足不同信道宽度要求,使接收器信道滤波装置可编程控制。_E
和_M配置寄存器控制接收器信道滤波带宽。接收器信道滤波带宽与晶体
振荡器频率有关。下式给出了寄存器设置和信道滤波带宽之间的关系:
CC1110支持的信道滤波带宽如下表所示:
在300kHz之上,灵敏度和模块化性能会稍微降低。
为得到最高性能,信道滤波带宽应该选择为:信号带宽最多占80%信道滤波带宽。取决于
晶体精确度的信道中心容差也应该从信号带宽中减去。
如下例子作出了诠释:设置信道滤波带宽为500kHz,信号应该处于500kHz的80%之内,
即400kHz。假设发送装置和接收装置均为频率为915MHz,正负20ppm频率波动,总的频率波
动为915MHz的正负40ppm,即正负37kHz。如果整个发送信号带宽将在400kHz内被接收,
那么发送信号带宽应该为400kHz-2×37kHz的最大值,即326kHz
(ppm:频率稳定度:百万分之一)
15.7解调器,符号同步装置和数据决定
CC1110包含一个高级和高度可配置的解调器。信道滤波和频率偏移补偿以数字方式工作。
为产生RSSI等级(更多信息见15.10.2节),信道中的信号等级被评估。为得到增强的性能,
数据滤波也包含其中以增强效果。
15.7.1频率偏移补偿
使用2-FSK、GFSK或MSK调制器时,通过评估接收数据的中心区,在某种限制内解调器
将对发送器和接收器频率间产生的偏移进行补偿。这个值在FREQEST状态寄存器中可得到。
通过发布自动频率偏移补偿(SAFC)命令滤波,测量得到的偏移、F_EST
能自动地用来调制在频率合成器中控制的频率偏移。这将会增加对F中值的
电流RX频率偏移估计。F中的值用来调制合成器频率。因此,当使用自动
频率偏移补偿(SAFC)命令滤波时,频率偏移将在RX和TX中得到补偿。
为了避免对不通过RF信道中的有效信号进行测量的频率偏移进行的补偿,当在RX中发布
自动频率偏移补偿(SAFC)滤波和侦测到一个同步词汇时,F_EST被复制
到一个内部寄存器中。如果SAFC在RX中发布,在离开RX后这个内部值被加到
F上。不在RX中发布SAFC将会立即把这个内部值加到F
上。因此,SAFC命令滤波应该在当前接收到一个数据包,或在RX状态之外时发布。
注意,ASK或OOK调制不支持频率偏移补偿。
15.7.2位同步
位同步运算法则从到来的符号中提取时钟。此法则要求期望数据率如15.5节中描述的那样
进行配置。为调整到来的符号率的错误,再次同步持续地执行。
15.7.2字节同步
通过一个持续的同步词汇搜索来完成字节同步。同步词汇是一个16或32位可配置区域,在
数据包起始时在发送模式下由调制器自动插入。解调器用这个区域来搜寻比特流的边界。同步
词汇也起到系统标识符的作用,因为只有带正确的预定义同步词汇的数据包才能被接收。同步
词汇探测器和用户配置的16位同步词汇相关联。此相关门限可设置为15/16比特匹配或16/16比特
匹配。使用如下的前导质量指示器机制和/或载波感应条件,同步词汇能更进一步被限定。同步
词汇由SYNC1和SYNC0配置。
为了减少错误侦测同步词汇的可能性,一种叫做前导质量指示(PQI)的机制用来限定同步
词汇。一个被侦测的同步词汇若想被接收,则其必须超过前导质量的门限值。更多信息参见26
页15.10.1节
15.8数据包处理和硬件支持
CC1100提供有为数据包导向的通信协议内置的硬件支持。
在传输模式下,数据包处理器将添加如下元素在存储在TXFIFO内的数据包中:
2024年10月25日发(作者:度星驰)
CC1110无线部分中文参考手册
版本:V1.00
2009年3月23日
·andyla
·ZigBee&IAR学习小组
无线
CC1110Fx/CC1111Fx
的简化结构图如上Figure47.
低中频(10w-IF)接收是CC1110的特性之一。CC1110'收到的RF信号被低噪声放大器(LNA)
放大,并且将收到的同相信号和正交相位信号(1/Q)降频转换为中频(IF)信号。过滤掉残余在中
频(2MHz)信号中的1/Q信号后,放大中频信号。在中频信号中通过ADC数字化、自动增益控制,
以及精细信道的过滤、解调字节和包同步(bytesynchronization)等,所有这些都通过数字逻辑完
成。
CC1110的发射端基于RF频率直接合成。频率合成器包括一套完整的片上电感器电容器(LC)、
电压控制振荡器(VCO)和一个90度移相器,用来产生同相信号、正交相位信号(I/Q)和本地振荡
器(LO)信号给接收端的降频合成器。
26M的晶振作为频率合成器产生参考频率,同时为ADC和数字部分提供时钟脉冲。
一个特殊寄存器作为CPU访问的数据缓冲区。配置和状态寄存器统一映射到外部XDATA区的
寄存器进行访问。
数字基频包括频带配置支持,数据包处理和数据缓冲。一个片上电压管理器用来调节传递
1.8V的供电电压.
15.1
CPU使用了一系列选通命令来控制CC1110的无线操作。选通命令可以看成是单字节指令,每条命
令用来控制某个无线模块的功能。这些命令可以实现使能频率合成器、使能接收模式、使能发
送模式,以及其他功能。
图33简化状态表及典型用法和电流消耗
上图33中展示了一个简化状态表及典型用法和电流消耗。该表表明了在选通控制命令下的
状态转换。想看完整的状态转换机图可参考15.12节
图中命令简介:FSTXON:快速TX准备
TX_OFF_MODE:发送完数据时下一步选择做什么
RX_OFF_MODE:接收到数据后下一步选择做什么
选通命令通过写RFST寄存器发出。所有的选通命令列入表42中
RFST寄选通命令说明
存器值名称
0X00SFSTXON
当从IDLE到RX或TX(或SFSTXON)时,打开和校准频率合成器。(if
_AUTOCAL=1选择自动校准).如果是在RX或TX状态下发出命令则
会强制RADIO进入等待状态,此时只有频率合成器在运行(用于快速RX/TX
转换)
0X01SCAL
校准频率合成器并关掉它(打开快速启动)
0X02SRX
进入RX,若是从IDLE进入且选择自动校准(_AUTOCAL=1)先校准
进行频率校准
0X03STX
若在IDLE状态,则进入TX,若(_AUTOCAL=1)则先进行频率校准
如果在RX状态且空闲信息评估打开,若此时信道已清除则仅进入TX
0X04SIDLE
退出RX/TX,关掉频率合成器
0X05SAFC
执行自动频率偏移补偿(AFC)修正频率合成器
SNOP
所有其无操作
他
表42:选通命令
15.2无线寄存器
对无线操作是通过配置一系列的射频寄存器完成的。这些RF寄存器映射到了外部的XDATA
存储器中。
除了RF射频寄存器外,RF也提供无线模块的状态信息。RF寄存器的控制/状态位的详细信
息参见后面几小节的描述
15.3中断
无线模块具有两个中断向量:RFTXRX中断(中断0)和RF中断(中断12)。其功能如下:
·RFTXRX:接收准备好/发送完成。TXFIFO下溢出(TXFIFO空)、RXFIFO上溢出(RXFIFO满);
·RF:所有其他RF中断由RFIF中断标志给出。(其他普通的6路中断)
注意:这些RF中断均由上升沿触发。比如说SFD的状态标志从0变为1时产生一个中断。
RF中断也可以用来触发计数器1。
15.3.1
两个主要的中断控制SFR寄存器用于使能RF和RFERR中断:
●RFTXRX:E;
●RF:。
两个主要的中断标志用来保持RF和RFTXRX中断标志:
●RFTXRX:;
●RF:(CPU可检测的)
RF中断与6路不同的无线源有关。两个SFR寄存器(即RFIF和RFIM)用于分别设置6路
RFIF无线中断标志及其中断使能。它们是RFIF和RFIM
SFR寄存器中的中断标志RFIF表示每个RF中断向量的中断源所对应的状态。
RFIM中的中断使能位用来屏蔽禁止各RF中断向量的中断源。
注意:RFIM屏蔽中断源并不影响RFIF寄存器状态的更新。
中断标志和中断屏蔽详见下表
RFIF(0X90)RFIterruptFlags
位名字
7:6-未用
5IRQ_TIMEOUT/接收超时
4IRQ_DONE/包接收/发送完成
(上下溢检测)
3IRQ_CS/载波检测
2IRQ_PQT/前导(前同步码)
1IRQ_CCA/空闲(清除)信道评
估
0IRQ_SFD/帧首定界符,
同步字检测
复位值
00
0
0
0
0
0
0
读/写
R0
R/W0
R/W0
R/W0
R/W0
R/W0
R/W0
说明(0无中断置位)
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
0:无中断未决/1中断未决
由于在RFIM中个别中断屏蔽位的使用,加上用于所给的RF中断的主要中断
屏蔽,这就使得这个中断屏蔽有两层,特别要注意的是处理下面描述的这类中断。
为了清楚RF中断,和RFIF中的中断标志需要清0,代码如下:
MOVRFIF,#00h;清0所有中断标志.
MOVSICON#00h;清0总的中断标志
MOVRFIM,RFIM;设置中断屏蔽
注意:SICON在RFIF之后清0,否则S1CON。RFIF可能由于同一个中断而再次置位。
RFIM(0X91)RFIterruptMask
位名字复位值读/写说明(0无中断置位)
7:6-未用00R00:无中禁止/1:中断使能
5IRQ_TIMEOUT/接收超时0R/W00:无中禁止/1:中断使能
4IRQ_DONE/包接收/发送完成0R/W00:无中禁止/1:中断使能
(上下溢检测)
3IRQ_CS/载波检测0R/W00:无中禁止/1:中断使能
2IRQ_PQT/前导(前同步码)0R/W00:无中禁止/1:中断使能
1IRQ_CCA/空闲(清除)信道评0R/W00:无中禁止/1:中断使能
估
0IRQ_SFD/帧首定界符,0R/W00:无中禁止/1:中断使能
同步字检测
15.4TX/RX数据传送
无线模块的数据收发是通过寄存器RF完成的。当向RF寄存器写入数据后就进行发送,同理,
当从接收到数据后再从RF寄存器中读取数据。
在收发的时候需要在内存中使用一个FIFO的数据结构来执行数据TX/RX的FIFO。所以在绝
大多数实际应用中,推荐使用存储器直接存取(DMA)在存储器和芜线模块之间传送数
据,前面的13.2小节中已介绍过如何安装和使用DMA传送。
下面介绍一个小的例子来说明写TX数据,它没有使用DMA但说明了某些基本原理。
例:
MOVDPTR,PA_TABLE0//设置输出功率
MOVA,#0FFh
MOVX@DPTR,A
MOVCLKCON,#00H//选择26M晶振
MOVRFST,#03H;//下达STX命令开始TX
C1:JNBIE0,C1//等待接收是否准备好的中断标志位,然后写数据
CLRIE0
MOVRFD,#02H//第一个数据为包长度:2个字节
C2:JNBIE0,C2//等待发送完成
CLRIE0
MOVRFD,#12H//发送第一个有效数据为#12
C3:JNBIE0,C3;//等待发送完成
CLRIE0;
MOVRFD,#34H;//发送第二个有效数据为#34
简单的RF发送例子
15.5数据率设计
传输时数据率被使用,或接收时数据率被期望,由_M和
_E配置寄存器控制。数据率由下式算得。如下式所示,控制的数据率由晶
体频率决定。
下面的方法能用来找到对应于给定数据率的合适的值
若DRATE_M靠近其最近的寄存器而且接近256,则增加DRATE_E,使DRATE_M为0。
数据率可以设计为从12kbps到500kbps最小的步长如下图表:
15.6接收信道滤波带宽
为了满足不同信道宽度要求,使接收器信道滤波装置可编程控制。_E
和_M配置寄存器控制接收器信道滤波带宽。接收器信道滤波带宽与晶体
振荡器频率有关。下式给出了寄存器设置和信道滤波带宽之间的关系:
CC1110支持的信道滤波带宽如下表所示:
在300kHz之上,灵敏度和模块化性能会稍微降低。
为得到最高性能,信道滤波带宽应该选择为:信号带宽最多占80%信道滤波带宽。取决于
晶体精确度的信道中心容差也应该从信号带宽中减去。
如下例子作出了诠释:设置信道滤波带宽为500kHz,信号应该处于500kHz的80%之内,
即400kHz。假设发送装置和接收装置均为频率为915MHz,正负20ppm频率波动,总的频率波
动为915MHz的正负40ppm,即正负37kHz。如果整个发送信号带宽将在400kHz内被接收,
那么发送信号带宽应该为400kHz-2×37kHz的最大值,即326kHz
(ppm:频率稳定度:百万分之一)
15.7解调器,符号同步装置和数据决定
CC1110包含一个高级和高度可配置的解调器。信道滤波和频率偏移补偿以数字方式工作。
为产生RSSI等级(更多信息见15.10.2节),信道中的信号等级被评估。为得到增强的性能,
数据滤波也包含其中以增强效果。
15.7.1频率偏移补偿
使用2-FSK、GFSK或MSK调制器时,通过评估接收数据的中心区,在某种限制内解调器
将对发送器和接收器频率间产生的偏移进行补偿。这个值在FREQEST状态寄存器中可得到。
通过发布自动频率偏移补偿(SAFC)命令滤波,测量得到的偏移、F_EST
能自动地用来调制在频率合成器中控制的频率偏移。这将会增加对F中值的
电流RX频率偏移估计。F中的值用来调制合成器频率。因此,当使用自动
频率偏移补偿(SAFC)命令滤波时,频率偏移将在RX和TX中得到补偿。
为了避免对不通过RF信道中的有效信号进行测量的频率偏移进行的补偿,当在RX中发布
自动频率偏移补偿(SAFC)滤波和侦测到一个同步词汇时,F_EST被复制
到一个内部寄存器中。如果SAFC在RX中发布,在离开RX后这个内部值被加到
F上。不在RX中发布SAFC将会立即把这个内部值加到F
上。因此,SAFC命令滤波应该在当前接收到一个数据包,或在RX状态之外时发布。
注意,ASK或OOK调制不支持频率偏移补偿。
15.7.2位同步
位同步运算法则从到来的符号中提取时钟。此法则要求期望数据率如15.5节中描述的那样
进行配置。为调整到来的符号率的错误,再次同步持续地执行。
15.7.2字节同步
通过一个持续的同步词汇搜索来完成字节同步。同步词汇是一个16或32位可配置区域,在
数据包起始时在发送模式下由调制器自动插入。解调器用这个区域来搜寻比特流的边界。同步
词汇也起到系统标识符的作用,因为只有带正确的预定义同步词汇的数据包才能被接收。同步
词汇探测器和用户配置的16位同步词汇相关联。此相关门限可设置为15/16比特匹配或16/16比特
匹配。使用如下的前导质量指示器机制和/或载波感应条件,同步词汇能更进一步被限定。同步
词汇由SYNC1和SYNC0配置。
为了减少错误侦测同步词汇的可能性,一种叫做前导质量指示(PQI)的机制用来限定同步
词汇。一个被侦测的同步词汇若想被接收,则其必须超过前导质量的门限值。更多信息参见26
页15.10.1节
15.8数据包处理和硬件支持
CC1100提供有为数据包导向的通信协议内置的硬件支持。
在传输模式下,数据包处理器将添加如下元素在存储在TXFIFO内的数据包中: