Cellular example for CodeZoo Type1SC Shield

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?

UserRevisionLine numberNew 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_