85 lines
2 KiB
C
Executable file
85 lines
2 KiB
C
Executable file
// Copyright 2011-2016 Espressif Systems (Shanghai) PTE LTD
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
#ifndef _ROM_SSC_H_
|
|
#define _ROM_SSC_H_
|
|
|
|
#include "esp_types.h"
|
|
|
|
#include "esp_attr.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct cmd_s {
|
|
char *cmd_str;
|
|
#define CMD_T_ASYNC 0x01
|
|
#define CMD_T_SYNC 0x02
|
|
uint8_t flag;
|
|
uint8_t id;
|
|
void (* cmd_func)(void);
|
|
void (* cmd_callback)(void *arg);
|
|
} ssc_cmd_t;
|
|
|
|
#define ssc_printf ets_printf
|
|
#define SSC_CMD_N 10 //since the command not added in ssc_cmd.c
|
|
#define MAX_LINE_N 40
|
|
#define PROMPT ":>"
|
|
#define SSC_EVT_N 4
|
|
|
|
|
|
#define SSC_PRIO 30
|
|
enum {
|
|
CMD_SET_SSID = 0,
|
|
CMD_SCAN,
|
|
CMD_CONNECT,
|
|
CMD_DISCONNECT,
|
|
CMD_SET_MACADDR,
|
|
CMD_PING,
|
|
CMD_PING_COUNT,
|
|
CMD_PING_LENGTH,
|
|
CMD_SET_IP,
|
|
// CMD_RD_I2C,
|
|
// CMD_SET_NULL, it's just for solving the old rom bug
|
|
// CMD_SET_I2C,
|
|
// CMD_RD_I2CM,
|
|
// CMD_SET_I2CM,
|
|
// CMD_SET_PBUS,
|
|
// CMD_SET_TXTONE,
|
|
// CMD_SET_STOPTONE,
|
|
CMD_END,
|
|
};
|
|
|
|
enum {
|
|
SIG_SSC_RUNCMD,
|
|
SIG_SSC_CMDDONE,
|
|
SIG_SSC_RESTART,
|
|
SIG_SSC_UART_RX_CHAR,
|
|
};
|
|
|
|
void ssc_attach(void) ROMFN_ATTR;
|
|
void ssc_cmd_done(int cmd_id, STATUS status) ROMFN_ATTR;
|
|
int ssc_param_len(void) ROMFN_ATTR;
|
|
char * ssc_param_str(void) ROMFN_ATTR;
|
|
void ssc_register(ssc_cmd_t *cmdset, uint8_t cmdnum, void (* help)(void)) ROMFN_ATTR;
|
|
|
|
extern ssc_cmd_t sscCmdSet[];
|
|
void ssc_help(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* _ROM_SSC_H_ */
|