Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Debug.cpp@7:8e12f7357b9f, 2011-06-26 (annotated)
- Committer:
- Benoit
- Date:
- Sun Jun 26 09:56:31 2011 +0000
- Revision:
- 7:8e12f7357b9f
- Parent:
- 1:f4040665bc61
Added IPv4 global broadcast address to processed frames inside IPv4 layer.
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Benoit | 1:f4040665bc61 | 1 | /* |
| Benoit | 1:f4040665bc61 | 2 | * $Id: Debug.c 26 2011-06-09 10:24:02Z benoit $ |
| Benoit | 1:f4040665bc61 | 3 | * $Author: benoit $ |
| Benoit | 1:f4040665bc61 | 4 | * $Date: 2011-06-09 12:24:02 +0200 (jeu., 09 juin 2011) $ |
| Benoit | 1:f4040665bc61 | 5 | * $Rev: 26 $ |
| Benoit | 1:f4040665bc61 | 6 | * |
| Benoit | 1:f4040665bc61 | 7 | * |
| Benoit | 1:f4040665bc61 | 8 | * |
| Benoit | 1:f4040665bc61 | 9 | * |
| Benoit | 1:f4040665bc61 | 10 | * |
| Benoit | 1:f4040665bc61 | 11 | */ |
| Benoit | 1:f4040665bc61 | 12 | |
| Benoit | 1:f4040665bc61 | 13 | #include "Debug.h" |
| Benoit | 1:f4040665bc61 | 14 | |
| Benoit | 1:f4040665bc61 | 15 | |
| Benoit | 1:f4040665bc61 | 16 | Debug_LevelMask_t debug_LevelMask = DEBUG_LEVEL_WARNING | DEBUG_LEVEL_ERROR | DEBUG_LEVEL_PANIC; |
| Benoit | 1:f4040665bc61 | 17 | Debug_ModuleMask_t debug_ModuleMask = DEBUG_MODULE_ALL; |
| Benoit | 1:f4040665bc61 | 18 | |
| Benoit | 1:f4040665bc61 | 19 | |
| Benoit | 1:f4040665bc61 | 20 | void Debug_SetMasks(Debug_ModuleMask_t moduleMask, Debug_LevelMask_t levelMask) |
| Benoit | 1:f4040665bc61 | 21 | { |
| Benoit | 1:f4040665bc61 | 22 | debug_LevelMask = levelMask; |
| Benoit | 1:f4040665bc61 | 23 | debug_ModuleMask = moduleMask; |
| Benoit | 1:f4040665bc61 | 24 | } |
| Benoit | 1:f4040665bc61 | 25 | |
| Benoit | 1:f4040665bc61 | 26 | const char *Debug_GetText(uint32_t level) |
| Benoit | 1:f4040665bc61 | 27 | { |
| Benoit | 1:f4040665bc61 | 28 | char *result; |
| Benoit | 1:f4040665bc61 | 29 | |
| Benoit | 1:f4040665bc61 | 30 | switch(level) |
| Benoit | 1:f4040665bc61 | 31 | { |
| Benoit | 1:f4040665bc61 | 32 | case DEBUG_LEVEL_INFO: |
| Benoit | 1:f4040665bc61 | 33 | result = "INFO"; |
| Benoit | 1:f4040665bc61 | 34 | break; |
| Benoit | 1:f4040665bc61 | 35 | |
| Benoit | 1:f4040665bc61 | 36 | case DEBUG_LEVEL_WARNING: |
| Benoit | 1:f4040665bc61 | 37 | result = "WARNING"; |
| Benoit | 1:f4040665bc61 | 38 | break; |
| Benoit | 1:f4040665bc61 | 39 | |
| Benoit | 1:f4040665bc61 | 40 | case DEBUG_LEVEL_ERROR: |
| Benoit | 1:f4040665bc61 | 41 | result = "ERROR"; |
| Benoit | 1:f4040665bc61 | 42 | break; |
| Benoit | 1:f4040665bc61 | 43 | |
| Benoit | 1:f4040665bc61 | 44 | case DEBUG_LEVEL_PANIC: |
| Benoit | 1:f4040665bc61 | 45 | result = "PANIC"; |
| Benoit | 1:f4040665bc61 | 46 | break; |
| Benoit | 1:f4040665bc61 | 47 | |
| Benoit | 1:f4040665bc61 | 48 | case DEBUG_LEVEL_VERBOSE0: |
| Benoit | 1:f4040665bc61 | 49 | result = "VERBOSE0"; |
| Benoit | 1:f4040665bc61 | 50 | break; |
| Benoit | 1:f4040665bc61 | 51 | |
| Benoit | 1:f4040665bc61 | 52 | case DEBUG_LEVEL_VERBOSE1: |
| Benoit | 1:f4040665bc61 | 53 | result = "VERBOSE1"; |
| Benoit | 1:f4040665bc61 | 54 | break; |
| Benoit | 1:f4040665bc61 | 55 | |
| Benoit | 1:f4040665bc61 | 56 | case DEBUG_LEVEL_VERBOSE2: |
| Benoit | 1:f4040665bc61 | 57 | result = "VERBOSE2"; |
| Benoit | 1:f4040665bc61 | 58 | break; |
| Benoit | 1:f4040665bc61 | 59 | |
| Benoit | 1:f4040665bc61 | 60 | default: |
| Benoit | 1:f4040665bc61 | 61 | result = "<unknown>"; |
| Benoit | 1:f4040665bc61 | 62 | break; |
| Benoit | 1:f4040665bc61 | 63 | } |
| Benoit | 1:f4040665bc61 | 64 | |
| Benoit | 1:f4040665bc61 | 65 | return result; |
| Benoit | 1:f4040665bc61 | 66 | } |
| Benoit | 1:f4040665bc61 | 67 | |
| Benoit | 1:f4040665bc61 | 68 | |
| Benoit | 1:f4040665bc61 | 69 | void Debug_DumpBufferHex(uint8_t *buffer, int32_t length) |
| Benoit | 1:f4040665bc61 | 70 | { |
| Benoit | 1:f4040665bc61 | 71 | int32_t i, address, index, tmpIndex; |
| Benoit | 1:f4040665bc61 | 72 | |
| Benoit | 1:f4040665bc61 | 73 | index = 0; |
| Benoit | 1:f4040665bc61 | 74 | address = 0; |
| Benoit | 1:f4040665bc61 | 75 | while(index < length) |
| Benoit | 1:f4040665bc61 | 76 | { |
| Benoit | 1:f4040665bc61 | 77 | /* Print buffer relative address */ |
| Benoit | 1:f4040665bc61 | 78 | DEBUG_RAW_NOCRLF(("%03X ", address)); |
| Benoit | 1:f4040665bc61 | 79 | |
| Benoit | 1:f4040665bc61 | 80 | /* Print hex bytes */ |
| Benoit | 1:f4040665bc61 | 81 | for (i = 0; i < DEBUG_BUFFER_DUMP_LINE_LEN; i++) |
| Benoit | 1:f4040665bc61 | 82 | { |
| Benoit | 1:f4040665bc61 | 83 | tmpIndex = index + i; |
| Benoit | 1:f4040665bc61 | 84 | if (tmpIndex < length) |
| Benoit | 1:f4040665bc61 | 85 | { |
| Benoit | 1:f4040665bc61 | 86 | DEBUG_RAW_NOCRLF(("%02X ", buffer[tmpIndex])); |
| Benoit | 1:f4040665bc61 | 87 | } |
| Benoit | 1:f4040665bc61 | 88 | else |
| Benoit | 1:f4040665bc61 | 89 | { |
| Benoit | 1:f4040665bc61 | 90 | DEBUG_RAW_NOCRLF((" ")); |
| Benoit | 1:f4040665bc61 | 91 | } |
| Benoit | 1:f4040665bc61 | 92 | } |
| Benoit | 1:f4040665bc61 | 93 | |
| Benoit | 1:f4040665bc61 | 94 | DEBUG_RAW_NOCRLF((" - ")); |
| Benoit | 1:f4040665bc61 | 95 | |
| Benoit | 1:f4040665bc61 | 96 | /* Print ascii chars */ |
| Benoit | 1:f4040665bc61 | 97 | for (i = 0; i < DEBUG_BUFFER_DUMP_LINE_LEN; i++) |
| Benoit | 1:f4040665bc61 | 98 | { |
| Benoit | 1:f4040665bc61 | 99 | tmpIndex = index + i; |
| Benoit | 1:f4040665bc61 | 100 | if (tmpIndex < length) |
| Benoit | 1:f4040665bc61 | 101 | { |
| Benoit | 1:f4040665bc61 | 102 | DEBUG_RAW_NOCRLF(("%c", buffer[tmpIndex] >= 32 ? buffer[tmpIndex] : '.')); |
| Benoit | 1:f4040665bc61 | 103 | } |
| Benoit | 1:f4040665bc61 | 104 | } |
| Benoit | 1:f4040665bc61 | 105 | |
| Benoit | 1:f4040665bc61 | 106 | index += DEBUG_BUFFER_DUMP_LINE_LEN; |
| Benoit | 1:f4040665bc61 | 107 | address += DEBUG_BUFFER_DUMP_LINE_LEN; |
| Benoit | 1:f4040665bc61 | 108 | |
| Benoit | 1:f4040665bc61 | 109 | DEBUG_RAW_NOCRLF(("\r\n")); |
| Benoit | 1:f4040665bc61 | 110 | } |
| Benoit | 1:f4040665bc61 | 111 | |
| Benoit | 1:f4040665bc61 | 112 | } |
| Benoit | 1:f4040665bc61 | 113 |