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:
AnnaBridge
Date:
Wed Feb 20 20:53:29 2019 +0000
Revision:
172:65be27845400
Parent:
171:3a7713b1edbc
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 156:ff21514d8981 1 /***************************************************************************//**
AnnaBridge 156:ff21514d8981 2 * @file em_dbg.h
AnnaBridge 156:ff21514d8981 3 * @brief Debug (DBG) API
Anna Bridge 160:5571c4ff569f 4 * @version 5.3.3
AnnaBridge 156:ff21514d8981 5 *******************************************************************************
Anna Bridge 160:5571c4ff569f 6 * # License
AnnaBridge 156:ff21514d8981 7 * <b>Copyright 2016 Silicon Laboratories, Inc. http://www.silabs.com</b>
AnnaBridge 156:ff21514d8981 8 *******************************************************************************
AnnaBridge 156:ff21514d8981 9 *
AnnaBridge 156:ff21514d8981 10 * Permission is granted to anyone to use this software for any purpose,
AnnaBridge 156:ff21514d8981 11 * including commercial applications, and to alter it and redistribute it
AnnaBridge 156:ff21514d8981 12 * freely, subject to the following restrictions:
AnnaBridge 156:ff21514d8981 13 *
AnnaBridge 156:ff21514d8981 14 * 1. The origin of this software must not be misrepresented; you must not
AnnaBridge 156:ff21514d8981 15 * claim that you wrote the original software.
AnnaBridge 156:ff21514d8981 16 * 2. Altered source versions must be plainly marked as such, and must not be
AnnaBridge 156:ff21514d8981 17 * misrepresented as being the original software.
AnnaBridge 156:ff21514d8981 18 * 3. This notice may not be removed or altered from any source distribution.
AnnaBridge 156:ff21514d8981 19 *
AnnaBridge 156:ff21514d8981 20 * DISCLAIMER OF WARRANTY/LIMITATION OF REMEDIES: Silicon Labs has no
AnnaBridge 156:ff21514d8981 21 * obligation to support this Software. Silicon Labs is providing the
AnnaBridge 156:ff21514d8981 22 * Software "AS IS", with no express or implied warranties of any kind,
AnnaBridge 156:ff21514d8981 23 * including, but not limited to, any implied warranties of merchantability
AnnaBridge 156:ff21514d8981 24 * or fitness for any particular purpose or warranties against infringement
AnnaBridge 156:ff21514d8981 25 * of any proprietary rights of a third party.
AnnaBridge 156:ff21514d8981 26 *
AnnaBridge 156:ff21514d8981 27 * Silicon Labs will not be liable for any consequential, incidental, or
AnnaBridge 156:ff21514d8981 28 * special damages, or any other relief, or for any claim by any third party,
AnnaBridge 156:ff21514d8981 29 * arising from your use of this Software.
AnnaBridge 156:ff21514d8981 30 *
AnnaBridge 156:ff21514d8981 31 ******************************************************************************/
AnnaBridge 156:ff21514d8981 32
AnnaBridge 156:ff21514d8981 33 #ifndef EM_DBG_H
AnnaBridge 156:ff21514d8981 34 #define EM_DBG_H
AnnaBridge 156:ff21514d8981 35
AnnaBridge 156:ff21514d8981 36 #include <stdbool.h>
AnnaBridge 156:ff21514d8981 37 #include "em_device.h"
AnnaBridge 156:ff21514d8981 38
Anna Bridge 160:5571c4ff569f 39 #if defined(CoreDebug_DHCSR_C_DEBUGEN_Msk)
AnnaBridge 156:ff21514d8981 40
AnnaBridge 156:ff21514d8981 41 #ifdef __cplusplus
AnnaBridge 156:ff21514d8981 42 extern "C" {
AnnaBridge 156:ff21514d8981 43 #endif
AnnaBridge 156:ff21514d8981 44
AnnaBridge 156:ff21514d8981 45 /***************************************************************************//**
AnnaBridge 156:ff21514d8981 46 * @addtogroup emlib
AnnaBridge 156:ff21514d8981 47 * @{
AnnaBridge 156:ff21514d8981 48 ******************************************************************************/
AnnaBridge 156:ff21514d8981 49
AnnaBridge 156:ff21514d8981 50 /***************************************************************************//**
AnnaBridge 156:ff21514d8981 51 * @addtogroup DBG
AnnaBridge 156:ff21514d8981 52 * @{
AnnaBridge 156:ff21514d8981 53 ******************************************************************************/
AnnaBridge 156:ff21514d8981 54
AnnaBridge 156:ff21514d8981 55 /*******************************************************************************
AnnaBridge 156:ff21514d8981 56 ***************************** PROTOTYPES **********************************
AnnaBridge 156:ff21514d8981 57 ******************************************************************************/
AnnaBridge 156:ff21514d8981 58
Anna Bridge 160:5571c4ff569f 59 #if defined(GPIO_ROUTE_SWCLKPEN) || defined(GPIO_ROUTEPEN_SWCLKTCKPEN)
AnnaBridge 156:ff21514d8981 60 /***************************************************************************//**
AnnaBridge 156:ff21514d8981 61 * @brief
AnnaBridge 156:ff21514d8981 62 * Check if a debugger is connected (and debug session activated)
AnnaBridge 156:ff21514d8981 63 *
AnnaBridge 156:ff21514d8981 64 * @details
AnnaBridge 156:ff21514d8981 65 * Used to make run-time decisions depending on whether a debug session
AnnaBridge 156:ff21514d8981 66 * has been active since last reset, ie using a debug probe or similar. In
AnnaBridge 156:ff21514d8981 67 * some cases special handling is required in that scenario.
AnnaBridge 156:ff21514d8981 68 *
AnnaBridge 156:ff21514d8981 69 * @return
AnnaBridge 156:ff21514d8981 70 * true if a debug session is active since last reset, otherwise false.
AnnaBridge 156:ff21514d8981 71 ******************************************************************************/
AnnaBridge 156:ff21514d8981 72 __STATIC_INLINE bool DBG_Connected(void)
AnnaBridge 156:ff21514d8981 73 {
AnnaBridge 156:ff21514d8981 74 return (CoreDebug->DHCSR & CoreDebug_DHCSR_C_DEBUGEN_Msk) ? true : false;
AnnaBridge 156:ff21514d8981 75 }
AnnaBridge 156:ff21514d8981 76 #endif
AnnaBridge 156:ff21514d8981 77
Anna Bridge 160:5571c4ff569f 78 #if defined(GPIO_ROUTE_SWOPEN) || defined(GPIO_ROUTEPEN_SWVPEN)
AnnaBridge 156:ff21514d8981 79 void DBG_SWOEnable(unsigned int location);
AnnaBridge 156:ff21514d8981 80 #endif
AnnaBridge 156:ff21514d8981 81
AnnaBridge 156:ff21514d8981 82 /** @} (end addtogroup DBG) */
AnnaBridge 156:ff21514d8981 83 /** @} (end addtogroup emlib) */
AnnaBridge 156:ff21514d8981 84
AnnaBridge 156:ff21514d8981 85 #ifdef __cplusplus
AnnaBridge 156:ff21514d8981 86 }
AnnaBridge 156:ff21514d8981 87 #endif
AnnaBridge 156:ff21514d8981 88
AnnaBridge 156:ff21514d8981 89 #endif /* defined( CoreDebug_DHCSR_C_DEBUGEN_Msk ) */
AnnaBridge 156:ff21514d8981 90
AnnaBridge 156:ff21514d8981 91 #endif /* EM_DBG_H */