相信哥咯 发表于 2012-8-13 16:26

不加pa,si4432都不超过10米

我功率已经设置为20db,为什么这样?我的环境干扰太厉害?就办公室里而已啊。

SI4432_W_Reg(SI4432_TX_Power,0x03);

相信哥咯 发表于 2012-8-13 17:09

/*软件重启*/
    SI4432_W_Reg(SI4432_Operating_Function_Control_1,0x80);   
    rt_thread_delay(10);


    /*设置基频*/
    SI4432_W_Reg(SI4432_Frequency_Band_Select,0x57);
    SI4432_W_Reg(SI4432_Nominal_Carrier_Frequency_1,0x00);
    SI4432_W_Reg(SI4432_Nominal_Carrier_Frequency_2,0x00);

    /*设置发送速率9.6k*/
    SI4432_W_Reg(SI4432_TX_Data_Rate_1,0x4e);
    SI4432_W_Reg(SI4432_TX_Data_Rate_0,0xa5);
    SI4432_W_Reg(SI4432_Modulation_Mode_Control_1,0x21); /*速率曼彻斯特编码白化*/

    /*设置调制解调器参数*/
    SI4432_W_Reg(SI4432_Modulation_Mode_Control_2,0x22);/*fsk fifi mode*/
    SI4432_W_Reg(SI4432_Frequency_Deviation,0x18); /*fd 10khz*/
    SI4432_W_Reg(SI4432_Frequency_Hopping_Channel_Select,0x00);/*频道*/
    SI4432_W_Reg(SI4432_Frequency_Hopping_Step_Size,0x14);/*频道间隔200k*/
    SI4432_W_Reg(SI4432_IF_Filter_Bandwidth,0x15);/*IF滤波器带宽*/
    SI4432_W_Reg(SI4432_AFC_Loop_Gearshift_Override,0x40);/*afc enble*/
    SI4432_W_Reg(SI4432_Clock_Recovery_Oversampling_Ratio,0xd0);
    SI4432_W_Reg(SI4432_Clock_Recovery_Offset_2,0x00);
    SI4432_W_Reg(SI4432_Clock_Recovery_Offset_1,0x9d);
    SI4432_W_Reg(SI4432_Clock_Recovery_Offset_0,0x49);
    SI4432_W_Reg(SI4432_Clock_Recovery_Timing_Loop_Gain_1,0x00);
    SI4432_W_Reg(SI4432_Clock_Recovery_Timing_Loop_Gain_0,0x99);   
    SI4432_W_Reg(SI4432_TX_Power,0x03);

    /*packet handler */
    SI4432_W_Reg(SI4432_Data_Access_Control,0x8d); /*crc校验,包收发自动处理*/
    SI4432_W_Reg(SI4432_Header_Control_1,0x01);    /*地址检查一个字节header3,无广播地址*/
    SI4432_W_Reg(SI4432_Header_Control_2,0x1e);/*一个字节header3, 固定包长度,4个字节同步字*/
    SI4432_W_Reg(SI4432_Header_Enable_3,0xff); /*使能*/
    SI4432_W_Reg(SI4432_Preamble_Length,0x08); /*4个字节preamble*/
    SI4432_W_Reg(SI4432_Preamble_Detection_Control,0x14);/*20 preamble detection*/
    SI4432_W_Reg(SI4432_Transmit_Header_3,0xab);/*设置目标地址*/
    SI4432_W_Reg(SI4432_Check_Header_3,0xab);/*设置本机地址*/
    SI4432_W_Reg(SI4432_Operating_Function_Control_2,0x10);    /*多次接收,自动发送*/
    SI4432_W_Reg(SI4432_Transmit_Packet_Length,0x10);/*包长度*/
    SI4432_W_Reg(SI4432_Sync_Word_3,0x2d);
    SI4432_W_Reg(SI4432_Sync_Word_2,0xd4);
    SI4432_W_Reg(SI4432_Sync_Word_1,0x00);
    SI4432_W_Reg(SI4432_Sync_Word_0,0x00);

   
    /*中断配置*/
    SI4432_R_Reg(SI4432_Interrupt_Status_1);
    SI4432_R_Reg(SI4432_Interrupt_Status_2);
    SI4432_W_Reg(SI4432_Interrupt_Enable_1,0x06);/*发送接收中断*/
    SI4432_W_Reg(SI4432_Interrupt_Enable_2,0x00);
    SI4432_W_Reg(SI4432_Operating_Function_Control_1,0x05);/*接收*/

tangzzbb 发表于 2012-8-14 09:57

你的问题出在硬件上,你列软件是没有用的。
用频谱你就或功率计先测下输出功率是不是20dBm.

相信哥咯 发表于 2012-8-14 17:12

3# tangzzbb

哪个的硬件,地板还是模块,哥,我是网上买的模块。还是我的地板有问题啊?

caiwenbin 发表于 2012-10-22 17:16

相信哥,你不务正业啊!

chunyang 发表于 2012-10-24 12:34

要么你的硬件环境不对,要么你的代码不对,先确定硬件是否有问题。

lincoln1000 发表于 2012-10-26 16:37

量下ic输出口那发射功率是不是你的预期,要不就是硬件天线设计不好
页: [1]
查看完整版本: 不加pa,si4432都不超过10米