Code for our FYDP -only one IMU works right now -RTOS is working
bt_shell/shell/tinyshell/tinysh.h@0:964eb6a2ef00, 2015-03-18 (annotated)
- Committer:
- majik
- Date:
- Wed Mar 18 22:23:48 2015 +0000
- Revision:
- 0:964eb6a2ef00
This is our FYDP code, but only one IMU works with the RTOS.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
majik | 0:964eb6a2ef00 | 1 | /* |
majik | 0:964eb6a2ef00 | 2 | * tinysh.h |
majik | 0:964eb6a2ef00 | 3 | * |
majik | 0:964eb6a2ef00 | 4 | * Header for minimal portable shell |
majik | 0:964eb6a2ef00 | 5 | * |
majik | 0:964eb6a2ef00 | 6 | * Copyright (C) 2001 Michel Gutierrez <mig@nerim.net> |
majik | 0:964eb6a2ef00 | 7 | * |
majik | 0:964eb6a2ef00 | 8 | * This library is free software; you can redistribute it and/or |
majik | 0:964eb6a2ef00 | 9 | * modify it under the terms of the GNU Lesser General Public |
majik | 0:964eb6a2ef00 | 10 | * License as published by the Free Software Foundation; either |
majik | 0:964eb6a2ef00 | 11 | * version 2.1 of the License, or (at your option) any later version. |
majik | 0:964eb6a2ef00 | 12 | * |
majik | 0:964eb6a2ef00 | 13 | * This library is distributed in the hope that it will be useful, |
majik | 0:964eb6a2ef00 | 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
majik | 0:964eb6a2ef00 | 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
majik | 0:964eb6a2ef00 | 16 | * Lesser General Public License for more details. |
majik | 0:964eb6a2ef00 | 17 | * |
majik | 0:964eb6a2ef00 | 18 | * You should have received a copy of the GNU Lesser General Public |
majik | 0:964eb6a2ef00 | 19 | * License along with this library; if not, write to the Free |
majik | 0:964eb6a2ef00 | 20 | * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
majik | 0:964eb6a2ef00 | 21 | */ |
majik | 0:964eb6a2ef00 | 22 | |
majik | 0:964eb6a2ef00 | 23 | typedef void (*tinysh_fnt_t)(int argc, char **argv); |
majik | 0:964eb6a2ef00 | 24 | |
majik | 0:964eb6a2ef00 | 25 | typedef struct tinysh_cmd_t { |
majik | 0:964eb6a2ef00 | 26 | struct tinysh_cmd_t *parent; /* 0 if top level command */ |
majik | 0:964eb6a2ef00 | 27 | char *name; /* command input name, not 0 */ |
majik | 0:964eb6a2ef00 | 28 | char *help; /* help string, can be 0 */ |
majik | 0:964eb6a2ef00 | 29 | char *usage; /* usage string, can be 0 */ |
majik | 0:964eb6a2ef00 | 30 | tinysh_fnt_t function; /* function to launch on cmd, can be 0 */ |
majik | 0:964eb6a2ef00 | 31 | void *arg; /* current argument when function called */ |
majik | 0:964eb6a2ef00 | 32 | struct tinysh_cmd_t *next; /* must be set to 0 at init */ |
majik | 0:964eb6a2ef00 | 33 | struct tinysh_cmd_t *child; /* must be set to 0 at init */ |
majik | 0:964eb6a2ef00 | 34 | } tinysh_cmd_t; |
majik | 0:964eb6a2ef00 | 35 | |
majik | 0:964eb6a2ef00 | 36 | #ifdef __cplusplus |
majik | 0:964eb6a2ef00 | 37 | extern "C" { |
majik | 0:964eb6a2ef00 | 38 | #endif |
majik | 0:964eb6a2ef00 | 39 | |
majik | 0:964eb6a2ef00 | 40 | |
majik | 0:964eb6a2ef00 | 41 | extern int echo; |
majik | 0:964eb6a2ef00 | 42 | |
majik | 0:964eb6a2ef00 | 43 | /* |
majik | 0:964eb6a2ef00 | 44 | * function void tinysh_char_out(unsigned char) must be provided by |
majik | 0:964eb6a2ef00 | 45 | * the application |
majik | 0:964eb6a2ef00 | 46 | */ |
majik | 0:964eb6a2ef00 | 47 | void tinysh_char_out(unsigned char c); |
majik | 0:964eb6a2ef00 | 48 | |
majik | 0:964eb6a2ef00 | 49 | /* |
majik | 0:964eb6a2ef00 | 50 | * Functions below are provided by the tinysh module |
majik | 0:964eb6a2ef00 | 51 | */ |
majik | 0:964eb6a2ef00 | 52 | |
majik | 0:964eb6a2ef00 | 53 | /* new character input */ |
majik | 0:964eb6a2ef00 | 54 | void tinysh_char_in(unsigned char c); |
majik | 0:964eb6a2ef00 | 55 | |
majik | 0:964eb6a2ef00 | 56 | /* add a new command */ |
majik | 0:964eb6a2ef00 | 57 | void tinysh_add_command(tinysh_cmd_t *cmd); |
majik | 0:964eb6a2ef00 | 58 | |
majik | 0:964eb6a2ef00 | 59 | /* change tinysh prompt */ |
majik | 0:964eb6a2ef00 | 60 | void tinysh_set_prompt(char *str); |
majik | 0:964eb6a2ef00 | 61 | |
majik | 0:964eb6a2ef00 | 62 | /* get command argument back */ |
majik | 0:964eb6a2ef00 | 63 | void *tinysh_get_arg(); |
majik | 0:964eb6a2ef00 | 64 | |
majik | 0:964eb6a2ef00 | 65 | /* provide conversion string to scalar (decimal or hexadecimal) */ |
majik | 0:964eb6a2ef00 | 66 | unsigned long tinysh_atoxi(char *s); |
majik | 0:964eb6a2ef00 | 67 | |
majik | 0:964eb6a2ef00 | 68 | #ifdef __cplusplus |
majik | 0:964eb6a2ef00 | 69 | } |
majik | 0:964eb6a2ef00 | 70 | #endif |
majik | 0:964eb6a2ef00 | 71 | |
majik | 0:964eb6a2ef00 | 72 |