Mercurial > hg > fxanalyse
diff FXAnalyse.c @ 164:211ea3950310
Read AD9956 configuration from configuration file
author | Daniele Nicolodi <daniele.nicolodi@obspm.fr> |
---|---|
date | Mon, 10 Feb 2014 15:19:34 +0100 |
parents | 1517a56163de |
children | fdd2f8fd7714 |
line wrap: on
line diff
--- a/FXAnalyse.c Mon Feb 10 15:19:29 2014 +0100 +++ b/FXAnalyse.c Mon Feb 10 15:19:34 2014 +0100 @@ -17,6 +17,7 @@ #include "stat.h" #include "data-provider.h" +#define CONFIGFILE "FXAnalyse.ini" #define SR_LOGGER_IP "145.238.204.91" #define DATAFOLDER "Z:\\Measures-2014" @@ -422,12 +423,15 @@ } + + void CVICALLBACK DataAvailableCB (CmtTSQHandle queueHandle, unsigned int event, int value, void *callbackData); int main (int argc, char *argv[]) { + int rv; double frequency; char expr[1024]; @@ -442,6 +446,36 @@ return -1; if ((LoggingPanel = LoadPanel (0, "FXAnalyse.uir", LOGGING)) < 0) return -1; + + // construct configuration file path + char pathname[MAX_PATHNAME_LEN]; + char project[MAX_PATHNAME_LEN]; + GetProjectDir(project); + MakePathname(project, CONFIGFILE, pathname); + + // load configuration file */ + IniText configuration = Ini_New(TRUE); + Ini_ReadFromFile(configuration, pathname); + + // get AD9956 configuration parameters + char host[256]; + int port; + double clock; + rv = Ini_StringIntoBuffer(configuration, "AD9956", "host", host, sizeof(host)); + if (! rv) + return -1; + rv = Ini_GetInt(configuration, "AD9956", "port", &port); + if (! rv) + return -1; + rv = Ini_GetDouble(configuration, "AD9956", "clock", &clock); + if (! rv) + return -1; + + // initialyze 1x AD9956 DDS box + DDSFox_Initialize(&DDS1xAD9956, host, port, dedrift.freq0); + + // free + Ini_Dispose(configuration); // initialize 4x AD9959 DDS box DDS4xAD9912_Reset(&DDS4xAD9912); @@ -454,9 +488,6 @@ GetCtrlVal(MainPanel, PANEL_DDS4, &frequency); DDS4xAD9912_SetFrequency(&DDS4xAD9912, 4, frequency); - // initialyze 1x AD9956 DDS box - DDSFox_Initialize(&DDS1xAD9956, "145.238.205.58", 6665, dedrift.freq0); - GetCtrlVal(MainPanel, PANEL_N1CHOICE, &N1); GetCtrlVal(MainPanel, PANEL_N2CHOICE, &N2); GetCtrlVal(MainPanel, PANEL_N3CHOICE, &N3);