diff options
author | Thomas Tsou <tom@tsou.cc> | 2013-10-16 00:31:18 -0400 |
---|---|---|
committer | Thomas Tsou <tom@tsou.cc> | 2013-10-18 13:10:18 -0400 |
commit | 010fff783bf658e79b0b32ad64a44af4e3f22b1e (patch) | |
tree | c20d18d41b36261f9e525bdfb5bea7e1a24c66a5 /Transceiver52M/runTransceiver.cpp | |
parent | 61b4a6ad9f959421b2bf61e6e55bb0713f0db822 (diff) |
Transceiver52M: Move reference select from compile time to database
Enabling the external reference on UHD devices through the configure
time switch is awkward. Use a database variable "TRX.Reference" with
'0' or '1' value for internal and external references respectively.
Use internal reference is no entry is defined.
Signed-off-by: Thomas Tsou <tom@tsou.cc>
Diffstat (limited to 'Transceiver52M/runTransceiver.cpp')
-rw-r--r-- | Transceiver52M/runTransceiver.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/Transceiver52M/runTransceiver.cpp b/Transceiver52M/runTransceiver.cpp index 775424a..6a7cc53 100644 --- a/Transceiver52M/runTransceiver.cpp +++ b/Transceiver52M/runTransceiver.cpp @@ -108,7 +108,7 @@ int testConfig(const char *filename) int main(int argc, char *argv[]) { - int trxPort, fail = 0; + int trxPort, radioType, extref = 0, fail = 0; std::string deviceArgs, logLevel, trxAddr; RadioDevice *usrp = NULL; RadioInterface *radio = NULL; @@ -138,12 +138,21 @@ int main(int argc, char *argv[]) logLevel = gConfig.getStr("Log.Level"); trxPort = gConfig.getNum("TRX.Port"); trxAddr = gConfig.getStr("TRX.IP"); + + if (gConfig.defines("TRX.Reference")) + extref = gConfig.getNum("TRX.Reference"); + + if (extref) + std::cout << "Using external clock reference" << std::endl; + else + std::cout << "Using internal clock reference" << std::endl; + gLogInit("transceiver", logLevel.c_str(), LOG_LOCAL7); srandom(time(NULL)); usrp = RadioDevice::make(SPS); - int radioType = usrp->open(deviceArgs); + radioType = usrp->open(deviceArgs, extref); if (radioType < 0) { LOG(ALERT) << "Transceiver exiting..." << std::endl; return EXIT_FAILURE; |