⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 debug.h

📁 This network protcol stack,it is very strong and powerful!
💻 H
📖 第 1 页 / 共 2 页
字号:

#if defined( DBG_PRINT_TO_COMPORT ) && !defined(ENABLE_DPRINTF)
#define ENABLE_DPRINTF  // Enable Dbg_Print functionality.
#endif
#if defined( DBG_PRINT_TO_LCDDISP ) && !defined(ENABLE_LCD)
#define ENABLE_LCD      // Enable LCD panel for debug output 
#define ENABLE_DPRINTF  // Enable Dbg_Print functionality.
#endif

#ifdef ENABLE_DPRINTF
#ifdef PLATFORM_WINDOWS

int putchar( int c );
#define txchar putchar 
#define txchar_init()
#define Dbg_PutChar(x) putchar((uint8_t)(x))

#else

void txchar(char);
void txchar_init(void);

#ifdef DBG_PRINT_TO_COMPORT
 #define Dbg_PutChar(ch) { txchar((uint8_t)(ch)); if((ch)=='\n') txchar('\r'); }
#else
 #ifdef DBG_PRINT_TO_LCDDISP
  extern void Dbg_PutChar(uint8_t ch);
 #endif DBG_PRINT_TO_LCDDISP
#endif DBG_PRINT_TO_COMPORT

#endif PLATFORM_WINDOWS
#endif ENABLE_DPRINTF


/************************************************************************************
*************************************************************************************
* Public prototypes
*************************************************************************************
************************************************************************************/

#if (defined(ENABLE_DPRINTF) || defined(ENABLE_LCD) || defined(ENABLE_BUZZER) || defined(ENABLE_LEDS) || defined(DBG_TOGGLE_PORTA0)) && defined(PLATFORM_GB60)
void Dbg_Init(void);
#else
#define Dbg_Init()
#endif //(ENABLE_DPRINTF || ASSERTS_USE_LCD || ENABLE_BUZZER || ENABLE_LEDS || DBG_TOGGLE_PORTA0) && PLATFORM_GB60

#if defined(ENABLE_BUZZER) && defined(PLATFORM_GB60)
void BuzzerControl( uint8_t on );
#else
#define BuzzerControl( on )
#endif //ENABLE_BUZZER && PLATFORM_GB60

#if defined(ENABLE_LEDS) && defined(PLATFORM_GB60)
void SetLed(uint8_t led, uint8_t state);
#else
#define SetLed(led, state)
#endif //ENABLE_LEDS && PLATFORM_GB60


#ifdef ENABLE_DPRINTF

uint8_t Dbg_Print(void *dummy, uint8_t *format, ...);

void Dbg_PutStr(uint8_t *pStr);
void Dbg_PutHexNum(uint8_t *pStr, uint8_t len);

#ifdef DBG_MLME_NWK_LOG 
void Dbg_NwkToMlmeLog(mlmeMessage_t *pMsg);
void Dbg_MlmeToNwkLog(nwkMessage_t *pMsg);
#else
#define Dbg_NwkToMlmeLog(pMsg)
#define Dbg_MlmeToNwkLog(pMsg)
#endif //DBG_MLME_NWK_LOG 

#ifdef DBG_MLME_MEM_LOG 
void Dbg_MemToMlmeLog(void *pMsg);
void Dbg_MlmeToMemLog(void *pMsg);
#else
#define Dbg_MemToMlmeLog(pMsg)
#define Dbg_MlmeToMemLog(pMsg)
#endif //DBG_MLME_MEM_LOG 

#else

#define Dbg_NwkToMlmeLog(pMsg)
#define Dbg_MlmeToNwkLog(pMsg)
#define Dbg_MemToMlmeLog(pMsg)
#define Dbg_MlmeToMemLog(pMsg)

#endif ENABLE_DPRINTF

/************************************************************************************
*************************************************************************************
* Public type definitions
*************************************************************************************
************************************************************************************/

#if defined(ENABLE_BUZZER) && defined(PLATFORM_GB60)

enum {
  gBuzzerOn_c,
  gBuzzerOff_c,
  gBuzzerBlip_c,
};

#endif //ENABLE_BUZZER && PLATFORM_GB60

#if defined(ENABLE_LEDS) && defined(PLATFORM_GB60)

enum {
  gLedOff_c,
  gLedOn_c,
};

enum {
  gLed1_c   = 1,
  gLed2_c   = 2,
  gLed3_c   = 4,
  gLed4_c   = 8,
  gLedAll_c = 0x0F,
};
#endif //ENABLE_LEDS && PLATFORM_GB60


#if defined(PLATFORM_GB60) && defined(DBG_TOGGLE_PORTA0)

#pragma DISABLE_WARNING(ConditionAlwaysTrue_c)
#pragma DISABLE_WARNING(ConditionAlwaysFalse_c)

#define Dbg_SetPortA0(state) if((state) == 1) PTAD |=  0x01; /* Raise GPIO Port A bit 0*/ \
                             else             PTAD &= ~0x01  /* Lower GPIO Port A bit 0*/
#define Dbg_SetPortA1(state) if((state) == 1) PTAD |=  0x04; /* Raise GPIO Port A bit 0*/ \
                             else             PTAD &= ~0x04  /* Lower GPIO Port A bit 0*/

#else
#define Dbg_SetPortA0(state)
#define Dbg_SetPortA1(state)
#endif // PLATFORM_GB60 && DBG_TOGGLE_PORTA0

/************************************************************************************
*************************************************************************************
* Public memory declarations
*************************************************************************************
************************************************************************************/

#ifdef DBG_PRINT_TO_LCDDISP
extern uint8_t lcdCurrentLine;
#endif

/************************************************************************************
*************************************************************************************
* Public functions
*************************************************************************************
************************************************************************************/



/************************************************************************************
* This is a template function header.
*   
* Interface assumptions:
*   None
*   
* Return value:
*   None
* 
* Revision history:
*   date      Author    Comments
*   ------    ------    --------
*   DDMMYY     XXX      Created
* 
************************************************************************************/



/************************************************************************************
*************************************************************************************
* Level 1 block comment
*************************************************************************************
************************************************************************************/

//-----------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------
// Level 2 block comment
//-----------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------

/* Level 3 block comment */




// Delimiters

/***********************************************************************************/

//-----------------------------------------------------------------------------------

#endif /* _TEMPLATE_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -