本帖最后由 liu8023lai 于 2012-11-22 19:37 编辑
第一个问题:
官方编程指南提出下,频率偏差(Frequency Deviation)寄存器有两个作用:
在数据包发射期间,用于定义RF 链接的发射频率偏差(Frequency Deviation)。
在接收模式期间,如果AFC 被允许,该寄存器定义自动频率校正(AFC)的最大频率偏差。在进入接收或发射模式前根据相应的功能来设置该寄存器是很重要的。
看其所给的收发双向例程中,
发射时设置SpiWriteRegister(0x72, 0x48); //write 0x48 to the Frequency Deviation register
接收时设置SpiWriteRegister(0x72, 0x1F); //write 0x1F to the Frequency Deviation register
每次接收状态和发射状态切换时候都重新设置了这个寄存器,而买的模块给的例程就直接在SI4432初始化时给定0x72寄存器的值,转变状态时没有重新设置。不重新设置有什么缺点吗?
第二个问题:header设置问题,不需要header的话HEADER_CONTROL_1是不是应该为0x00最好?而模块给的例程是
RF4432_WriteReg( HEADER_CONTROL_1, 0x8c );
RF4432_WriteReg( HEADER_CONTROL_2, 0x0a );
虽说HEADER_ENABLE_0~3都是0x00给屏蔽掉了,但那个0x8c何解???
问题比较肤浅,比较长,希望各位耐心看完,谢谢! |