⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 webserver.h

📁 这同样是FS8610相关的代码.看起来不错啊.
💻 H
字号:
/**
 * \addtogroup t4app 
 * @{
 */

/**
 *\addtogroup httpd Web Server
 *@{
 */
 
/**
 * \file WebServer.h
 * \brief Web Server Application Header File for T4 Demo.
 * \author Xiaofei Rui <xfrui@fameg.com>
 *
*/

#ifndef __WEBSERVER_H__
#define __WEBSERVER_H__

#include "kernel/system.h"
#include "user_config.h"
//#include "hw/uart.h"

/***************************************************************************** 
*                          CONSTANT DEFINES                                                                         *
*****************************************************************************/

#define INCLUDE_FORM     1                /* 1: html file include form  */

#if INCLUDE_RS232_ETHER_DEMO
#define  HTML_NUM          8                /* total html file number whicth include form */
#define  FORM_NUM          9               /* total form number  */
#define  ITEM_NUM           40            /*  total item number  */
#else
#define  HTML_NUM          4                /* total html file number whicth include form */
#define  FORM_NUM          5               /* total form number  */
#define  ITEM_NUM           16            /*  total item number  */
#endif

#define MAX_VALUE_LEN    30           /* maxim value string length    */

#define MAX_FILENAME_LEN  50        /* maxim upload file name string length */


#define EVB_DHCP      "$DHCP_$"
#define EVB_NET_SIP	"$SRC_IP_ADDRES$"
#define EVB_NET_GWIP	"$GW_IP_ADDRESS$"
#define EVB_NET_SN	"$SUB_NET__MASK$"
#define EVB_NET_DNS	"$DNS_SERVER_IP$"
#define EVB_NET_MAC	"$SRC_MAC_ADDRESS$"

#define EVB_SEL_TCPS "$TCP_S$"
#define EVB_SEL_TCPC "$TCP_C$"
#define EVB_SEL_UDP "$UDP_S$"
#define EVB_LOCAL_PORT "$LPT$"
#define EVB_B1200  "$1200BPS$"
#define EVB_B2400  "$2400BPS$"
#define EVB_B4800  "$4800BPS$"
#define EVB_B9600  "$9600BPS$"
#define EVB_B19200  "$19200BPS$"
#define EVB_B38400  "$38400BPS$"
#define EVB_B57600  "$57600BPS$"
#define EVB_B115200  "$115200BPS$"
#define EVB_B230400  "$230400BPS$"

#define EVB_7DATABITS  "$7_BITS$"
#define EVB_8DATABITS  "$8_BITS$"
#define EVB_EVEN           "$_EVEN_$"
#define EVB_ODD            "$_ODD__$"
#define EVB_NONE_P      "$_NONEP$"
#define EVB_SOFT          "$_SOFT_$"
#define EVB_HARD          "$_HARD_$"
#define EVB_NONE_F      "$_NONEF$"

#define EVB_NET_RIP	"$REM_IP_ADDRES$"
#define EVB_REMOTE_PORT "$RPT$"

#define EVB_PING_RESPONSE "$PING_$"
#define EVB_FILE_UPDATE       "$FUPDT$"
#define EVB_TFTP_FILE           "$FILE_NAME$"
//#define EVB_TFTP_IP              "$TFTP_IP_ADDRES$"


#define  TYPE_TEXT          1
#define  TYPE_RADIO      2
#define  TYPE_CHECKBOX  3
#define  TYPE_SELECT          4
#define  TYPE_FILE             5


/***************************************************************************** 
*                                       MACROS                                                                            *
*****************************************************************************/




/***************************************************************************** 
*                                       DATA TYPES                                                                      *
*****************************************************************************/

struct file_info_T{
	/* upload file name */
	UINT8 filename[MAX_FILENAME_LEN];
	/* upload file length */
	UINT16 filelength;
	/* a pointer to upload file content */
	UINT8 XDATA *filecontent;
};


struct html_info_T{
	/* a pointer to html file name */
	UINT8 CODE *htmlfile;
	/* start position in form_info[] */
	UINT8 start_form;
	/* end position in form_info[] */
	UINT8 end_form;
};


struct form_info_T{
	/* form action */
	UINT8  CODE *action; 
      /* web file linked to each form */
	UINT8  CODE *link;
	/* enctype: TEXT_PLAIN, FORM_DATA*/
	UINT8 enctype;
	/* start position in item_info[] */
	UINT8 start;
	/* end position in item_info[] */
	UINT8 end;

};

struct item_info_T{

	UINT8  CODE *name;
	
	UINT8 value[MAX_VALUE_LEN];

	BOOL select;  /* 1: selected or checked */

	UINT8 type;

	UINT8  CODE *replace;
};



/***************************************************************************** 
*                    FUNCTIONS DECLARATION                                                                      *
*****************************************************************************/

extern void web_server_init(UINT8 ch);
extern void web_server_run(UINT8 ch);

#if INCLUDE_FORM
extern void set_param_init_fn(int_function func);
extern void set_param_get_fn(int_function func);
#endif

/***************************************************************************** 
*                   GLOBAL VARIABLES DECLARATION                                                            *
*****************************************************************************/
#if INCLUDE_FORM
extern struct item_info_T item_info[ITEM_NUM];
extern struct form_info_T form_info[FORM_NUM];
extern struct file_info_T rec_file;
#endif



#endif

/** @} */

/** @} */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -