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

📄 type.h

📁 对于DSP C6000系列视频处理开发中,SDRAM于对视频编码数据的存储,此代码为SDRAM的驱动程序
💻 H
字号:
#ifndef SYSTYPE

#define SYSTYPE





#define    uchar                    	unsigned char
#define    UCHAR                    	unsigned char


#define    s8				signed		char
#define    S8				signed		char
#define    Int8				signed 		char  
#define    __s8				unsigned 	char
#define    u8				unsigned 	char


#define    U8				unsigned char

#define    __u8				unsigned char




#define    TCHAR			unsigned short
#define    ushort			unsigned short
#define    USHORT			unsigned short

#define    s16				 signed	 short
#define    S16				 signed	 short




#define    __s16			 signed	 short
#define    u16				unsigned short

#define    U16				unsigned short

#define    __u16			unsigned short




#define    uint				unsigned int
#define    UINT				unsigned int

#define    s32				 signed	 int
#define    S32				 signed	 int
#define    __s32			 signed	 int

		
#define    u32				unsigned int
#define    U32				unsigned int

#define    __u32			unsigned int


#define    slong           			 long

#define    ulong           	unsigned long
#define    ULONG          	unsigned long

#define    s64				  signed long
#define    S64				  signed long
#define    __s64			  signed long
#define    u64				unsigned long	
#define    U64				unsigned long
#define    __u64			unsigned long	
			
#define    false	                0
#define    true         	        1

#ifndef 	FALSE
#define    FALSE                    	0X00000000
#define    TRUE	                    	0X00000001
#endif

#ifndef 	NULL			
#define     NULL_8			0
#define     NULL_16			0
#define     NULL			0
#define     NULL64			0
#define     U32MAX			0XFFFFFFF0
#endif

typedef 	uchar 					bool;
typedef 	u32 					BOOL;

#define    Uint8			unsigned char
#define    Uint16			unsigned short
#define    Uint32			unsigned int
#define    Uint40			unsigned long

#define    Int16			 signed	 short
#define    Int32			 signed	 int

//typedef 			unsigned int  Uint32;
/*
#ifndef _CSL_STDINC_H_



	typedef unsigned char    Uint8;
typedef unsigned short   Uint16;
typedef unsigned int     Uint32;
typedef unsigned long    Uint40;
typedef char             Int8;
typedef short            Int16;
typedef int              Int32;
typedef long             Int40;

#endif
*/

#define WORD  UINT 
#define BYTE uchar

#define FLOAT float
#define SHORT S16
#define DWORD S32
#define CHAR char
#define INT int
#define DOUBLE float
//#define DEBUG_SYSTEM
#ifdef  DEBUG_SYSTEM
#include "debugSymbol.h"
#endif


//#include "CpuConfig.h"


#define LED_FLASH led=!led;



typedef	enum{
		 OUT_NO	=0X00,
		 OUT_SERIAL	=0X01,
		 OUT_NET	=0X02,
		 OUT_SHELL	=0X03,
		 OUT_GUI_TEXT=0X04,
		 OUT_GUI_JPEG=0X05,
		 OUT_GUI_VIDEO=0X06
			}SYSTEM_OUT_TYPE;
#define FILENAMELENGTH 12
typedef struct {
	uchar    fileName[FILENAMELENGTH];
	uint    type;
	uint    flag;
	u32     start;
	u32     end;
	u32     length;
	}FILE ;



#define MEMORYMAX  0X40000

#if MEMORYMAX == 0X40000		//256K

 	#define SKB_BUF_MAX 0X1000


#else

  	#if MEMORYMAX < 0X100000 	//1M

	 	#define SKB_BUF_MAX 0X10000


  	#else 			//1M

	 	#define SKB_BUF_MAX 0X40000

  	#endif
  
#endif

	#define THREADSTACKENTRY 		0X0800
	#define SYSTEMINTERFACEENTRY	0X0888


