nt06 发表于 2013-11-1 16:30

求教SI4432如何配置寄存器

了半天手册 没看懂对着程序又没看懂
求教如何配置寄存器
void SI4432_init(void)
{
      
      ItStatus1 = spi_rw(0x03,0x00);                              // 清RF模块中断      
      ItStatus2 = spi_rw(0x04,0x00);
      
      spi_rw(0x06|0x80, 0x00);                                          //关闭不需要的中断
      
      spi_rw(0x07|0x80, SI4432_PWRSTATE_READY);   // 进入 Ready 模式
         
      spi_rw(0x09|0x80, 0x7f);                                          //负载电容= 12P

      spi_rw(0x0a|0x80, 0x05);                                        // 关闭低频输出
      spi_rw(0x0b|0x80, 0xea);                                       // GPIO 0 当做普通输出口
      spi_rw(0x0c|0x80, 0xea);                                       // GPIO 1 当做普通输出口      
      spi_rw(0x0d|0x80, 0xf4);                                          // GPIO 2 输出收到的数据
      
      spi_rw(0x70|0x80, 0x2c);                                          // 下面的设置根据Silabs 的Excel
      spi_rw(0x1d|0x80, 0x40);                                          // 使能 afc
               
//======================================1.2K bps setting start===============================================
      spi_rw(0x1c|0x80, 0x16);      
               
      spi_rw(0x20|0x80, 0x83);            
      spi_rw(0x21|0x80, 0xc0);
      spi_rw(0x22|0x80, 0x13);
      spi_rw(0x23|0x80, 0xa9);
      spi_rw(0x24|0x80, 0x00);
      spi_rw(0x25|0x80, 0x04);
      
      spi_rw(0x2a|0x80, 0x14);
      spi_rw(0x6e|0x80, 0x09);
      spi_rw(0x6f|0x80, 0xd5);      
}

为啥这里总是|ox80 ? 不懂啊哪位大哥 解释一下 感激不尽

nt06 发表于 2013-11-1 16:30

chunyang 发表于 2013-11-1 21:49

器件手册是一定要读懂的。

EnergyMCU 发表于 2013-11-2 11:05

多看数据手册,答案都在里面

nt06 发表于 2013-11-2 12:08

嘿嘿终于搞懂了

leo2002zhang 发表于 2013-11-11 10:49

为什么呢?
页: [1]
查看完整版本: 求教SI4432如何配置寄存器