CodeZoo co., ltd
/
mbed-os-example-cellular-Type1SC
Cellular example for CodeZoo Type1SC Shield
include/cellular_demo_tracing.h@0:04fa3499a11e, 2021-07-27 (annotated)
- Committer:
- pimco01
- Date:
- Tue Jul 27 05:42:30 2021 +0000
- Revision:
- 0:04fa3499a11e
CodeZoo Type1SC Shield Initial commit.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pimco01 | 0:04fa3499a11e | 1 | /* |
pimco01 | 0:04fa3499a11e | 2 | * Copyright (c) 2017 ARM Limited. All rights reserved. |
pimco01 | 0:04fa3499a11e | 3 | * SPDX-License-Identifier: Apache-2.0 |
pimco01 | 0:04fa3499a11e | 4 | * Licensed under the Apache License, Version 2.0 (the License); you may |
pimco01 | 0:04fa3499a11e | 5 | * not use this file except in compliance with the License. |
pimco01 | 0:04fa3499a11e | 6 | * You may obtain a copy of the License at |
pimco01 | 0:04fa3499a11e | 7 | * |
pimco01 | 0:04fa3499a11e | 8 | * http://www.apache.org/licenses/LICENSE-2.0 |
pimco01 | 0:04fa3499a11e | 9 | * |
pimco01 | 0:04fa3499a11e | 10 | * Unless required by applicable law or agreed to in writing, software |
pimco01 | 0:04fa3499a11e | 11 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT |
pimco01 | 0:04fa3499a11e | 12 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
pimco01 | 0:04fa3499a11e | 13 | * See the License for the specific language governing permissions and |
pimco01 | 0:04fa3499a11e | 14 | * limitations under the License. |
pimco01 | 0:04fa3499a11e | 15 | */ |
pimco01 | 0:04fa3499a11e | 16 | |
pimco01 | 0:04fa3499a11e | 17 | #include "mbed.h" |
pimco01 | 0:04fa3499a11e | 18 | #include "CellularLog.h" |
pimco01 | 0:04fa3499a11e | 19 | |
pimco01 | 0:04fa3499a11e | 20 | #ifndef CELLULAR_DEMO_TRACING_H_ |
pimco01 | 0:04fa3499a11e | 21 | #define CELLULAR_DEMO_TRACING_H_ |
pimco01 | 0:04fa3499a11e | 22 | |
pimco01 | 0:04fa3499a11e | 23 | #if MBED_CONF_MBED_TRACE_ENABLE |
pimco01 | 0:04fa3499a11e | 24 | static PlatformMutex trace_mutex; |
pimco01 | 0:04fa3499a11e | 25 | |
pimco01 | 0:04fa3499a11e | 26 | static void trace_wait() |
pimco01 | 0:04fa3499a11e | 27 | { |
pimco01 | 0:04fa3499a11e | 28 | trace_mutex.lock(); |
pimco01 | 0:04fa3499a11e | 29 | } |
pimco01 | 0:04fa3499a11e | 30 | |
pimco01 | 0:04fa3499a11e | 31 | static void trace_release() |
pimco01 | 0:04fa3499a11e | 32 | { |
pimco01 | 0:04fa3499a11e | 33 | trace_mutex.unlock(); |
pimco01 | 0:04fa3499a11e | 34 | } |
pimco01 | 0:04fa3499a11e | 35 | |
pimco01 | 0:04fa3499a11e | 36 | static char* trace_time(size_t ss) |
pimco01 | 0:04fa3499a11e | 37 | { |
pimco01 | 0:04fa3499a11e | 38 | static char time_st[50]; |
pimco01 | 0:04fa3499a11e | 39 | auto ms = std::chrono::time_point_cast<std::chrono::milliseconds>(Kernel::Clock::now()).time_since_epoch().count(); |
pimco01 | 0:04fa3499a11e | 40 | snprintf(time_st, 49, "[%08llums]", ms); |
pimco01 | 0:04fa3499a11e | 41 | return time_st; |
pimco01 | 0:04fa3499a11e | 42 | } |
pimco01 | 0:04fa3499a11e | 43 | |
pimco01 | 0:04fa3499a11e | 44 | static void trace_open() |
pimco01 | 0:04fa3499a11e | 45 | { |
pimco01 | 0:04fa3499a11e | 46 | mbed_trace_init(); |
pimco01 | 0:04fa3499a11e | 47 | mbed_trace_prefix_function_set( &trace_time ); |
pimco01 | 0:04fa3499a11e | 48 | |
pimco01 | 0:04fa3499a11e | 49 | mbed_trace_mutex_wait_function_set(trace_wait); |
pimco01 | 0:04fa3499a11e | 50 | mbed_trace_mutex_release_function_set(trace_release); |
pimco01 | 0:04fa3499a11e | 51 | |
pimco01 | 0:04fa3499a11e | 52 | mbed_cellular_trace::mutex_wait_function_set(trace_wait); |
pimco01 | 0:04fa3499a11e | 53 | mbed_cellular_trace::mutex_release_function_set(trace_release); |
pimco01 | 0:04fa3499a11e | 54 | |
pimco01 | 0:04fa3499a11e | 55 | #ifdef MBED_CONF_NSAPI_DEFAULT_CELLULAR_PLMN |
pimco01 | 0:04fa3499a11e | 56 | printf("\n\n[MAIN], plmn: %s\n", (MBED_CONF_NSAPI_DEFAULT_CELLULAR_PLMN ? MBED_CONF_NSAPI_DEFAULT_CELLULAR_PLMN : "NULL")); |
pimco01 | 0:04fa3499a11e | 57 | #endif |
pimco01 | 0:04fa3499a11e | 58 | } |
pimco01 | 0:04fa3499a11e | 59 | |
pimco01 | 0:04fa3499a11e | 60 | static void trace_close() |
pimco01 | 0:04fa3499a11e | 61 | { |
pimco01 | 0:04fa3499a11e | 62 | mbed_cellular_trace::mutex_wait_function_set(NULL); |
pimco01 | 0:04fa3499a11e | 63 | mbed_cellular_trace::mutex_release_function_set(NULL); |
pimco01 | 0:04fa3499a11e | 64 | |
pimco01 | 0:04fa3499a11e | 65 | mbed_trace_free(); |
pimco01 | 0:04fa3499a11e | 66 | } |
pimco01 | 0:04fa3499a11e | 67 | #else |
pimco01 | 0:04fa3499a11e | 68 | static void trace_open() |
pimco01 | 0:04fa3499a11e | 69 | { |
pimco01 | 0:04fa3499a11e | 70 | } |
pimco01 | 0:04fa3499a11e | 71 | |
pimco01 | 0:04fa3499a11e | 72 | static void trace_close() |
pimco01 | 0:04fa3499a11e | 73 | { |
pimco01 | 0:04fa3499a11e | 74 | } |
pimco01 | 0:04fa3499a11e | 75 | #endif // #if MBED_CONF_MBED_TRACE_ENABLE |
pimco01 | 0:04fa3499a11e | 76 | |
pimco01 | 0:04fa3499a11e | 77 | #endif // CELLULAR_DEMO_TRACING_H_ |