提交 8f03bed8 编写于 作者: 断水客

上传新文件

上级 af4dfcdb
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "cmd.h"
/* Get a ptr of an object of DaqFileManager */
extern pDaqFM daqFMx;
/* array of t_cmds,key-value pairs of cmds and their cmd_Func */
struct t_cmd commands[NO_OF_COMMANDS] = {
{ "quit", cmd_Func_quit },
{ "help", cmd_Func_help },
{ "dfp", cmd_Func_dfp },
{ "save", cmd_Func_save},
{"sample",cmd_Func_sample},
{"csignal",cmd_Func_csignal},
{"basicparam",cmd_Func_basicparam},
{"smethod",cmd_Func_smethod},
{"dfp", cmd_Func_dfp},
{"samplerate",cmd_Func_samplerate},
{"baud", cmd_Func_baud},
{"fre",cmd_Func_fre},
{"pp",cmd_Func_pp},
{"mode",cmd_Func_mode},
{"ipaddr",cmd_Func_ipaddr},
{"mask",cmd_Func_mask},
{"geteway",cmd_Func_gateway},
{"serverip",cmd_Func_serverip},
{"serverport",cmd_Func_serverport},
{"sn",cmd_Func_sn},
{"lon",cmd_Func_lon},
{"la",cmd_Func_la},
{"prints",cmd_Func_prints},
{"printf",cmd_Func_printf},
};
/* to check wether val is included in commands */
int FindInCmds(char* val)
{
for (int i = 0;i < NO_OF_COMMANDS;i++) {
if( 0==strcmp(commands[i].cmd,val) )
return i;
}
return -1;
}
/*************************************************************
Init method if DAQ config system
*************************************************************/
void Cmd_Init()
{
}
/************************************************************
basic cmds of system
*************************************************************/
char cmd_Func_help()
{
(void) printf( "Usage: cmd \n" );
(void) printf( "\n" );
(void) printf( "Commands:\n" );
(void) printf( " help print this help message\n" );
(void) printf( " quit quit application\n" );
return EXIT_SUCCESS;
}
char cmd_Func_quit()
{
(void) printf( "Exiting ...\n" );
exit( EXIT_SUCCESS );
}
/* 打印输出结构体所有元素的值 */
char cmd_Func_prints()
{
printf("basicParam_chn:%s\n",daqFMx->_basicparam._chn);;
return (EXIT_SUCCESS);
}
/* 打印输出配置文件信息 */
char cmd_Func_printf()
{
/* read info from config file and save to daq strc */
DaqFM_Read(daqFMx);
/* printf vals of all elems of info strct */
printf("sample_dfp:%s\n", daqFMx->_sample._dfp);;
return (EXIT_SUCCESS);
}
/* 把配置信息写入配置文件 */
char cmd_Func_save()
{
DaqFM_Save(daqFMx);
return EXIT_SUCCESS;
}
/************************************************************
配置函数
*************************************************************/
/******************************** 大类配置命令 ********************************/
/* 配置samlpe */
char cmd_Func_sample()
{
cmd_Func_dfp();
cmd_Func_samplerate();
return EXIT_SUCCESS;
}
/* 配置baud */
char cmd_Func_baud()
{
char quit[] = { "quit" };
char Val_1[] = { "9600" };
char Val_2[] = { "115200" };
char buffer[VALUELENGTH] = { '\0' };
do {
printf("please select value for baud\n");
printf("%s %s\n", Val_1, Val_2);
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (!(strcmp(buffer, Val_1) || strcmp(buffer, Val_2)));
/* 把配置值写入结构体 */
DaqFM_SetVal_baud_baud(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置csignal */
char cmd_Func_csignal()
{
cmd_Func_fre();
cmd_Func_pp();
return EXIT_SUCCESS;
}
/* 配置smethod */
char cmd_Func_smethod()
{
cmd_Func_mode();
cmd_Func_ipaddr();
cmd_Func_mask();
cmd_Func_gateway();
cmd_Func_serverip();
cmd_Func_serverport();
return EXIT_SUCCESS;
}
/* 配置basicparam */
char cmd_Func_basicparam()
{
cmd_Func_sn();
cmd_Func_lon();
cmd_Func_la();
cmd_Func_chn();
cmd_Func_model();
return EXIT_SUCCESS;
}
/******************************** 小项配置命令 ********************************/
/* 配置dfp */
char cmd_Func_dfp()
{
char quit[] = {"quit"};
char Val_1[] = {"liner"};
char Val_2[] = { "minimal" };
char buffer[VALUELENGTH] = {'\0'};
do{
printf("please select value for dfp\n");
printf("%s %s\n", Val_1, Val_2);
(void)(void)scanf("%s",buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (!(strcmp(buffer, Val_1) || strcmp(buffer, Val_2)));
DaqFM_SetVal_sample_dfp(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置samlperate */
char cmd_Func_samplerate()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for fre\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_sample_samplerate(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置fre */
char cmd_Func_fre()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for fre\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_csignal_fre(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置pp */
char cmd_Func_pp()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for pp\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_csignal_pp(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置mode */
char cmd_Func_mode()
{
char quit[] = { "quit" };
char Val_1[] = { "master" };
char Val_2[] = { "sliver" };
char buffer[VALUELENGTH] = { '\0' };
do {
printf("please select value for dfp\n");
printf("%s %s\n", Val_1, Val_2);
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (!(strcmp(buffer, Val_1) || strcmp(buffer, Val_2)));
return EXIT_SUCCESS;
}
/* 配置ipaddr */
char cmd_Func_ipaddr()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for ipaddr\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_smethod_ipaddr(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置mask */
char cmd_Func_mask()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for mask\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_smethod_mask(daqFMx, buffer);
return EXIT_SUCCESS;
return EXIT_SUCCESS;
}
/* 配置gateway */
char cmd_Func_gateway()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for gateway\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_smethod_gateway(daqFMx, buffer);
return EXIT_SUCCESS;
return EXIT_SUCCESS;
return EXIT_SUCCESS;
}
/* 配置serverip */
char cmd_Func_serverip()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for serverip\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_smethod_serverip(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置serverport */
char cmd_Func_serverport()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for serverport\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_smethod_serverport(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置sn */
char cmd_Func_sn()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for sn\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_basicparam_sn(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置lon */
char cmd_Func_lon()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for lon\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_basicparam_lon(daqFMx, buffer);
return EXIT_SUCCESS;
}
/* 配置la */
char cmd_Func_la()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for la\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_basicparam_la(daqFMx, buffer);
return EXIT_SUCCESS;
}
/*配置chn*/
char cmd_Func_chn()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for chn\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_basicparam_chn(daqFMx, buffer);
return EXIT_SUCCESS;
}
/*配置model*/
char cmd_Func_model()
{
char quit[] = { "quit" };
char buffer[VALUELENGTH] = { 0 };
do {
printf("please set value for model\n");
(void)scanf("%s", buffer);
if (!strcmp(buffer, quit))
return EXIT_SUCCESS;
} while (strlen(buffer) == 0);
/* 把配置值写入结构体 */
DaqFM_SetVal_basicparam_model(daqFMx, buffer);
return EXIT_SUCCESS;
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册