CC1101工作流程_第1页
CC1101工作流程_第2页
CC1101工作流程_第3页
CC1101工作流程_第4页
CC1101工作流程_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、我现在做 cc1101,笔记2009-01-09 15:59CC1101 工作流程:1. 初始化 SPI,MCU 各引脚。当有数据接收或发送状态声明时,有中断和查询两种方式。GDO0 与GDO 引脚输出至 MCI 引脚,若要用中断则要接至 MCI 外部中断引脚,查询时 则可用GPIO2. 复位 CC11013. 初始化 CC1101 (写操作时可从 SO 中读出 CC1101 状态)初始化后 CC1100 为 IDLE 状态.4. 状态机转换,写/读 FIFO 数据。每次写操作时 SO 返回的值为写操作前的 CC1100 状态值,具体 值见 Table20 ;读状态命令为当前 CC1100 犬

2、态值,具体值见寄存器 0X35 说明; 注意两者区别。快速认识 Cc1100Cc1100 可以工作在同步模式下,代价是:MCU 自己控制前导码。本系统中,Cc110 0 将工作在异步模式下。知识点Head Byte :在引脚 Cc1100.Csn 有效后,通过 SPI 总线写入 Cc1100 的第一个字节。Status Byte :在写入 HeadByte 的同时,MCU 得 到Status Byte。Burst Bit :在 Head Byte 中的一个 Bit, 有效值 =1,无效值=0GDO0:GDOC 可用作 FIFO 状态输出,载波感应(CS),时钟输出,GDO0 脚也能用作集成于芯

3、片的模拟温度传感器(未用).配置寄存器为IOCFG0( 0X02),现在配置为 RX 模式下数据状态反应输出.GDO1:GDO1 与 SPI 的 SO 共用引脚,默认状态下为 3 态, 当CSn 为低电平时,此引脚 SPI 的 SO 功能生效。配置寄存器为 IOCFG0(0X01), 现在配置为空闲状态下 3 态,SPI 模式下 SO.GDO2:GDO2 可用作 FIFO 状态输出,载波感应(CS),时钟 输出,配置寄存器为 IOCFG0( 0X00),现在配置为载波感应(CS)输出.TXOFF_MODE/RXOFF_MODE:注意,此配置为在数据包被发送/接收后状态机状态 决定位,仅是在发生

4、发送或者接收后动作;当为 IDLE 时发 SRX/STX 后状态机不 按此配置运行。TX/RX 后要校准。功率放大控制(PATABLE):0X3E 为功率写入地址,0X22 为为功率配置寄存器PATABLE 是一个 8 字节表,定义了 8 个 PA 功率值。这个表从最低位(0)到最 高位( 7)可读和写,一次一位。一个索引计数器用来控制对这个表的访问。每读出或写入表中的一个字节,计数器就加 1 。当 CSn为高时,计数值置为最小值。当达到最大值时,计数器由零重新开始计数。FRENDO.PA_POWER: 0) 从 8 个功率值中选择 1 个,且振幅为相应数等级。异步模式 :在此模式下,CC11

5、01中的MCU勺若干支持机制会停 用,包括数据包硬件处理, FIFO 缓冲 , 数据白化,交错 (interleaver) 和前向纠 错(FEC),曼彻斯特编码(Manchester encoding);MSK 不支持异步模式;PKTCTRL0.PKT_FORMAT = 使 3 能异步模式,GDO0为 in put , GDO0, GDO 或 GDO 为 output 相应配置位为 IOCFGO.GDOO_CFG,IOCFG1.GDO1_CFG IOCFG2.GDO2_CFG;电磁波激活 (WOR):在 WO 滤波使用之前 RC 振荡器必须启用,RC 振荡 器是 WOR 定时器的时钟源.在 W

6、O下,收到信号后会自动进入 RX 模式.载波感应(CS)与 RSSI:因此两配置相互有连系 , 所以一起论述 .RSSI 只能在 RX 模式下才能有效,作用为对当前信 号质量评估,信号质量可从 RSSI 寄存器读出.RSSI 信号强度可从 0X34 取出.RSSI(信号强度)计算公式:注:此为 433M 下,结果 为负数,RSSI_dBm=(RSSI-256)/2-74 (RSSI=128)RSSI_dBm= (RSSI/2)-74(RSSI128)CS 只在 RX 模式下才能有效,当信号质量高于设定 门限值时,CS 状态将会被声明。现在配置为 GDO 输出感应状态.CS 门限值由以下 4 个

7、寄存器决定? AGCCTRL2.MAX_LNA_GAIN? AGCCTRL2.MAX_DVGA_GAIN? AGCCTRL1.CARRIER_SENSE_ABS_THR? AGCCTRL2.MAGN_TARGETCS 门限值计算公式:表默认门限值+(MAGN_TARGET-33) + CARRIER_SENSE_ABS_THR.表默认门限值见 table29,table30. 由AGCCTRL2.MAX_LNA_GAIN AGCCTRL2.MAX_DVGA_GA 决定.默认门限值表只给了两个数据速率下的值 ,其余由自己测.我们 对此要求不是太高 , 可以参考用这个表 .CARRIER_SENS

8、E_ABS_THHR 应表中-77 的值,最后单位为Example:在 250K 下AGCCTRL2.MAX_LNA_GAIN = 00 AGCCTRL2.MAX_DVGA_GAIN = 得 00 出表中为 -90.5MAGN_TARGET = 7(42),CARRIER_SENSE_ABS_THR = 1(1)门限为 -90.5 + (42-33) + 1=-82.5dBm清理信道访问 (CCA):清理信道访问用来指示当前信号是空闲还是忙。当忙时是否丢弃当前数据,寄存器MCSM1.CCA_MQD定是否丢弃.默认配置为保留 当前寄存器中数据 ,丢弃下一步要处理数据.数据 FIFO:当 TX 操

9、作时,由 MCU 空制,溢出时 CC1101 出错;当 RX操作时,读空时 CC1101 出错RX FIFO 和 TX FIFO 中的字节数也能分别从状态寄 存器RXBYTES.NUM_RXBYTESXBYTES.NUM_TXBYT 中读出4 位 FIFOTHR.FIFO_THR 设置用来控制 FIFO 门限 点 八、读单字节时,csn 继续保持低;。突发访问方式 允许一地址字节,然后是连续的数据字节,直到通过设置 CSn 为高来断访问当写操作时, 最后一个字节被传送至 SI 脚后, 被 SO 脚接收的状态位会表明在 TX FIFO 中只有一个字节是空闲, 寄存器分类共 47 个,可读,可写0

10、 x000 x2E共 14 个,只读0 x300 x3DdBm.ConfigrationRegistersStatus Registers本系统是用到的 Strobe :寻址空间: 0 x300 x3DCC1100_STROBE_RESET14 个地址,对相应的地CC1100_STROBE_ENTER_RX_MODE 址进行写,CC1100_STROBE_ENTER_TX_MODECC1100_COMMAND_STROBE_SIDLE就相当于激活了对应的CC1100_COMMAND_STROBE_SFRX 命令TX FIFO 共 64 个,只写RX FIFO共 64 个,只读Status(Command)Registers 操作 :当地址为 0X300X3D 寸burst 为 1: 对 Status Registers 的操作 Status Registers 只可读,且只能一 次读一个字节 , 不可写burst 为 0: 对 Command Registers 操作 寄存

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论