@@ -310,7 +310,7 @@ uint8_t SX1276_LoRaRadio::get_status(void)
310
310
void SX1276_LoRaRadio::set_channel (uint32_t freq)
311
311
{
312
312
_rf_settings.channel = freq;
313
- freq = (uint32_t ) ((double ) freq / (double ) FREQ_STEP);
313
+ freq = (uint32_t ) ((float ) freq / (float ) FREQ_STEP);
314
314
write_to_register (REG_FRFMSB, (uint8_t ) ((freq >> 16 ) & 0xFF ));
315
315
write_to_register (REG_FRFMID, (uint8_t ) ((freq >> 8 ) & 0xFF ));
316
316
write_to_register (REG_FRFLSB, (uint8_t ) (freq & 0xFF ));
@@ -389,7 +389,7 @@ void SX1276_LoRaRadio::set_rx_config(radio_modems_t modem, uint32_t bandwidth,
389
389
_rf_settings.fsk .preamble_len = preamble_len;
390
390
_rf_settings.fsk .rx_single_timeout = (symb_timeout + 1 ) / 2 ; // dividing by 2 as our detector size is 2 symbols (16 bytes)
391
391
392
- datarate = (uint16_t ) ((double ) XTAL_FREQ / (double ) datarate);
392
+ datarate = (uint16_t ) ((float ) XTAL_FREQ / (float ) datarate);
393
393
write_to_register (REG_BITRATEMSB, (uint8_t ) (datarate >> 8 ));
394
394
write_to_register (REG_BITRATELSB, (uint8_t ) (datarate & 0xFF ));
395
395
@@ -554,11 +554,11 @@ void SX1276_LoRaRadio::set_tx_config(radio_modems_t modem, int8_t power,
554
554
_rf_settings.fsk .iq_inverted = iq_inverted;
555
555
_rf_settings.fsk .tx_timeout = timeout;
556
556
557
- fdev = (uint16_t ) ((double ) fdev / (double ) FREQ_STEP);
557
+ fdev = (uint16_t ) ((float ) fdev / (float ) FREQ_STEP);
558
558
write_to_register ( REG_FDEVMSB, (uint8_t ) (fdev >> 8 ));
559
559
write_to_register ( REG_FDEVLSB, (uint8_t ) (fdev & 0xFF ));
560
560
561
- datarate = (uint16_t ) ((double ) XTAL_FREQ / (double ) datarate);
561
+ datarate = (uint16_t ) ((float ) XTAL_FREQ / (float ) datarate);
562
562
write_to_register ( REG_BITRATEMSB, (uint8_t ) (datarate >> 8 ));
563
563
write_to_register ( REG_BITRATELSB, (uint8_t ) (datarate & 0xFF ));
564
564
@@ -667,17 +667,17 @@ uint32_t SX1276_LoRaRadio::time_on_air(radio_modems_t modem, uint8_t pkt_len)
667
667
+ ((read_register ( REG_SYNCCONFIG)
668
668
& ~RF_SYNCCONFIG_SYNCSIZE_MASK) + 1 )
669
669
+ ((_rf_settings.fsk .fix_len == 0x01 ) ?
670
- 0.0 : 1.0 )
670
+ 0 .0f : 1 .0f )
671
671
+ (((read_register ( REG_PACKETCONFIG1)
672
672
& ~RF_PACKETCONFIG1_ADDRSFILTERING_MASK)
673
- != 0x00 ) ? 1.0 : 0 ) + pkt_len
673
+ != 0x00 ) ? 1 .0f : 0 ) + pkt_len
674
674
+ ((_rf_settings.fsk .crc_on == 0x01 ) ?
675
675
2.0 : 0 ))
676
- / _rf_settings.fsk .datarate ) * 1e3 );
676
+ / _rf_settings.fsk .datarate ) * 1000 );
677
677
678
678
break ;
679
679
case MODEM_LORA:
680
- double bw = 0.0 ;
680
+ float bw = 0 .0f ;
681
681
// REMARK: When using LoRa modem only bandwidths 125, 250 and 500 kHz are supported
682
682
switch (_rf_settings.lora .bandwidth ) {
683
683
// case 0: // 7.8 kHz
@@ -702,36 +702,36 @@ uint32_t SX1276_LoRaRadio::time_on_air(radio_modems_t modem, uint8_t pkt_len)
702
702
// bw = 625e2;
703
703
// break;
704
704
case 7 : // 125 kHz
705
- bw = 125e3 ;
705
+ bw = 125000 ;
706
706
break ;
707
707
case 8 : // 250 kHz
708
- bw = 250e3 ;
708
+ bw = 250000 ;
709
709
break ;
710
710
case 9 : // 500 kHz
711
- bw = 500e3 ;
711
+ bw = 500000 ;
712
712
break ;
713
713
}
714
714
715
715
// Symbol rate : time for one symbol (secs)
716
- double rs = bw / (1 << _rf_settings.lora .datarate );
717
- double ts = 1 / rs;
716
+ float rs = bw / (1 << _rf_settings.lora .datarate );
717
+ float ts = 1 / rs;
718
718
// time of preamble
719
- double tPreamble = (_rf_settings.lora .preamble_len + 4.25 ) * ts;
719
+ float tPreamble = (_rf_settings.lora .preamble_len + 4 .25f ) * ts;
720
720
// Symbol length of payload and time
721
- double tmp = ceil ((8 * pkt_len - 4 * _rf_settings.lora .datarate + 28
721
+ float tmp = ceil ((8 * pkt_len - 4 * _rf_settings.lora .datarate + 28
722
722
+ 16 * _rf_settings.lora .crc_on
723
723
- (_rf_settings.lora .fix_len ? 20 : 0 ))
724
- / (double ) (4
724
+ / (float ) (4
725
725
* (_rf_settings.lora .datarate
726
726
- ((_rf_settings.lora .low_datarate_optimize > 0 )
727
727
? 2 : 0 ))))
728
728
* (_rf_settings.lora .coderate + 4 );
729
- double nPayload = 8 + ((tmp > 0 ) ? tmp : 0 );
730
- double tPayload = nPayload * ts;
729
+ float nPayload = 8 + ((tmp > 0 ) ? tmp : 0 );
730
+ float tPayload = nPayload * ts;
731
731
// Time on air
732
- double tOnAir = tPreamble + tPayload;
732
+ float tOnAir = tPreamble + tPayload;
733
733
// return ms secs
734
- airTime = floor (tOnAir * 1e3 + 0.999 );
734
+ airTime = floor (tOnAir * 1000 + 0 .999f );
735
735
736
736
break ;
737
737
}
@@ -1054,7 +1054,6 @@ void SX1276_LoRaRadio::set_public_network(bool enable)
1054
1054
// Change lora modem SyncWord
1055
1055
write_to_register (REG_LR_SYNCWORD, LORA_MAC_PRIVATE_SYNCWORD);
1056
1056
}
1057
-
1058
1057
}
1059
1058
1060
1059
/* *
@@ -1134,7 +1133,7 @@ void SX1276_LoRaRadio::set_tx_continuous_wave(uint32_t freq, int8_t power,
1134
1133
write_to_register ( REG_DIOMAPPING2, RF_DIOMAPPING2_DIO4_10 | RF_DIOMAPPING2_DIO5_10 );
1135
1134
1136
1135
_rf_settings.state = RF_TX_RUNNING;
1137
- tx_timeout_timer.attach_us (callback (this , &SX1276_LoRaRadio::timeout_irq_isr), time* 1e3 );
1136
+ tx_timeout_timer.attach_us (callback (this , &SX1276_LoRaRadio::timeout_irq_isr), time * 1000 );
1138
1137
set_operation_mode (RF_OPMODE_TRANSMITTER);
1139
1138
}
1140
1139
@@ -1386,12 +1385,12 @@ void SX1276_LoRaRadio::rx_chain_calibration(void)
1386
1385
1387
1386
// Save context
1388
1387
regPaConfigInitVal = read_register ( REG_PACONFIG );
1389
- initialFreq = ( double )( ( ( uint32_t ) this ->read_register ( REG_FRFMSB ) << 16 ) |
1390
- ( ( uint32_t ) this ->read_register ( REG_FRFMID ) << 8 ) |
1391
- ( ( uint32_t )this ->read_register ( REG_FRFLSB ) ) ) * ( double ) FREQ_STEP;
1388
+ initialFreq = (float ) ((( uint32_t ) this ->read_register (REG_FRFMSB) << 16 ) |
1389
+ (( uint32_t ) this ->read_register (REG_FRFMID) << 8 ) |
1390
+ (( uint32_t )this ->read_register (REG_FRFLSB)) ) * (float ) FREQ_STEP;
1392
1391
1393
1392
// Cut the PA just in case, RFO output, power = -1 dBm
1394
- write_to_register ( REG_PACONFIG, 0x00 );
1393
+ write_to_register (REG_PACONFIG, 0x00 );
1395
1394
1396
1395
// Launch Rx chain calibration for LF band
1397
1396
write_to_register (REG_IMAGECAL, (read_register (REG_IMAGECAL)
@@ -1582,7 +1581,7 @@ void SX1276_LoRaRadio::transmit(uint32_t timeout)
1582
1581
1583
1582
_rf_settings.state = RF_TX_RUNNING;
1584
1583
tx_timeout_timer.attach_us (callback (this ,
1585
- &SX1276_LoRaRadio::timeout_irq_isr), timeout* 1e3 );
1584
+ &SX1276_LoRaRadio::timeout_irq_isr), timeout * 1000 );
1586
1585
set_operation_mode (RF_OPMODE_TRANSMITTER);
1587
1586
}
1588
1587
@@ -1870,9 +1869,9 @@ void SX1276_LoRaRadio::handle_dio0_irq()
1870
1869
-(read_register (REG_RSSIVALUE) >> 1 );
1871
1870
1872
1871
_rf_settings.fsk_packet_handler .afc_value =
1873
- (int32_t ) (double ) (((uint16_t ) read_register (REG_AFCMSB) << 8 )
1872
+ (int32_t ) (float ) (((uint16_t ) read_register (REG_AFCMSB) << 8 )
1874
1873
| (uint16_t ) read_register ( REG_AFCLSB))
1875
- * (double ) FREQ_STEP;
1874
+ * (float ) FREQ_STEP;
1876
1875
_rf_settings.fsk_packet_handler .rx_gain =
1877
1876
(read_register ( REG_LNA) >> 5 ) & 0x07 ;
1878
1877
0 commit comments