forked from xuos/xiuos
				
			
		
			
				
	
	
		
			60 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
| /*
 | |
| * Copyright (c) 2022 AIIT XUOS Lab
 | |
| * XiUOS is licensed under Mulan PSL v2.
 | |
| * You can use this software according to the terms and conditions of the Mulan PSL v2.
 | |
| * You may obtain a copy of Mulan PSL v2 at:
 | |
| *        http://license.coscl.org.cn/MulanPSL2
 | |
| * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 | |
| * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 | |
| * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 | |
| * See the Mulan PSL v2 for more details.
 | |
| */
 | |
| 
 | |
| /**
 | |
|  * @file control_file.h
 | |
|  * @brief control relative API
 | |
|  * @version 1.0
 | |
|  * @author AIIT XUOS Lab
 | |
|  * @date 2022-03-17
 | |
|  */
 | |
| 
 | |
| #ifndef __CONTROL_FILE_H_
 | |
| #define __CONTROL_FILE_H_
 | |
| 
 | |
| #define CTL_FILE_LEN 1000 // control file size
 | |
| #define CTL_CMD_NUM 10 // support command number
 | |
| #define CTL_CMD_LEN 100 // control command length
 | |
| #define CTL_IP_LEN 32 // IP address length
 | |
| #define CTL_FILE_NAME_LEN 100 // file name length
 | |
| 
 | |
| #define PLC_SOCK_FILE_NAME "/plc/socket_param.json"
 | |
| 
 | |
| #define ctl_print //KPrintf
 | |
| #define ctl_error KPrintf
 | |
| 
 | |
| // for running plc socket
 | |
| typedef struct CtlPlcSockParamStruct
 | |
| {
 | |
|     char ip[CTL_IP_LEN];
 | |
|     int port;
 | |
|     int tcp; // 1: TCP 0: UDP
 | |
|     int cmd_num; //command number
 | |
|     int cmd_len[CTL_CMD_NUM]; // command length
 | |
|     char cmd[CTL_CMD_NUM][CTL_CMD_LEN];
 | |
| }CtlPlcSockParamType;
 | |
| 
 | |
| extern CtlPlcSockParamType ctl_file_param;
 | |
| extern int sd_mount_flag;
 | |
| 
 | |
| FILE *CtlFileInit(char *file);
 | |
| void CtlFileClose(FILE *fd);
 | |
| void CtlFileRead(FILE *fd, int size, char *buf);
 | |
| void CtlFileWrite(FILE *fd, int size, char *buf);
 | |
| int CtlFileReadWithFilename(char *file_name, int size, char *buf);
 | |
| 
 | |
| #ifdef LIB_USING_CJSON
 | |
| void CtlParseJsonData(char *buf);
 | |
| #endif
 | |
| #endif
 | |
| 
 |