# HG changeset patch # User Mychaela Falconia # Date 1495350113 0 # Node ID b552e8d86474ad85e83ad6d5b5b004b1b5b43807 # Parent e2db512abbeee83ed41424d8b09abb8f7f1092e3 fc-cmu200d: started implementing operation modes diff -r e2db512abbee -r b552e8d86474 cmu200/Makefile --- a/cmu200/Makefile Sun May 21 06:37:56 2017 +0000 +++ b/cmu200/Makefile Sun May 21 07:01:53 2017 +0000 @@ -3,8 +3,9 @@ PROGS= fc-cmu200d fc-serscpi INSTBIN=/opt/freecalypso/bin -CMU200D_OBJS= band.o dispatch.o init.o main.o openport.o sercmd.o session.o \ - socket.o +CMU200D_OBJS= band.o dispatch.o init.o main.o mode.o openport.o sercmd.o \ + session.o socket.o + SERSCPI_OBJS= openport.o sertool.o all: ${PROGS} diff -r e2db512abbee -r b552e8d86474 cmu200/mode.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cmu200/mode.c Sun May 21 07:01:53 2017 +0000 @@ -0,0 +1,20 @@ +/* + * In this module we are going to implement the logic for switching + * the CMU200 into different modes as needed for signal generation, + * frequency measurement etc. + */ + +#include "mode.h" + +int current_mode; + +cmu200_session_begin() +{ + current_mode = OP_MODE_UNDEF; +} + +stop_signal_gen() +{ + if (current_mode == OP_MODE_SIGNAL_GEN) + send_scpi_cmd("ABORT:RFG\n"); +} diff -r e2db512abbee -r b552e8d86474 cmu200/mode.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cmu200/mode.h Sun May 21 07:01:53 2017 +0000 @@ -0,0 +1,5 @@ +/* Definition of our operating modes */ + +#define OP_MODE_UNDEF 0 +#define OP_MODE_SIGNAL_GEN 1 +#define OP_MODE_VCXO_CAL 2 diff -r e2db512abbee -r b552e8d86474 cmu200/session.c --- a/cmu200/session.c Sun May 21 06:37:56 2017 +0000 +++ b/cmu200/session.c Sun May 21 07:01:53 2017 +0000 @@ -76,6 +76,7 @@ { int rc; + cmu200_session_begin(); send_socket_response("+CMU200 interface daemon ready\n"); for (;;) { rc = handle_command(); @@ -83,4 +84,5 @@ break; } close(activesock); + stop_signal_gen(); }