The code from https://github.com/vpcola/Nucleo
Shell.h@0:5464d5e415e5, 2014-10-08 (annotated)
- Committer:
- sinrab
- Date:
- Wed Oct 08 11:00:24 2014 +0000
- Revision:
- 0:5464d5e415e5
The code from https://github.com/vpcola/Nucleo
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sinrab | 0:5464d5e415e5 | 1 | #ifndef _TINY_SHELL_H_ |
sinrab | 0:5464d5e415e5 | 2 | #define _TINY_SHELL_H_ |
sinrab | 0:5464d5e415e5 | 3 | |
sinrab | 0:5464d5e415e5 | 4 | #include "mbed.h" |
sinrab | 0:5464d5e415e5 | 5 | #include "cmsis_os.h" |
sinrab | 0:5464d5e415e5 | 6 | |
sinrab | 0:5464d5e415e5 | 7 | #define SHELL_MAX_LINE_LENGTH 64 |
sinrab | 0:5464d5e415e5 | 8 | #define SHELL_MAX_ARGUMENTS 4 |
sinrab | 0:5464d5e415e5 | 9 | |
sinrab | 0:5464d5e415e5 | 10 | typedef void (*shellcmd_t) (Stream *, int , char **); |
sinrab | 0:5464d5e415e5 | 11 | |
sinrab | 0:5464d5e415e5 | 12 | typedef struct { |
sinrab | 0:5464d5e415e5 | 13 | const char * sc_name; |
sinrab | 0:5464d5e415e5 | 14 | shellcmd_t sc_func; |
sinrab | 0:5464d5e415e5 | 15 | } ShellCommand; |
sinrab | 0:5464d5e415e5 | 16 | |
sinrab | 0:5464d5e415e5 | 17 | typedef struct { |
sinrab | 0:5464d5e415e5 | 18 | Stream * sc_channel; |
sinrab | 0:5464d5e415e5 | 19 | ShellCommand * sc_commands; |
sinrab | 0:5464d5e415e5 | 20 | } ShellConfig; |
sinrab | 0:5464d5e415e5 | 21 | |
sinrab | 0:5464d5e415e5 | 22 | #ifdef __cplusplus |
sinrab | 0:5464d5e415e5 | 23 | extern "C" { |
sinrab | 0:5464d5e415e5 | 24 | #endif |
sinrab | 0:5464d5e415e5 | 25 | |
sinrab | 0:5464d5e415e5 | 26 | /* User commands */ |
sinrab | 0:5464d5e415e5 | 27 | void cmd_ls(Stream * chp, int argc, char * argv[]); |
sinrab | 0:5464d5e415e5 | 28 | void cmd_sensor(Stream * chp, int argc, char * argv[]); |
sinrab | 0:5464d5e415e5 | 29 | void cmd_load(Stream * chp, int argc, char * argv[]); |
sinrab | 0:5464d5e415e5 | 30 | void cmd_rollimages(Stream * chp, int argc, char * argv[]); |
sinrab | 0:5464d5e415e5 | 31 | |
sinrab | 0:5464d5e415e5 | 32 | void shellStart(const ShellConfig *); |
sinrab | 0:5464d5e415e5 | 33 | bool shellGetLine(Stream * chp, char *line, unsigned size); |
sinrab | 0:5464d5e415e5 | 34 | void shellUsage(Stream * chp, const char *p); |
sinrab | 0:5464d5e415e5 | 35 | |
sinrab | 0:5464d5e415e5 | 36 | #ifdef __cplusplus |
sinrab | 0:5464d5e415e5 | 37 | } |
sinrab | 0:5464d5e415e5 | 38 | #endif |
sinrab | 0:5464d5e415e5 | 39 | |
sinrab | 0:5464d5e415e5 | 40 | #endif |
sinrab | 0:5464d5e415e5 | 41 |