Monitor program only for mbed GR-PEACH

Dependencies:  

Committer:
kenjiArai
Date:
Sun Dec 14 09:17:01 2014 +0000
Revision:
4:76b3113c79ff
Check rtos functions on GR-PEACH. Does NOT work on GR-PEACH but does work on LPC1768, F401RE and L152RE.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kenjiArai 4:76b3113c79ff 1 /*
kenjiArai 4:76b3113c79ff 2 * mbed Headder file for Hardware Monitor
kenjiArai 4:76b3113c79ff 3 *
kenjiArai 4:76b3113c79ff 4 * Copyright (c) 2014 Kenji Arai / JH1PJL
kenjiArai 4:76b3113c79ff 5 * http://www.page.sannet.ne.jp/kenjia/index.html
kenjiArai 4:76b3113c79ff 6 * http://mbed.org/users/kenjiArai/
kenjiArai 4:76b3113c79ff 7 * Created: June 1st, 2014
kenjiArai 4:76b3113c79ff 8 * Revised: Nobember 2nd, 2014
kenjiArai 4:76b3113c79ff 9 *
kenjiArai 4:76b3113c79ff 10 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
kenjiArai 4:76b3113c79ff 11 * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
kenjiArai 4:76b3113c79ff 12 * AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
kenjiArai 4:76b3113c79ff 13 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
kenjiArai 4:76b3113c79ff 14 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
kenjiArai 4:76b3113c79ff 15 */
kenjiArai 4:76b3113c79ff 16
kenjiArai 4:76b3113c79ff 17 // Object ----------------------------------------------------------------------------------------
kenjiArai 4:76b3113c79ff 18 extern Serial pch(USBTX, USBRX);
kenjiArai 4:76b3113c79ff 19
kenjiArai 4:76b3113c79ff 20 // Definition ------------------------------------------------------------------------------------
kenjiArai 4:76b3113c79ff 21 #define BAUD_RATE 9600
kenjiArai 4:76b3113c79ff 22
kenjiArai 4:76b3113c79ff 23 #define BAUD(x) pch.baud(x)
kenjiArai 4:76b3113c79ff 24 #define GETC(x) pch.getc(x)
kenjiArai 4:76b3113c79ff 25 #define PUTC(x) pch.putc(x)
kenjiArai 4:76b3113c79ff 26 #define PRINTF(...) pch.printf(__VA_ARGS__)
kenjiArai 4:76b3113c79ff 27 #define READABLE(x) pch.readable(x)
kenjiArai 4:76b3113c79ff 28
kenjiArai 4:76b3113c79ff 29 // Range check status
kenjiArai 4:76b3113c79ff 30 #define ERR_NOTHING 0
kenjiArai 4:76b3113c79ff 31 #define ERR_MODIFY_SIZ 1
kenjiArai 4:76b3113c79ff 32 #define ERR_OUT_OF_RANGE 2
kenjiArai 4:76b3113c79ff 33
kenjiArai 4:76b3113c79ff 34 // Reg. Size
kenjiArai 4:76b3113c79ff 35 #define SIZE8 8
kenjiArai 4:76b3113c79ff 36 #define SIZE16 16
kenjiArai 4:76b3113c79ff 37 #define SIZE32 32
kenjiArai 4:76b3113c79ff 38 #define SIZE_FULL 32
kenjiArai 4:76b3113c79ff 39 #define SIZE_X 32
kenjiArai 4:76b3113c79ff 40
kenjiArai 4:76b3113c79ff 41 // RAM -------------------------------------------------------------------------------------------
kenjiArai 4:76b3113c79ff 42 extern char linebuf[];
kenjiArai 4:76b3113c79ff 43 extern int buf_size;
kenjiArai 4:76b3113c79ff 44
kenjiArai 4:76b3113c79ff 45 #if USE_MEM
kenjiArai 4:76b3113c79ff 46 typedef struct {
kenjiArai 4:76b3113c79ff 47 int32_t mstr;
kenjiArai 4:76b3113c79ff 48 int32_t msiz;
kenjiArai 4:76b3113c79ff 49 int32_t mtmp;
kenjiArai 4:76b3113c79ff 50 int32_t mold;
kenjiArai 4:76b3113c79ff 51 uint8_t mflg;
kenjiArai 4:76b3113c79ff 52 uint8_t mbhw;
kenjiArai 4:76b3113c79ff 53 } MEMO;
kenjiArai 4:76b3113c79ff 54 static MEMO mem;
kenjiArai 4:76b3113c79ff 55 #endif
kenjiArai 4:76b3113c79ff 56
kenjiArai 4:76b3113c79ff 57 // Function prototypes ---------------------------------------------------------------------------
kenjiArai 4:76b3113c79ff 58 extern void put_rn ( void );
kenjiArai 4:76b3113c79ff 59 extern void put_r ( void );
kenjiArai 4:76b3113c79ff 60 extern void put_lin ( void );
kenjiArai 4:76b3113c79ff 61 extern void put_spc( uint8_t n);
kenjiArai 4:76b3113c79ff 62 extern void get_line (char *buff, int len);
kenjiArai 4:76b3113c79ff 63 extern int xatoi (char **str, int32_t *res);