mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-12-13 19:50:34 +00:00
Merge branch 'multisignals' of https://github.com/gnss-sdr/gnss-sdr into multisignals
This commit is contained in:
commit
74d437a709
@ -175,7 +175,21 @@ Channel.system=GPS, Galileo
|
||||
|
||||
;#signal:
|
||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
||||
Channel.signal=1B
|
||||
Channel1.signal=1C
|
||||
Channel2.signal=1C
|
||||
Channel3.signal=1C
|
||||
Channel4.signal=1C
|
||||
Channel5.signal=1C
|
||||
Channel6.signal=1C
|
||||
Channel7.signal=1C
|
||||
Channel8.signal=1B
|
||||
Channel9.signal=1B
|
||||
Channel10.signal=1B
|
||||
Channel11.signal=1B
|
||||
Channel12.signal=1B
|
||||
Channel13.signal=1B
|
||||
Channel14.signal=1B
|
||||
Channel15.signal=1B
|
||||
|
||||
|
||||
;######### GPS ACQUISITION CONFIG ############
|
||||
|
@ -162,7 +162,22 @@ Channel.system=GPS, Galileo
|
||||
|
||||
;#signal:
|
||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
||||
Channel.signal=1B
|
||||
Channel0.signal=1C
|
||||
Channel1.signal=1C
|
||||
Channel2.signal=1C
|
||||
Channel3.signal=1C
|
||||
Channel4.signal=1C
|
||||
Channel5.signal=1C
|
||||
Channel6.signal=1C
|
||||
Channel7.signal=1C
|
||||
Channel8.signal=1B
|
||||
Channel9.signal=1B
|
||||
Channel10.signal=1B
|
||||
Channel11.signal=1B
|
||||
Channel12.signal=1B
|
||||
Channel13.signal=1B
|
||||
Channel14.signal=1B
|
||||
Channel15.signal=1B
|
||||
|
||||
|
||||
;######### GPS ACQUISITION CONFIG ############
|
||||
|
@ -175,7 +175,15 @@ Channel.system=GPS, Galileo
|
||||
|
||||
;#signal:
|
||||
;#if the option is disabled by default is assigned "1C" GPS L1 C/A
|
||||
Channel.signal=1B
|
||||
Channel0.signal=1C
|
||||
Channel1.signal=1C
|
||||
Channel2.signal=1C
|
||||
Channel3.signal=1C
|
||||
Channel4.signal=1B
|
||||
Channel5.signal=1B
|
||||
Channel6.signal=1B
|
||||
Channel7.signal=1B
|
||||
|
||||
|
||||
|
||||
;######### GPS ACQUISITION CONFIG ############
|
||||
|
@ -58,8 +58,7 @@ GpsL1CaPcpsAcquisition::GpsL1CaPcpsAcquisition(
|
||||
|
||||
DLOG(INFO) << "role " << role;
|
||||
|
||||
item_type_ = configuration_->property(role + ".item_type",
|
||||
default_item_type);
|
||||
item_type_ = configuration_->property(role + ".item_type", default_item_type);
|
||||
//float pfa = configuration_->property(role + ".pfa", 0.0);
|
||||
|
||||
fs_in_ = configuration_->property("GNSS-SDR.internal_fs_hz", 2048000);
|
||||
@ -79,12 +78,10 @@ GpsL1CaPcpsAcquisition::GpsL1CaPcpsAcquisition(
|
||||
max_dwells_ = 2;
|
||||
}
|
||||
|
||||
dump_filename_ = configuration_->property(role + ".dump_filename",
|
||||
default_dump_filename);
|
||||
dump_filename_ = configuration_->property(role + ".dump_filename", default_dump_filename);
|
||||
|
||||
//--- Find number of samples per spreading code -------------------------
|
||||
code_length_ = round(fs_in_
|
||||
/ (GPS_L1_CA_CODE_RATE_HZ / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
||||
code_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_HZ / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
||||
|
||||
vector_length_ = code_length_ * sampled_ms_;
|
||||
|
||||
|
@ -30,7 +30,7 @@
|
||||
* -------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include "GPS_L2C.h"
|
||||
#include <gps_l2c_signal.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdint.h>
|
||||
#include <cmath>
|
||||
@ -44,11 +44,11 @@ int32_t gps_l2c_m_shift(int32_t x)
|
||||
void gps_l2c_m_code(int32_t * _dest, unsigned int _prn)
|
||||
{
|
||||
int32_t x;
|
||||
x= GPS_L2C_M_INIT_REG[_prn-1];
|
||||
for (int n=0; n<GPS_L2_M_CODE_LENGTH_CHIPS; n++)
|
||||
x = GPS_L2C_M_INIT_REG[ _prn - 1];
|
||||
for (int n = 0; n < GPS_L2_M_CODE_LENGTH_CHIPS; n++)
|
||||
{
|
||||
_dest[n]=(int8_t)(x&1);
|
||||
x= gps_l2c_m_shift(x);
|
||||
_dest[n] = (int8_t)(x&1);
|
||||
x = gps_l2c_m_shift(x);
|
||||
}
|
||||
}
|
||||
|
||||
@ -63,9 +63,9 @@ void gps_l2c_m_code_gen_complex(std::complex<float>* _dest, unsigned int _prn)
|
||||
gps_l2c_m_code(_code, _prn);
|
||||
}
|
||||
|
||||
for (signed int i=0; i<GPS_L2_M_CODE_LENGTH_CHIPS; i++)
|
||||
for (signed int i = 0; i < GPS_L2_M_CODE_LENGTH_CHIPS; i++)
|
||||
{
|
||||
_dest[i] = std::complex<float>(1.0-2.0*_code[i],0);
|
||||
_dest[i] = std::complex<float>(1.0 - 2.0 * _code[i], 0);
|
||||
}
|
||||
}
|
||||
|
||||
@ -77,7 +77,7 @@ void gps_l2c_m_code_gen_complex_sampled(std::complex<float>* _dest, unsigned int
|
||||
{
|
||||
int32_t _code[GPS_L2_M_CODE_LENGTH_CHIPS];
|
||||
|
||||
if (_prn>0 and _prn<51)
|
||||
if (_prn > 0 and _prn < 51)
|
||||
{
|
||||
gps_l2c_m_code(_code, _prn);
|
||||
}
|
||||
@ -95,7 +95,9 @@ void gps_l2c_m_code_gen_complex_sampled(std::complex<float>* _dest, unsigned int
|
||||
_ts = 1/(float)_fs; // Sampling period in sec
|
||||
_tc = 1/(float)_codeFreqBasis; // C/A chip period in sec
|
||||
|
||||
for (signed int i=0; i<_samplesPerCode; i++)
|
||||
float aux;
|
||||
|
||||
for (signed int i = 0; i < _samplesPerCode; i++)
|
||||
{
|
||||
//=== Digitizing =======================================================
|
||||
|
||||
@ -105,7 +107,9 @@ void gps_l2c_m_code_gen_complex_sampled(std::complex<float>* _dest, unsigned int
|
||||
// millisecond).
|
||||
//TODO: Check this formula! Seems to start with an extra sample
|
||||
|
||||
_codeValueIndex = ceil((_ts * ((float)i + 1)) / _tc) - 1;
|
||||
// _codeValueIndex = ceil((_ts * ((float)i + 1)) / _tc) - 1;
|
||||
aux = (_ts * (i + 1)) / _tc;
|
||||
_codeValueIndex = static_cast<int>(static_cast<long>(aux)) - 1;
|
||||
|
||||
//--- Make the digitized version of the C/A code -----------------------
|
||||
// The "upsampled" code is made by selecting values form the CA code
|
||||
@ -113,12 +117,12 @@ void gps_l2c_m_code_gen_complex_sampled(std::complex<float>* _dest, unsigned int
|
||||
if (i == _samplesPerCode - 1)
|
||||
{
|
||||
//--- Correct the last index (due to number rounding issues) -----------
|
||||
_dest[i] = std::complex<float>(1.0-2.0*_code[_codeLength - 1],0);
|
||||
_dest[i] = std::complex<float>(1.0 - 2.0 * _code[_codeLength - 1], 0);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
_dest[i] = std::complex<float>(1.0-2.0*_code[_codeValueIndex],0);; //repeat the chip -> upsample
|
||||
_dest[i] = std::complex<float>(1.0 - 2.0 * _code[_codeValueIndex], 0);; //repeat the chip -> upsample
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -227,7 +227,7 @@ std::unique_ptr<GNSSBlockInterface> GNSSBlockFactory::GetObservables(std::shared
|
||||
{
|
||||
Galileo_channels = configuration->property("Channels_1B.count", 0);
|
||||
}
|
||||
Galileo_channels += configuration->property("Channels_5I.count", 0);
|
||||
Galileo_channels += configuration->property("Channels_5X.count", 0);
|
||||
unsigned int GPS_channels = configuration->property("Channels_GPS.count", 0); // DEPRECATED
|
||||
if(GPS_channels == 0)
|
||||
{
|
||||
@ -250,7 +250,7 @@ std::unique_ptr<GNSSBlockInterface> GNSSBlockFactory::GetPVT(std::shared_ptr<Con
|
||||
{
|
||||
Galileo_channels = configuration->property("Channels_1B.count", 0);
|
||||
}
|
||||
Galileo_channels += configuration->property("Channels_5I.count", 0);
|
||||
Galileo_channels += configuration->property("Channels_5X.count", 0);
|
||||
unsigned int GPS_channels = configuration->property("Channels_GPS.count", 0); // DEPRECATED
|
||||
if(GPS_channels == 0)
|
||||
{
|
||||
@ -397,7 +397,7 @@ std::unique_ptr<GNSSBlockInterface> GNSSBlockFactory::GetChannel_1B(
|
||||
}
|
||||
|
||||
//********* GALILEO E5a CHANNEL *****************
|
||||
std::unique_ptr<GNSSBlockInterface> GNSSBlockFactory::GetChannel_5I(
|
||||
std::unique_ptr<GNSSBlockInterface> GNSSBlockFactory::GetChannel_5X(
|
||||
std::shared_ptr<ConfigurationInterface> configuration,
|
||||
std::string acq, std::string trk, std::string tlm, int channel,
|
||||
boost::shared_ptr<gr::msg_queue> queue)
|
||||
@ -409,15 +409,15 @@ std::unique_ptr<GNSSBlockInterface> GNSSBlockFactory::GetChannel_5I(
|
||||
<< acq << ", Tracking Implementation: " << trk << ", Telemetry Decoder implementation: " << tlm;
|
||||
|
||||
std::unique_ptr<GNSSBlockInterface> pass_through_ = GetBlock(configuration, "Channel", "Pass_Through", 1, 1, queue);
|
||||
std::unique_ptr<AcquisitionInterface> acq_ = GetAcqBlock(configuration, "Acquisition_5I", acq, 1, 1, queue);
|
||||
std::unique_ptr<TrackingInterface> trk_ = GetTrkBlock(configuration, "Tracking_5I", trk, 1, 1, queue);
|
||||
std::unique_ptr<TelemetryDecoderInterface> tlm_ = GetTlmBlock(configuration, "TelemetryDecoder_5I", tlm, 1, 1, queue);
|
||||
std::unique_ptr<AcquisitionInterface> acq_ = GetAcqBlock(configuration, "Acquisition_5X", acq, 1, 1, queue);
|
||||
std::unique_ptr<TrackingInterface> trk_ = GetTrkBlock(configuration, "Tracking_5X", trk, 1, 1, queue);
|
||||
std::unique_ptr<TelemetryDecoderInterface> tlm_ = GetTlmBlock(configuration, "TelemetryDecoder_5X", tlm, 1, 1, queue);
|
||||
|
||||
std::unique_ptr<GNSSBlockInterface> channel_(new Channel(configuration.get(), channel, pass_through_.release(),
|
||||
acq_.release(),
|
||||
trk_.release(),
|
||||
tlm_.release(),
|
||||
"Channel", "5I", queue));
|
||||
"Channel", "5X", queue));
|
||||
|
||||
return channel_;
|
||||
}
|
||||
@ -659,20 +659,20 @@ std::unique_ptr<std::vector<std::unique_ptr<GNSSBlockInterface>>> GNSSBlockFacto
|
||||
|
||||
|
||||
//**************** GALILEO E5a I (F/NAV OS) CHANNELS **********************
|
||||
channel_count = configuration->property("Channels_5I.count", 0);
|
||||
channel_count = configuration->property("Channels_5X.count", 0);
|
||||
|
||||
LOG(INFO) << "Getting " << channel_count << " GALILEO E5a I (F/NAV OS) channels";
|
||||
|
||||
tracking_implementation = configuration->property("Tracking_5I.implementation", default_implementation);
|
||||
telemetry_decoder_implementation = configuration->property("TelemetryDecoder_5I.implementation", default_implementation);
|
||||
acquisition_implementation = configuration->property("Acquisition_5I.implementation", default_implementation);
|
||||
tracking_implementation = configuration->property("Tracking_5X.implementation", default_implementation);
|
||||
telemetry_decoder_implementation = configuration->property("TelemetryDecoder_5X.implementation", default_implementation);
|
||||
acquisition_implementation = configuration->property("Acquisition_5X.implementation", default_implementation);
|
||||
|
||||
for (unsigned int i = 0; i < channel_count; i++)
|
||||
{
|
||||
// Search for specific implementation of that particular channel in config file
|
||||
//(i.e. Acquisition_5I0.implementation=xxxx)
|
||||
//(i.e. Acquisition_5X0.implementation=xxxx)
|
||||
std::string acquisition_implementation_specific = configuration->property(
|
||||
"Acquisition_5I" + boost::lexical_cast<std::string>(i) + ".implementation",
|
||||
"Acquisition_5X" + boost::lexical_cast<std::string>(i) + ".implementation",
|
||||
default_implementation);
|
||||
|
||||
if(acquisition_implementation_specific.compare(default_implementation) != 0)
|
||||
@ -680,9 +680,9 @@ std::unique_ptr<std::vector<std::unique_ptr<GNSSBlockInterface>>> GNSSBlockFacto
|
||||
acquisition_implementation = acquisition_implementation_specific;
|
||||
}
|
||||
|
||||
//(i.e. Tracking_5I0.implementation=xxxx)
|
||||
//(i.e. Tracking_5X0.implementation=xxxx)
|
||||
std::string tracking_implementation_specific = configuration->property(
|
||||
"Tracking_5I" + boost::lexical_cast<std::string>(i) + ".implementation",
|
||||
"Tracking_5X" + boost::lexical_cast<std::string>(i) + ".implementation",
|
||||
default_implementation);
|
||||
|
||||
if(tracking_implementation_specific.compare(default_implementation) != 0)
|
||||
@ -691,9 +691,9 @@ std::unique_ptr<std::vector<std::unique_ptr<GNSSBlockInterface>>> GNSSBlockFacto
|
||||
}
|
||||
|
||||
|
||||
//(i.e. TelemetryDecoder_5I0.implementation=xxxx)
|
||||
//(i.e. TelemetryDecoder_5X0.implementation=xxxx)
|
||||
std::string telemetry_decoder_implementation_specific = configuration->property(
|
||||
"TelemetryDecoder_5I" + boost::lexical_cast<std::string>(i) + ".implementation",
|
||||
"TelemetryDecoder_5X" + boost::lexical_cast<std::string>(i) + ".implementation",
|
||||
default_implementation);
|
||||
|
||||
if(telemetry_decoder_implementation_specific.compare(default_implementation) != 0)
|
||||
|
@ -93,7 +93,7 @@ public:
|
||||
std::string acq, std::string trk, std::string tlm, int channel,
|
||||
boost::shared_ptr<gr::msg_queue> queue);
|
||||
|
||||
std::unique_ptr<GNSSBlockInterface> GetChannel_5I(std::shared_ptr<ConfigurationInterface> configuration,
|
||||
std::unique_ptr<GNSSBlockInterface> GetChannel_5X(std::shared_ptr<ConfigurationInterface> configuration,
|
||||
std::string acq, std::string trk, std::string tlm, int channel,
|
||||
boost::shared_ptr<gr::msg_queue> queue);
|
||||
|
||||
|
@ -227,14 +227,14 @@ void GNSSFlowgraph::connect()
|
||||
for (int j = 0; j < RF_Channels; j++)
|
||||
{
|
||||
//Connect the multichannel signal source to multiple signal conditioners
|
||||
// GNURADIO max_streams=-1 means infinite ports!
|
||||
LOG(WARNING)<<"sig_source_.at(i)->get_right_block()->output_signature()->max_streams()="<<sig_source_.at(i)->get_right_block()->output_signature()->max_streams();
|
||||
LOG(WARNING)<<"sig_conditioner_.at(signal_conditioner_ID)->get_left_block()->input_signature()="<<sig_conditioner_.at(signal_conditioner_ID)->get_left_block()->input_signature()->max_streams();
|
||||
// GNURADIO max_streams=-1 means infinite ports!
|
||||
LOG(INFO) << "sig_source_.at(i)->get_right_block()->output_signature()->max_streams()=" << sig_source_.at(i)->get_right_block()->output_signature()->max_streams();
|
||||
LOG(INFO) << "sig_conditioner_.at(signal_conditioner_ID)->get_left_block()->input_signature()=" << sig_conditioner_.at(signal_conditioner_ID)->get_left_block()->input_signature()->max_streams();
|
||||
|
||||
if (sig_source_.at(i)->get_right_block()->output_signature()->max_streams() > 1)
|
||||
{
|
||||
|
||||
LOG(WARNING)<<"connecting sig_source_ "<<i<<" stream "<<j<<" to conditioner "<<j;
|
||||
LOG(INFO) << "connecting sig_source_ " << i << " stream " << j << " to conditioner " << j;
|
||||
top_block_->connect(sig_source_.at(i)->get_right_block(), j, sig_conditioner_.at(signal_conditioner_ID)->get_left_block(), 0);
|
||||
|
||||
}
|
||||
@ -243,13 +243,13 @@ void GNSSFlowgraph::connect()
|
||||
if (j == 0)
|
||||
{
|
||||
// RF_channel 0 backward compatibility with single channel sources
|
||||
LOG(WARNING) << "connecting sig_source_ " << i <<" stream "<<0<<" to conditioner "<<j<<std::endl;
|
||||
LOG(INFO) << "connecting sig_source_ " << i << " stream " << 0 << " to conditioner " << j;
|
||||
top_block_->connect(sig_source_.at(i)->get_right_block(), 0, sig_conditioner_.at(signal_conditioner_ID)->get_left_block(), 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Multiple channel sources using multiple output blocks of single channel (requires RF_channel selector in call)
|
||||
LOG(WARNING)<<"connecting sig_source_ "<<i<<" stream "<<j<<" to conditioner " << j << std::endl;
|
||||
LOG(INFO) << "connecting sig_source_ " << i << " stream " << j << " to conditioner " << j;
|
||||
top_block_->connect(sig_source_.at(i)->get_right_block(j), 0, sig_conditioner_.at(signal_conditioner_ID)->get_left_block(), 0);
|
||||
}
|
||||
}
|
||||
@ -303,18 +303,10 @@ void GNSSFlowgraph::connect()
|
||||
return;
|
||||
}
|
||||
|
||||
//discriminate between systems
|
||||
//std::string default_system = configuration_->property("Channel.system", std::string("GPS"));
|
||||
std::string default_signal = configuration_->property("Channel.signal", std::string("1C"));
|
||||
//std::string gnss_system = (configuration_->property("Channel"
|
||||
// + boost::lexical_cast<std::string>(i) + ".system",
|
||||
// default_system));
|
||||
std::string gnss_signal = (configuration_->property("Channel"
|
||||
+ boost::lexical_cast<std::string>(i) + ".signal",
|
||||
default_signal));
|
||||
//TODO: add a specific string member to the channel template, and not re-use the implementation field!
|
||||
while (channels_.at(i)->implementation() != available_GNSS_signals_.front().get_satellite().get_system()
|
||||
or gnss_signal != available_GNSS_signals_.front().get_signal() )
|
||||
std::string gnss_signal = (configuration_->property("Channel" + boost::lexical_cast<std::string>(i) + ".signal", default_signal));
|
||||
|
||||
while (gnss_signal != available_GNSS_signals_.front().get_signal() )
|
||||
{
|
||||
available_GNSS_signals_.push_back(available_GNSS_signals_.front());
|
||||
available_GNSS_signals_.pop_front();
|
||||
@ -327,13 +319,11 @@ void GNSSFlowgraph::connect()
|
||||
if (channels_state_[i] == 1)
|
||||
{
|
||||
channels_.at(i)->start_acquisition();
|
||||
LOG(INFO) << "Channel " << i
|
||||
<< " connected to observables and ready for acquisition";
|
||||
LOG(INFO) << "Channel " << i << " connected to observables and ready for acquisition";
|
||||
}
|
||||
else
|
||||
{
|
||||
LOG(INFO) << "Channel " << i
|
||||
<< " connected to observables in standby mode";
|
||||
LOG(INFO) << "Channel " << i << " connected to observables in standby mode";
|
||||
}
|
||||
}
|
||||
|
||||
@ -655,7 +645,7 @@ void GNSSFlowgraph::set_signals_list()
|
||||
}
|
||||
}
|
||||
|
||||
if ((configuration_->property("Channels_5I.count", 0) > 0) )
|
||||
if ((configuration_->property("Channels_5X.count", 0) > 0) )
|
||||
{
|
||||
/*
|
||||
* Loop to create the list of Galileo E1 B signals
|
||||
@ -667,7 +657,7 @@ if ((configuration_->property("Channels_5I.count", 0) > 0) )
|
||||
// available_GNSS_signals_.push_back(Gnss_Signal(Gnss_Satellite(std::string("Galileo"),
|
||||
// *available_gnss_prn_iter), std::string("1B")));
|
||||
available_GNSS_signals_.push_back(Gnss_Signal(Gnss_Satellite(std::string("Galileo"),
|
||||
*available_gnss_prn_iter), std::string("5I")));
|
||||
*available_gnss_prn_iter), std::string("5X")));
|
||||
}
|
||||
}
|
||||
|
||||
@ -677,6 +667,8 @@ if ((configuration_->property("Channels_5I.count", 0) > 0) )
|
||||
|
||||
std::list<Gnss_Signal>::iterator gnss_it = available_GNSS_signals_.begin();
|
||||
|
||||
// Preassignation if not defined at ChannelX.signal=1C ...? In what order?
|
||||
|
||||
for (unsigned int i = 0; i < channels_count_; i++)
|
||||
{
|
||||
std::string gnss_system = (configuration_->property("Channel"
|
||||
@ -699,7 +691,7 @@ if ((configuration_->property("Channels_5I.count", 0) > 0) )
|
||||
else
|
||||
{
|
||||
if((gnss_signal.compare("1C") == 0) or (gnss_signal.compare("2S") == 0) ) gnss_system = "GPS";
|
||||
if((gnss_signal.compare("1B") == 0) or (gnss_signal.compare("5I") == 0) ) gnss_system = "Galileo";
|
||||
if((gnss_signal.compare("1B") == 0) or (gnss_signal.compare("5X") == 0) ) gnss_system = "Galileo";
|
||||
Gnss_Signal signal_value = Gnss_Signal(Gnss_Satellite(gnss_system, sat), gnss_signal);
|
||||
DLOG(INFO) << "Channel " << i << " " << signal_value;
|
||||
available_GNSS_signals_.remove(signal_value);
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*!
|
||||
* \file GPS_L2C.h
|
||||
* \brief Defines system parameters for GPS L1 C/A signal and NAV data
|
||||
* \brief Defines system parameters for GPS L2C signal
|
||||
* \author Javier Arribas, 2015. jarribas(at)cttc.es
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
@ -32,23 +32,19 @@
|
||||
#ifndef GNSS_SDR_GPS_L2C_H_
|
||||
#define GNSS_SDR_GPS_L2C_H_
|
||||
|
||||
#include <complex>
|
||||
#include <vector>
|
||||
#include <utility> // std::pair
|
||||
#include <gnss_satellite.h>
|
||||
#include "MATH_CONSTANTS.h"
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
// carrier and code frequencies
|
||||
const double GPS_L2_FREQ_HZ = 1.2276e9; //!< L2 [Hz]
|
||||
const double GPS_L2_FREQ_HZ = 1.2276e9; //!< L2 [Hz]
|
||||
|
||||
const double GPS_L2_M_CODE_RATE_HZ = 0.5115e6; //!< GPS L2 M code rate [chips/s]
|
||||
const double GPS_L2_M_CODE_RATE_HZ = 0.5115e6; //!< GPS L2 M code rate [chips/s]
|
||||
const int GPS_L2_M_CODE_LENGTH_CHIPS = 10230; //!< GPS L2 M code length [chips]
|
||||
const double GPS_L2_M_PERIOD = 0.02; //!< GPS L2 M code period [seconds]
|
||||
const double GPS_L2_M_PERIOD = 0.02; //!< GPS L2 M code period [seconds]
|
||||
|
||||
const double GPS_L2_L_CODE_RATE_HZ = 0.5115e6; //!< GPS L2 L code rate [chips/s]
|
||||
const int GPS_L2_L_CODE_LENGTH_CHIPS = 767250; //!< GPS L2 L code length [chips]
|
||||
const double GPS_L2_L_PERIOD = 1.5; //!< GPS L2 L code period [seconds]
|
||||
const double GPS_L2_L_CODE_RATE_HZ = 0.5115e6; //!< GPS L2 L code rate [chips/s]
|
||||
const int GPS_L2_L_CODE_LENGTH_CHIPS = 767250; //!< GPS L2 L code length [chips]
|
||||
const double GPS_L2_L_PERIOD = 1.5; //!< GPS L2 L code period [seconds]
|
||||
|
||||
|
||||
const int32_t GPS_L2C_M_INIT_REG[115] =
|
||||
|
@ -255,7 +255,7 @@ TEST_F(GpsL2MPcpsAcquisitionTest, ValidationOfResults)
|
||||
|
||||
stop_queue();
|
||||
|
||||
unsigned long int Acq_samplestamp_samples = gnss_synchro.Acq_samplestamp_samples;
|
||||
//unsigned long int Acq_samplestamp_samples = gnss_synchro.Acq_samplestamp_samples;
|
||||
std::cout << "Acquisition process runtime duration: " << (end - begin) << " microseconds" << std::endl;
|
||||
|
||||
std::cout << "gnss_synchro.Acq_doppler_hz = " << gnss_synchro.Acq_doppler_hz << " Hz" << std::endl;
|
||||
|
Loading…
Reference in New Issue
Block a user