The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
emilmont
Date:
Fri Feb 21 12:21:39 2014 +0000
Revision:
80:8e73be2a2ac1
First alpha release for the NRF51822 target (to be tested in the online IDE)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
emilmont 80:8e73be2a2ac1 1 /*
emilmont 80:8e73be2a2ac1 2 * Copyright (c) 2012 Nordic Semiconductor. All Rights Reserved.
emilmont 80:8e73be2a2ac1 3 *
emilmont 80:8e73be2a2ac1 4 * The information contained herein is confidential property of Nordic Semiconductor. The use,
emilmont 80:8e73be2a2ac1 5 * copying, transfer or disclosure of such information is prohibited except by express written
emilmont 80:8e73be2a2ac1 6 * agreement with Nordic Semiconductor.
emilmont 80:8e73be2a2ac1 7 *
emilmont 80:8e73be2a2ac1 8 */
emilmont 80:8e73be2a2ac1 9
emilmont 80:8e73be2a2ac1 10 /** @brief Utilities for verifying program logic
emilmont 80:8e73be2a2ac1 11 */
emilmont 80:8e73be2a2ac1 12
emilmont 80:8e73be2a2ac1 13 #ifndef SOFTDEVICE_ASSERT_H_
emilmont 80:8e73be2a2ac1 14 #define SOFTDEVICE_ASSERT_H_
emilmont 80:8e73be2a2ac1 15
emilmont 80:8e73be2a2ac1 16 #include <stdint.h>
emilmont 80:8e73be2a2ac1 17
emilmont 80:8e73be2a2ac1 18 /** @brief This function handles assertions.
emilmont 80:8e73be2a2ac1 19 *
emilmont 80:8e73be2a2ac1 20 *
emilmont 80:8e73be2a2ac1 21 * @note
emilmont 80:8e73be2a2ac1 22 * This function is called when an assertion has triggered.
emilmont 80:8e73be2a2ac1 23 *
emilmont 80:8e73be2a2ac1 24 *
emilmont 80:8e73be2a2ac1 25 * @param line_num The line number where the assertion is called
emilmont 80:8e73be2a2ac1 26 * @param file_name Pointer to the file name
emilmont 80:8e73be2a2ac1 27 */
emilmont 80:8e73be2a2ac1 28 void assert_softdevice_callback(uint16_t line_num, const uint8_t *file_name);
emilmont 80:8e73be2a2ac1 29
emilmont 80:8e73be2a2ac1 30
emilmont 80:8e73be2a2ac1 31 /*lint -emacro(506, ASSERT) */ /* Suppress "Constant value Boolean */
emilmont 80:8e73be2a2ac1 32 /*lint -emacro(774, ASSERT) */ /* Suppress "Boolean within 'if' always evaluates to True" */ \
emilmont 80:8e73be2a2ac1 33 /** @brief Check intended for production code
emilmont 80:8e73be2a2ac1 34 *
emilmont 80:8e73be2a2ac1 35 * Check passes if "expr" evaluates to true. */
emilmont 80:8e73be2a2ac1 36 #define ASSERT(expr) \
emilmont 80:8e73be2a2ac1 37 if (expr) \
emilmont 80:8e73be2a2ac1 38 { \
emilmont 80:8e73be2a2ac1 39 } \
emilmont 80:8e73be2a2ac1 40 else \
emilmont 80:8e73be2a2ac1 41 { \
emilmont 80:8e73be2a2ac1 42 assert_softdevice_callback((uint16_t)__LINE__, (uint8_t *)__FILE__); \
emilmont 80:8e73be2a2ac1 43 /*lint -unreachable */ \
emilmont 80:8e73be2a2ac1 44 }
emilmont 80:8e73be2a2ac1 45
emilmont 80:8e73be2a2ac1 46 #endif /* SOFTDEVICE_ASSERT_H_ */