Change Looptimes

state => bind_counter
This commit is contained in:
Bryce Johnson 2019-06-17 19:01:27 -06:00
parent d940a7e49a
commit a7ea8e012e

View File

@ -17,8 +17,8 @@
#include "iface_cc2500.h" #include "iface_cc2500.h"
#define REDPINE_LOOPTIME_FAST 9 //9ms #define REDPINE_LOOPTIME_FAST 25 //2.5ms
#define REDPINE_LOOPTIME_SLOW 22 //22ms #define REDPINE_LOOPTIME_SLOW 6 //6ms
#define REDPINE_BIND 1000 #define REDPINE_BIND 1000
#define REDPINE_PACKET_SIZE 11 #define REDPINE_PACKET_SIZE 11
@ -98,46 +98,47 @@ static void REDPINE_data_frame() {
static uint16_t ReadREDPINE() static uint16_t ReadREDPINE()
{ {
if ( prev_option != option ) if ( prev_option != option )
{ // Frequency adjust { // Frequency adjust
CC2500_WriteReg(CC2500_0C_FSCTRL0, option); CC2500_WriteReg(CC2500_0C_FSCTRL0, option);
prev_option = option ; prev_option = option ;
} }
if(IS_BIND_IN_PROGRESS) if(IS_BIND_IN_PROGRESS)
{ {
if(bind_counter== REDPINE_BIND) if(bind_counter == REDPINE_BIND)
REDPINE_init(0); REDPINE_init(0);
if(state == REDPINE_BIND/2) if(bind_counter == REDPINE_BIND/2)
REDPINE_init(1); REDPINE_init(1);
REDPINE_set_channel(49); REDPINE_set_channel(49);
CC2500_SetPower(); CC2500_SetTxRxMode(TX_EN);
CC2500_Strobe(CC2500_SFRX); CC2500_SetPower();
REDPINE_build_bind_packet(); CC2500_Strobe(CC2500_SFRX);
CC2500_Strobe(CC2500_SIDLE); REDPINE_build_bind_packet();
CC2500_WriteData(packet, REDPINE_PACKET_SIZE); CC2500_Strobe(CC2500_SIDLE);
if(--bind_counter==0) CC2500_WriteData(packet, REDPINE_PACKET_SIZE);
{ if(--bind_counter==0)
BIND_DONE; {
REDPINE_init(sub_protocol); BIND_DONE;
} REDPINE_init(sub_protocol);
return 9000; }
} return 9000;
else }
{ else
CC2500_SetTxRxMode(TX_EN); {
REDPINE_set_channel(hopping_frequency_no); CC2500_SetTxRxMode(TX_EN);
CC2500_SetPower(); REDPINE_set_channel(hopping_frequency_no);
CC2500_Strobe(CC2500_SFRX); CC2500_SetPower();
REDPINE_data_frame(); CC2500_Strobe(CC2500_SFRX);
CC2500_Strobe(CC2500_SIDLE); REDPINE_data_frame();
hopping_frequency_no = (hopping_frequency_no + 1) % 49; CC2500_Strobe(CC2500_SIDLE);
CC2500_WriteData(packet, REDPINE_PACKET_SIZE); hopping_frequency_no = (hopping_frequency_no + 1) % 49;
if (sub_protocol==0) CC2500_WriteData(packet, REDPINE_PACKET_SIZE);
return REDPINE_LOOPTIME_FAST*100; if (sub_protocol==0)
else return REDPINE_LOOPTIME_FAST*100;
return REDPINE_LOOPTIME_SLOW*100; else
} return REDPINE_LOOPTIME_SLOW*1000;
return 1; }
return 1;
} }
// register, fast 250k, slow // register, fast 250k, slow