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

📄 whusb20trace.h

📁 linux 下的驱动程序 欢迎下载
💻 H
字号:
//TRACE 宏
#ifndef _TRACE_H
#define _TRACE_H

#define DBG 0

#if  DBG  

#define	NO_RETURN			0xDEADDEAD
#define	TRACE_IN(s)         DbgPrint( "Whceb01: Enter "s"\r\n" )
#define	TRACE_OUT(s,a)		DbgPrint( "Whceb01: "s", Exit with 0x%x\r\n", a )
#ifdef WDEBUG
#define TRACE(a)			WDebug_DebugPrint( a )
#define TRACE0(a)			WDebug_DebugPrint( a )
#define TRACE1(a,b)			WDebug_DebugPrint(a ,b)
#define TRACE2(a,b,c)		WDebug_DebugPrint(a ,b,c)
#define TRACE3(a,b,c,d)		WDebug_DebugPrint(a ,b,c,d)
#define TRACE4(a,b,c,d,e)	WDebug_DebugPrint(a "\r\n",b,c,d,e)
#define TRACE5(a,b,c,d,e,f)	WDebug_DebugPrint("Whceb01: " a "\r\n",b,c,d,e,f)

#else
#define TRACE(a)			DbgPrint("Whceb01: " a "\r\n")
#define TRACE0(a)			DbgPrint("Whceb01: " a "\r\n")
#define TRACE1(a,b)			DbgPrint("Whceb01: " a "\r\n",b)
#define TRACE2(a,b,c)		DbgPrint("Whceb01: " a "\r\n",b,c)
#define TRACE3(a,b,c,d)		DbgPrint("Whceb01: " a "\r\n",b,c,d)
#define TRACE4(a,b,c,d,e)	DbgPrint("Whceb01: " a "\r\n",b,c,d,e)
#define TRACE5(a,b,c,d,e,f)	DbgPrint("Whceb01: " a "\r\n",b,c,d,e,f)

#endif

__inline
VOID
OutputValue(IN PVOID	pBuffer,IN ULONG	dwLength)
{
	ULONG		i,j;
	const ULONG  Line=27;
	CHAR	Buffer[ 27*4 ];
	CHAR	Temp[6];

	if(dwLength==0)
		return;

	memset( (char*)Buffer , 0 , 27*4 );

	//TRACE1("The Value in address 0x%x is :\r\n\r\n",pBuffer);
#if 1
	for(i=0;i<=dwLength/Line;i++)
	{
		for(j=0;j<Line && i*Line+j<dwLength;j++)
		{
			sprintf( Temp , "%02x ",*((PUCHAR)pBuffer+i*Line+j) );
			strcat( (char*)Buffer , Temp );
			//DbgPrint("%02x ",*((PUCHAR)pBuffer+i*Line+j));
		}
		strcat( (char*)Buffer , "\r\n" );
	//	DbgPrint("\r\n");
	}
	DbgPrint( (char*)Buffer );
#else
	DbgPrint("The Data Length is %d\r\n",dwLength);
	for(i=0;i<Line&& i<dwLength;i++)
	{
		DbgPrint("%02x ",*((PUCHAR)pBuffer+i));
	}
	DbgPrint("\r\n");
	for(i=dwLength-Line;i<dwLength;i++)
	{
		DbgPrint("%02x ",*((PUCHAR)pBuffer+i));
	}
#endif

	DbgPrint("\r\n\r\n");
}

#else
#define TRACE(a)
#define TRACE0( a )			
#define TRACE1(a,b)			
#define TRACE2(a,b,c)		
#define TRACE3(a,b,c,d)	
#define TRACE4(a,b,c,d,e)
#define TRACE5(a,b,c,d,e,f)	
#define OutputValue(a,b)	
#define TRACE_IN(a)
#define TRACE_OUT(a, b)
#endif
#endif

⌨️ 快捷键说明

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