好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

单片无线收发芯片CC1100的原理与开发应用.docx

7页
  • 卖家[上传人]:pu****.1
  • 文档编号:410583736
  • 上传时间:2023-10-14
  • 文档格式:DOCX
  • 文档大小:177.96KB
  • / 7 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 单片无线收发芯片CC1100的原理与开发应用孙鹏CC1100是德仪(TI)公司生产的一款单片低功耗多通道无线收发芯片,它支持315/433/868/915MHZ的ISM/SRD 频段,广泛应用在自动抄表、远程监视报警、工业监控、无线传感器网络以及家庭自动化等场合笔者之前曾经在本刊介绍过一款无线收发芯片nRF905, CC1100与之相比,多了 315MHz频段支持,灵敏度更高 (可达-111dB,而nRF905为-100dB),速率更高(可达500Kbps),且管脚数量减少,接口更加简单一、封装与管脚定义序号名称类型说明1SCLK数字输入SPI接口时钟信号2SO(GDOl)数字输出CSn=0: SPI接口数据输出;CSn=l:通用输出口3GDO2数字输出通用输出口4DVDD数字电源1.8〜3.6V数字电源地5DCOUPL数字电源用于去耦的1.6〜2.0V数字电源输出6GDO0数字I/O 口通用输入/输出口7CSn数字输入片选信号,0有效8XOSC Q1模拟I/O晶振脚1,或振荡时钟输入9, 11, 14, 15AVDD模拟电源1.8〜3.6V模拟电源10XOSC Q2模拟I/O晶振脚212RF P射频I/O射频输入输出13RF N射频I/O射频输入输出16GND模拟地17RBIAS模拟I/O参考电流的外部偏置电阻连接端18DGUARD数字电源用于数字噪声隔离的电源供电端19GND数字地20SI数字输入SPI数据输入端二、CC1100的典型应用电路CC1100的应用电路简单,仅需很少的外部元件即可工作。

      如图2所示为315/433MHZ频段的参考电路图中R1为偏置电阻,用以调整精确的偏置电流 C8、C9、L1、L2构成一个非平衡变压器(Balun),将 CC1100的差分输出变为单端射频信号,与LC网络一起进行阻抗变换以匹配50欧姆天线(或同轴电缆)在不同工 作频率下各元件的值也有所不同,具体请参见CC1100的数据手册图2 315/433MHz参考电路三、CC1100与MCU的接口由硬件连接图可以看出,CC1100与MCU的接口包括两部分:SPI接口和GDO【0〜2】SPI接口用于双向数据 传输,而GDO【0〜2】为可编程通用输出端口,主要配置用于表征CC1100的状态、时钟输出等1、SPI 接口CC1100 通过一个简单的 4 线 SPI 接口进行配置以及数据的写入和读取总线上所有的地址和数据传送都是高位 (MSB)在前所有SPI传送都是起始于一个包含读/写(R/W)位、访问位和6位地址位的头字节,在地址和数据传 送过程中,片选信号(CSn,低有效)必须保持为低电平,如果CSn变高,过程结束当CSn变低后,MCU必须等到CC1100的SO脚变低才可以开始发送头字节SO=0标志着电压调整稳定且晶振 已开始工作。

      除非芯片工作于休眠(SLEEP)或晶振关闭(XOFF)状态,否则在CSn=0后SO脚都会立刻变为低电 平芯片状态字节:当MCU发送完头字节、数据字节或者命令后,CC1100会从SO脚输出芯片状态字节该字节包 括对MCU有用的关键状态信息,具体如下S7: CHIP_RDYn,准备好信号,在SCLK的第一个有效边沿前,此位必须变为0,表明晶振已正常工作;S【6-4】: STATE值,表明芯片当前所处状态,如表2所示;S【3-0】: FIFO_BYTES_AVAILABLE,读数据时(头字节中R/W=1)表明接收FIFO中可读取的字节数,写数 据时(R/W=0)表明发送FIFO可写入字节数表2芯片状态字节构成7CHIP RDYn0:准备好6:4STATE【2: 0】标志当前状态=000:空闲状态; =001: RX接收模式;=010: TX发送模式;=011:发送就绪; =100:频合校准; =101: PLL正在设置;=110:接收FIFO溢出;=111:发送FIFO空3:0FIFO_BYTES_AVAILABLE收/发FIFO中可用字节数2、通用输出管脚CC1100具有3个通用数字输出管脚:GDO0、GDO1和GDO2,它们可以通过SPI接口被MCU配置成不同的功 能,配置寄存器 IOCFG【0, 1, 2】分别对应三个管脚的功能配置。

      GDO1同时也是SPI接口的SO 口,因此,只有在CSn=1时,所配置的输出功能才有效GDO1默认的配置为三 态输出,在CSn为高时此管脚保持为高阻态,这样在总线连接多个器件时不会影响总线工作;GDO0默认配置为晶振频率的192分频输出(126KHz〜146KHz)由于一上电复位Xosc就开始工作,因此此时 钟输出可以用于给系统中其它器件提供振荡信号另外, CC1100 片上集成有 1 个模拟温度传感器,当向 IOCFG0.GDO0_CFG 写入 0x80 时使能传感器,此时, GDO0脚的电压与温度成比例关系而GDO2的默认设置为CHIP_RDYn信号输出通过对 IOCFG【0, 1, 2】寄存器的编程不仅可以改变 GDO 口线的功能,还可以改变其输出高低电平状态,寄 存器构成如表 3 所示:表3 IOCFGx寄存器结构7保留读出时为06GDOx INV可读与,选择有效输出极性:=1:低有效;=0:咼有效5:GDO CFGx【5:可读写,功能配置GDO_CFGx【5: 0】共64种状态,分别对应不同的功能设置,如:收/发FIFO满、空标志、接收/发送完同步字 标志、三态输出、晶振频率分频输出等等,详见数据手册。

      GDOx的配置在与MCU接口中非常重要,MCU可通过检 测它们的输出来判断CC1100所处的状态四、CC1100的寄存器CC1100 的内部寄存器包括五种:配置寄存器、命令滤波寄存器、状态寄存器、收 /发 FIFO 以及功率配置表 PATABLE1、配置寄存器:CC1100共有47个配置寄存器,如表4所示,包括GDO【0〜2】配置、收发缓冲区门限、工作频率、调制模式等 虽然寄存器较多,但是所有配置值可以很简便的由 TI 公司提供的 SmartRF 软件得到当然也可以手动计算,数据手 册中给出了各寄存器详细的定义表4配置寄存器地址名称功能0x00IOCFG2GDO2 配置0x01IOCFG1GDO1配置0x02IOCFG0GDO0 配置0x03FIFOTHR收、发FIFO门限0x04SYNC1同步字0x05SYNC00x06PKTLEN包长度0x07PKTCTRL1包自动控制0x08PKTCTRL00x09ADDR器件地址0x0ACHANNR信道号0x0BFSCTRL1频率合成器控制0x0CFSCTRL00x0DFREQ2频率控制字0x0EFREQ10x0FFREQ00x10MDMCFG4: 0调制解调器配置0x110x120x130x140x15DEVIATNModem偏移设置0x16MCSM2主控制状态机配置0x17MCSM10x18MCSM00x19FOCCFG频率偏移补偿控制0x1ABSCFG位同步配置0x1BAGCTRL2AGC控制0x1CAGCTRL10x1DAGCTRL00x1EWOREVT1事件0超时0x1FWOREVT00x20WORCTRL唤醒控制0x21FREND1前端RX配置0x22FREND0前端TX配置0x23FSCAL3频率合成器校准0x24FSCAL20x25FSCAL10x26FSCAL00x27RCCTRL1RC振荡器配置0x28RCCTRL00x29FSTEST频合校准控制0x2APTEST产品测试0x2BAGCTESTAGC测试0x2CTEST2各种测试设置0x2DTEST10x2ETEST0配置寄存器都是可读写的,读写选择由R/W位控制。

      写入时,每一个头字节或数据字节发送时状态字节都会从SO发出读出时,每个头字节发送时,状态字节都会从SO发出连续地址的寄存器可以通过将头字节中的burst位B置1而实现连续写入,地址为A5〜A0设置写入的内部地址寄存器初始地址,此寄存器每写入一字节数据时自动加1Burst访问可以是读也可以是写,但都必须由CSn置1来结束2、命令滤波寄存器命令滤波可以看做是CC1100的单字节指令通过对命令滤波寄存器的选址,内部时序被启动这些命令用来关 闭晶体振荡器、使能接收/发送、清空FIFO等14个命令滤波如表5所示表5 CC1100指令集指令名称功能0x30SRES复位芯片0x31SFSTXON校准频率合成器使能0x32SXOFF关闭晶振0x33SCAL校准频合并将其关闭0x34SRX使能接收0x35STX使能发送0x36SIDLE退出收发,关闭频合进入空闲状态0x38SWOR开始自动RX检测0x39SPWD进入掉电模式0x3ASFRX清空RX FIFO0x3BSFTX清空TX FIFO0x3CSWORRST复位Eventl的值,用于唤醒模式下0x3DSNOP空操作命令滤波寄存器的访问和配置寄存器的写操作一样,只是不传输数据。

      访问命令滤波寄存器只发送一个头字节, 其中R/W位为0,突发访问位为0,六个地址位(0x30和0x3D之间)即为指令码当写命令滤波寄存器时,状态字 节也从SO管教输出一个命令滤波操作可以在任何其他SPI访问之后发送,而不需要将CSn拉至高电平除了 SPWD和SXOFF指令要 在CSn变咼时执行外,其余指令在写入后都会立即被执行3、状态寄存器CC1100的状态寄存器共有14个,如表6所示,均为只读表6状态寄存器地址名称功能0x30PARTNUMCC1100 的 PART 号0x31VERSION当前版本号0x32FREQEST频率漂移估计0x33LQI解调器链路估计0x34RSSI接收信号强度0x35MARCSTATE控制状态机状态0x36WORTIME1WOR计数器0x37WORTIME00x38PKTSTATUS当前GDOx和包状态0x39VCO_VC_DACPLL校准模块当前设 置0x3ATXBYTESTX FIFO中字节数0x3BRXBYTESRX FIFO中字节数0x3CRCCTRL1 STATUS上次RC振荡器 校准结果0x3DRCCTRL0 STATUS由于命令滤波和状态寄存器地址相同,为了加以区分,CC1100规定,对于地址在0x30〜0x3D范围内的寄存器操 作,burst位用来选择是状态寄存器(=1)还是命令。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.