nRF905自学笔记

来源:互联网 发布:怎么装修企业淘宝店铺 编辑:程序博客网 时间:2024/05/22 05:18

一、掉电:由于断电、电力不足或者失电等原因使单片机无法正常运行的专业术语。

          单片机为了降低系统的功耗,一般有两种模式:

           1、空闲模式:当单片机进入空闲模式时,除CPU处于休眠状态外,其余硬件全部处于活动状态,芯片中程序涉及的数据存储器和特殊功能寄存器中的数据在空闲模式期间都保持原值。在此模式下可由任意一个中断或硬件复位唤醒。

            2、掉电模式:此时处于休眠模式,外部晶振停振,CPU、定时器、串行口全部停止工作,只有外部中断继续工作。芯片中程序涉及的数据存储器和特殊功能寄存器中的数据在空闲模式期间都保持原值。可用外部中断低电平触发,或下降沿触发中断或硬件复位模式唤醒单片机。

NRF905两种模式:

      在掉电模式中,被静止,电流消耗最小。典型值低于2.5uA。在这种模式中,NRF905是不活动的状态,这时候平均电流消耗量最小,配置子的内容保持不变。

      在Standby模式在保持电流消耗最小的同时保证最短的到ShockVurstRX, ShockVurstTX的启动时间,当进入这种模式时,一部分晶体振荡器是活动的,电流消耗取决于晶体振荡器频率。

二、器件配置

       Nrf905的所有配置都通过SPI接口进行,SPI接口由5个寄存器组成,一条SPI指令用来决定进行什么操作。SPI接口只有在掉电模式和Standby模式是激活的。

三、SPI寄存器配置

      SPI接口由5个寄存器组成,执行寄存器的回读模式来确认寄存器的内容。

1、  状态寄存器:Status-Register

      该寄存器包括数据就绪(DR)和地址匹配(AM)状态。

2、  RF配置寄存器:(RF-Configuration Register

      该寄存器包含收发器的频率,输出功率等配置信息。

3、  发送地址(TX-Address

      寄存器包含目标器件的地址,字节长度由配置寄存器设置。

4、  发送有效数据(TX-Payload

      寄存器包含发送的有效ShockBurst数据包数据,字节长度由配置寄存器设置。

5、  接受有效数据(TX-Payload

      寄存器包含接收到的有效ShockBurst数据包数据,字节长度由配置寄存器设置,在寄存器中的有效数据有数据准备继续(DR)指示。

四、SPI指令设置

      当CSN为低时,SPI接口开始等待一条指令,任何一条新的指令均由CSN的由高到低的转换开始。

五、NRF905的特点:

1、  载波检测:当NRF905工作在收发模式时,如果有与器件被编程通道相同的载波出现,载波检测(CD)引脚置高。这种特征对于避免工作在相同频率的不同发射机的数据碰撞非常有效,任何时候当器件准备发射数据时,应先进入接收模式,首先判断是否希望的通道可以输出数据,这种形式是非常简单的发射前先监听的协议。

2、  DR信号(数据准备就绪)

      数据准备就绪(DR)信号使最大限度的降低软件编程的复杂性成为可能。

      在发送模式时,一个完整的数据包发送结束时,DR信号置高,告诉MCU NRF905已经准备好新的动作。在信号数据包发送结束或转换到其他模式或Standby模式时复位置低。

      在自动重发模式时:数据准备就绪信号咋每次数据包传输的开始时产生脉冲,DR信号在前导码的开始时置高,在前导码结束时置低,即前面所说的产生一个脉冲。

      在接收模式时,在接收到完整的一个数据包时DR信号被置高。然后MUC可以通过SPI接口读取数据。

3、  自动重发:在有噪音或者没有碰撞控制的系统中,自动重发是非常有必要的。提高系统可靠性的一种途径就是使用自动重发的功能。配置NRF905自动重发的方法具体为:将配置寄存AUTO_RETRAN位置高,只要TRX_CETX_EN保持为高,电路将连续发送相同的数据包,当TRX_CE为低时,器件完成当前正在发送的数据包后转换到Standby模式。

4、  低功耗接收模式:当使用载波检测来判断期望的通道是否可以发送数据时,低功耗模式是非常好的选择。

5、  地址匹配:当NRF905工作在接收模式时,当引入的数据包的地址与器件自身地址相同时,地址匹配(AM)引脚置高。当数据在接收途中出现错误,数据传输有问题,即DR信号没有置高时,AM在数据包接收结束时,会被复位置低,这个特征对于MUC非常有用,如果地址匹配(AM)引脚置高,MUC可以决定等待,观察如果数据准备就绪(DR)信号置高,说明一个有效的数据包已经接收,或者放弃一个可能已经接收的有效数据包并改变工作模式。

0 0