关于582F信号和通频点的疑问

2693864-20230209145841106-991618537.png

    rfConfig.accessAddress = 0x71764129; // 禁止使用0x55555555以及0xAAAAAAAA ( 建议不超过24次位反转,且不超过连续的6个0或1 )    //接入地址,收发双方必须一致才可以正常收发
    rfConfig.CRCInit = 0x555555; //收发双方保持一致
    rfConfig.Channel = 8;  //通讯通达选择0-39
    rfConfig.Frequency = 2480000;  //通讯频点选择2400000-2483500
    rfConfig.LLEMode = LLE_MODE_BASIC | LLE_MODE_EX_CHANNEL; // 使能 LLE_MODE_EX_CHANNEL 表示 选择 rfConfig.Frequency 作为通信频点,频点步进1KHz    //如果不使能LLE_MODE_EX_CHANNEL 就使用rfConfig.Channel 作为通信频点
    rfConfig.rfStatusCB = RF_2G4StatusCallBack;
    rfConfig.RxMaxlen = 251;
    state = RF_Config(&rfConfig);


channel = 8依据图片通信频率载波应该是2420M,可以代码里面为什么设置2480000呢?


另外还有个问题,我有8台582F设备(7台从机,1台主机),地址都设置了

rfConfig.accessAddress = 0x71764129

,现在看来所有包都是广播包,有没有办法只让主机发广播包呢?其他从机只是固定的给主机发数据

位可选的,rf初始化配置就可以了

image.png

你上面使用的是2.4G的功能,如果需要使用。接收完数据之后可以手动的调用发送。

如果需要使用广播功能,类似多主多从,可以参考BLE文件夹下面multicentperi的多主多从例程,可以作为主机扫描连接,也可以作为从机广播。


不好意思,我没看明白


我的一个帖子问了两个问题:

  1.  channel = 8依据图片通信频率载波应该是2420M,可以代码里面为什么设置2480000呢?我的意思是channel如果是8的话对应的频率设置应该是2420000,但是代码里面为什么设置2480000.

  2. 由于7个从机非常高的频率在发消息,并且进行浮点运算,对于处理速度有限的582来讲已经处于极限,我现在并不敢让582处理接收数据,因为7个从机会彼此收到频率非常高的消息,频繁的进出tmos的任务,我担心582会处理不过来。但是目前我有个需求需要接收来自主机的消息,这个消息大概每几秒才传输一次,相当于一个心跳包吧,我不知道该如何尽可能的不过度开销582的性能,但是也能接受到心跳包



只有登录才能回复,可以选择微信账号登录