Felipe Neves
/
TEN_mbedos_simple_shell
TEN MBED OS Course shell utility
main.cpp@0:1e8461adc480, 2017-01-29 (annotated)
- Committer:
- uLipe
- Date:
- Sun Jan 29 20:57:17 2017 +0000
- Revision:
- 0:1e8461adc480
first;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
uLipe | 0:1e8461adc480 | 1 | /** |
uLipe | 0:1e8461adc480 | 2 | * @brief our first hello world threaded program with MBED OS |
uLipe | 0:1e8461adc480 | 3 | */ |
uLipe | 0:1e8461adc480 | 4 | #include "mbed.h" |
uLipe | 0:1e8461adc480 | 5 | #include "rtos.h" |
uLipe | 0:1e8461adc480 | 6 | #include "shell.h" |
uLipe | 0:1e8461adc480 | 7 | |
uLipe | 0:1e8461adc480 | 8 | |
uLipe | 0:1e8461adc480 | 9 | /** |
uLipe | 0:1e8461adc480 | 10 | * @brief create shell command handler |
uLipe | 0:1e8461adc480 | 11 | */ |
uLipe | 0:1e8461adc480 | 12 | static int shell_callback(char *cmd, int argc, char **argv, void *outchar) |
uLipe | 0:1e8461adc480 | 13 | { |
uLipe | 0:1e8461adc480 | 14 | Serial *s = (Serial *)outchar; |
uLipe | 0:1e8461adc480 | 15 | int ret = 0; |
uLipe | 0:1e8461adc480 | 16 | if(strcmp("Hello", cmd) == 0){ |
uLipe | 0:1e8461adc480 | 17 | s->printf("## welcome to simple shell app, please add your custom commands ##\n\r"); |
uLipe | 0:1e8461adc480 | 18 | }else { |
uLipe | 0:1e8461adc480 | 19 | ret = -1; |
uLipe | 0:1e8461adc480 | 20 | } |
uLipe | 0:1e8461adc480 | 21 | return(ret); |
uLipe | 0:1e8461adc480 | 22 | } |
uLipe | 0:1e8461adc480 | 23 | |
uLipe | 0:1e8461adc480 | 24 | /** |
uLipe | 0:1e8461adc480 | 25 | * @brief create shell command handler |
uLipe | 0:1e8461adc480 | 26 | */ |
uLipe | 0:1e8461adc480 | 27 | static void shell_usage(void *outchar) |
uLipe | 0:1e8461adc480 | 28 | { |
uLipe | 0:1e8461adc480 | 29 | Serial *s = (Serial *)outchar; |
uLipe | 0:1e8461adc480 | 30 | s->printf("## Hello - prints a hello world message ## \n\r"); |
uLipe | 0:1e8461adc480 | 31 | } |
uLipe | 0:1e8461adc480 | 32 | |
uLipe | 0:1e8461adc480 | 33 | |
uLipe | 0:1e8461adc480 | 34 | |
uLipe | 0:1e8461adc480 | 35 | /** |
uLipe | 0:1e8461adc480 | 36 | * @brief main application loop |
uLipe | 0:1e8461adc480 | 37 | */ |
uLipe | 0:1e8461adc480 | 38 | int main(void) |
uLipe | 0:1e8461adc480 | 39 | { |
uLipe | 0:1e8461adc480 | 40 | /* starts the shell task and applications task*/ |
uLipe | 0:1e8461adc480 | 41 | shell_set_command_handler(shell_callback); |
uLipe | 0:1e8461adc480 | 42 | shell_set_cmd_list(shell_usage); |
uLipe | 0:1e8461adc480 | 43 | shell_start(); |
uLipe | 0:1e8461adc480 | 44 | return 0; |
uLipe | 0:1e8461adc480 | 45 | } |