#define SKB_HEAD_SIZE	(4*4)

 struct SKB{
	u32  len;
	u32  size; 
	u32  type;
	uchar* header;	 
	
	//struct SKB * pNext;
    uchar   buf[SKB_BUF_MAX];
	};
typedef struct SKB sk_buff;


//#define USERPROGRAMRAMMAX 0X100
#define STRINGMAX  81

typedef char string[STRINGMAX];

#define DATA_IN 


#define THREADSTACKSTART 32

#define STRINGLENGTHMAX 0X30


#define PROGRAMRAMMAX 	0X100
#define SYSTEMSTACKMAX 	0X80


#define  CHIP_DM642


#define SDRAM_END  0X84000000//64M
//#define a_table     "0123456789abcdef" //ascii值表
#define h_to_a(i)     a_table[i]         //0x00~0x0f的hex转ascii
#define c_to_M(i)     i>>4               //单子节的高4位hex值
#define c_to_L(i)     i%0x10             //单子节的低4位hex值
#define c_to_aH(i)    a_table[i>>4]      //单子节的高4位ascii值
#define c_to_aL(i)    a_table[i%0x10]    //单子节的高4位ascii值
#define i_to_cH(i)    i>>8               //双字节的高8位hex值
#define i_to_cL(i)    i%0x100            //双字节的低8位hex值


#define printf_debug_2 
#define SERIAL_DEBUG
#define reentrant
typedef unsigned int LONG_POINT_ADDR  ;
typedef unsigned int POINT_ADDR;
#define code const 

#define DM642_LITTLE_END  1
#define U32_BIT_SIZE  32



#define int8_t   s8
#define uint8_t  u8
#define int16_t  s16
#define uint16_t u16
#define int32_t  s32
#define uint32_t u32
#define int64_t  slong
#define uint64_t ulong
#define ptr_t uint32_t


#define INT32  int32_t
#define INT16  int16_t
#define UINT16 uint16_t
#define UINT32 uint32_t

#define BSWAP(a) { \
                unsigned int _temp0,_temp1,_temp2,_temp3,_temp4;\
                _temp1=(a & 0xFF00FF00)>>8;\
                _temp0=(a & 0x00FF00FF)<<8;\
                _temp2=_temp0+_temp1;\
                _temp3=(_temp2 & 0x0000FFFF)<<16;\
                _temp4=(_temp2 & 0xFFFF0000)>>16;\
                     a=_temp3+_temp4;\
                }
         static __inline uint64_t read_counter(void)
         { 
          /*
             __asm {
                 rdtsc
             }
          *///Port to Ti_Platform
          return clock();
         }

#define SWAP(type, x, y) { type* _tmp_; _tmp_ = x; x = y ; y = _tmp_;}
#define CLIP1(x) (x & ~255) ? (-x >> 31) : x
#define ABS(x) ((x) > 0 ? (x) : -(x))

#define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \
                type name[(sizex)*(sizey)]
#define DECLARE_ALIGNED_MATRIX_H(name,sizex,sizey,type,alignment) \
                type name[(sizex)*(sizey)]
#define DECLARE_ALIGNED2_MATRIX_H(name,sizex,sizey,type,alignment) \
                type name[(sizex)][(sizey)] 



static __inline int32_t
clip3(int32_t a, int32_t low, int32_t high)
{
    if (a < low)
        return low;
    
    if (a > high)
        return high;

    return a;
}
                
#define _RW 
#define	_R
#define size_t                 s32 

#define CIPS_RESULT  uint
#define CIPS_OK  0 

#define U8S_CMP_LITTLE  -1
#define U8S_CMP_EQUAL  0
#define U8S_CMP_LARAGE  1

#define TIME_TYPE u32 
#endif //SYSTYPE

#define FONT_SIZE U32

#define XDATA32 ((u32 *)0)

#define PDATA32(addr) 	*((u32 *)(addr))              

//#define 	TRUE			1
//#define 	FALSE			0
#define TIME_TYPE u32 //u40            
#define tchar u8

⌨️ 快捷键说明

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