observe fixes

Dependencies:   nanoservice_client_1_12_X Nanostack_lib

Fork of mbedEndpointNetwork_6LowPAN by Doug Anson

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers debug.h Source File

debug.h

00001 #ifndef __DEBUG_H_
00002 #define __DEBUG_H_
00003 
00004 #include "mbed.h"
00005 
00006 #include "nsdl_dbg.h"
00007 #include "stdint.h"
00008     
00009 extern "C" void debug_integer(uint8_t width, uint8_t base, int16_t n);
00010 extern "C" int16_t debug_get(void);
00011 extern "C" int8_t debug_put(uint8_t byte);
00012 extern "C" void debug_send(uint8_t *str);
00013 extern "C" void printf_array(uint8_t *ptr , uint16_t len);
00014 extern "C" void printf_string(uint8_t *ptr , uint16_t len);
00015 extern "C" void printf_ipv6_address(uint8_t *addr_ptr);
00016 extern "C" int8_t debug_init(uint32_t speed, uint8_t io_conf);
00017 extern "C" void debug_interrupt_handler(void);
00018 extern "C" uint32_t debug_round(uint32_t value, uint32_t divider);
00019 
00020 #define MEM_VALID(x) \
00021     int s##x=0;\
00022     int *h##x = new int [1];\
00023     std::printf("[stack]0x%08x\t[heap]0x%08x\t[memory avail]%d bytes \tLine: %d %s\r\n", &s##x, h##x, &s##x-h##x, __LINE__, __FILE__);\
00024     if (h##x > &s##x)\
00025     printf("collision\n");\
00026     else\
00027     delete [] h##x;\
00028     __nop()
00029 
00030 #define debug_hex(y)    debug_integer(2, 16, y)
00031 #define debug_int(y)    debug_integer(6, 10, y)
00032 
00033 #endif // __DEBUG_H_