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

📄 ha_typedef.h

📁 基于arm嵌入式处理器的LCDC驱动代码及详细pdf中文手册
💻 H
字号:

/*
********************************************************************************************
*filename:			HA_TypeDef.h				
*author:			LC
*create date:		2003-3-28 15:45                                                                      
*description:	    The file define the data type used in the project                                                                      
*modify history:	  2003-4-1 15:21,LC, ADD THE ERROR CODE DEFINE                                                                    
*misc:           
********************************************************************************************
*/
#ifndef _HA_TYPEDEF_H
#define _HA_TYPEDEF_H

/******************************************  
* General-Purpose Data Types
*******************************************/
typedef char            		S8;      /* signed 8-bit integer */
typedef short           		S16;      /* signed 16-bit integer */
typedef long            		S32;      /* signed 32-bit integer */
typedef unsigned char   	U8;     /* unsigned 8-bit integer */
typedef unsigned short  	U16;     /* unsigned 16-bit integer */
typedef unsigned long   	U32;     /* unsigned 32-bit integer */

typedef	volatile U32 *		RP;
typedef	volatile U16 *		RP16;
typedef	volatile U8  *		RP8;


typedef void            		*VP;    /* pointer to an unpredictable data type */
typedef void            		(*FP)(); /* program start address */

#ifndef _BOOL_TYPE_
#define _BOOL_TYPE_
typedef int             		BOOL;	/* Boolean value.  TRUE (1) or FALSE (0). */
#endif  

//define ERROR CODE   2003-4-1 15:22, LC ADD
typedef int             		ER;     /* Error code.  A signed integer. */


/*******************************************************************
*  Error Codes               
*           IF SUCCESS RETURN 0, ELSE RETURN OTHER ERROR CODE,
*           parameter error return (-33)/E_PAR, hardware error reture (-99)/E_HA
********************************************************************/
#define 	E_OK       	0        /* Normal completion */
#define 	E_SYS      	(-5)     /* System error */
#define 	E_NOMEM    	(-10)    /* Insufficient memory */
#define 	E_NOSPT    	(-17)    /* Feature not supported */
#define 	E_INOSPT  	 (-18)    /* Feature not supported 
                               by ITRON/FILE specification */
#define 	E_RSFN     	(-20)    /* Reserved function code number */
#define 	E_RSATR    	(-24)    /* Reserved attribute */
#define 	E_PAR      	(-33)    /* Parameter error */
#define 	E_ID       	(-35)    /* Invalid ID number */
#define 	E_NOEXS    	(-52)    /* Object does not exist */
#define 	E_OBJ      	(-63)    /* Invalid object state */
#define 	E_MACV     	(-65)    /* Memory access disabled or memory access 
                               violation */
#define 	E_OACV     	(-66)    /* Object access violation */
#define 	E_CTX      	(-69)    /* Context error */
#define 	E_QOVR     	(-73)    /* Queuing or nesting overflow */
#define 	E_DLT      	(-81)    /* Object being waited for was deleted */
#define 	E_TMOUT    	(-85)    /* Polling failure or timeout exceeded */
#define 	E_RLWAI    	(-86)    /* WAIT state was forcibly released */ 

#define	E_HA		(-99)  // HARD WARE ERROR

/********************************************************
* define the error code and the space where the error code is placed
**********************************************************/
//#define	HA_DEBUG_MODULE	  1 //enable to generate the verify harware code
#define	HA_DEBUG_GPT  
#define	HA_DEBUG_RTC
#define	HA_DEBUG_UART
#define	HA_DEBUG_EBI
#define	HA_DEBUG_LCDC
#define	HA_DEBUG_USB
#define	HA_DEBUG_CFC
#define	HA_DEBUG_DMAC
#define	HA_DEBUG_INTC
#define	HA_DEBUG_SPI


/******************************************************
* DEFINE THE SPACE    
* the error code area space is 0x00600000 to 0x006008ff
*******************************************************/
#define	HA_ERRORBASE				0X00600000      //THE SPACE THE THE ERROR CODE
#define	HA_ERRORBASE_GPT			0X00600000      //0X00600000 TO 0X006000FF   ,256 BYTES, 64 WORDS
#define	HA_ERRORBASE_RTC			0X0000F000    //0X00600100 TO 0X005001FF
#define	HA_ERRORBASE_UART		0X00600200		//0X00600200 TO 0X006002FF
#define	HA_ERRORBASE_EBI			0X00600300		//0X00600300 TO 0X006003FF
#define	HA_ERRORBASE_LCDC		0X00600400		//0X00640000 TO 0X006004FF	
#define	HA_ERRORBASE_USB            	0X00600500		//0X00650000 TO 0X006005FF	
#define	HA_ERRORBASE_MMC           	0X00600600		//0X00660000 TO 0X006006FF	
#define	HA_ERRORBASE_DMAC           	0X00600700		//0X00670000 TO 0X006007FF	
#define	HA_ERRORBASE_INTC           	0X00600800		//0X00680000 TO 0X006008FF	
#define	HA_ERRORBASE_SYS			                   
#define  	HA_ERRORTOP				0X00600900
#define 	HA_ERRORBASE_SPI			0X00601000
#define	HA_ERRORBASE_PMU			0X00601100

//DEFINE THE ERROR CODE, YOU CAN DEFINE MORE ERROR CODE,IF NECESSARY
#define 	HA_EOK			0X00000000
#define	HA_EOR_1		0X00000001        //you can use the error code to identify the sorts of error
#define	HA_EOR_2		0x00000002
#define	HA_EOR_3    		0x00000003
#define	HA_EOR_4    		0x00000004
#define	HA_EOR_5    		0x00000005
#define	HA_EOR_6    		0x00000006
#define	HA_EOR_7    		0x00000007
#define	HA_EOR_8    		0x00000008
#define	HA_EOR_9    		0x00000009
#define	HA_EOR_10  		0x0000000a
#define	HA_EOR_11 		0x0000000b
#define	HA_EOR_12  		0x0000000c
#define	HA_EOR_13  		0x0000000d
#define	HA_EOR_14  		0x0000000e
//etc.
#define 	HA_EOR			0XFFFFFFFF


//define the MACRO to direct the compiler to generate the code for release or for debug
#ifndef	RELEASE_CODE
#define	DEBUG_CODE	1    //enable the generate the debug code
#endif

/*********************************
* for test
**********************************/

//#define 	UNDEBUG
#define	FPGA



///////////////////////

//////////////////////
#ifdef HW	
#define	HA_PRINT(  ADD,  ERROR_CODE  )	\
		HA_HW_PRINT(  ADD,  ERROR_CODE )
#endif

#ifdef SIM	
#define	HA_PRINT(  ADD,  ERROR_CODE  )	\
		HA_SIM_PRINT(  ADD,  ERROR_CODE )
		
#endif

extern	ER HA_SIM_PRINT( U32 ADD, U32 ERROR_CODE );
extern    ER HA_HW_PRINT( U32 ADD, U32 ERROR_CODE );
////////////////////////////
ER HA_INIT(void);



#endif//_HA_TYPEDEF_H

⌨️ 快捷键说明

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