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

📄 general.h

📁 凌阳MP3 spSPCA755yuanma
💻 H
字号:
/*++

Copyright (c) 2001 Sunplus Technology Co., Ltd.

Module Name:

        general.h

Abstract:

        Header file related to general type definition

Environment:

        Keil C51 Compiler

Revision History:

        08/28/2001      Chi-Yeh Tsai    created                 

--*/
#include "option.h"


#define SIMULATE	0

// WWWW
#if SIMULATE
#undef NULL
#endif

//-----------------------------------------------------------------------------
// Data type
//-----------------------------------------------------------------------------
//1-bit
#define BIT             bit
#define PBIT            bit *

//8-bit
#define CHAR            signed char 
#define UCHAR           unsigned char
#define PCHAR           signed char *
#define PUCHAR          unsigned char *
#define BYTE            unsigned char

// 16-bit
#define SHORT           signed short
#define USHORT          unsigned short
#define PSHORT          signed short *
#define PUSHORT         unsigned short *
#define WORD            unsigned short

// 32-bit
#define LONG            signed long
#define ULONG           unsigned long
#define PLONG           signed long *
#define PULONG          unsigned long *
#define DOUBLEWORD      unsigned long

//--------
//boolean
//--------
#define FALSE           0
#define TRUE            1
#define true		TRUE
#define false         	FALSE
#define FAIL		1
#define SUCCESS		0
#define DataEOF		1
#define ON		1
#define OFF		0
//-----
//NULL
//-----
//#define NULL            ((void *) 0L)

//------------------
// UINT32Data union
//------------------
typedef union
{
 BYTE  	BYTEData[4];
 ULONG 	dwData;
}U32DATA;

//------------------
// UINT16Data union
//------------------
typedef union
{
 BYTE  	BYTEData[2];
 USHORT wData;
}U16DATA;

//-----------------------------------------------------------------------------
// Macro
//-----------------------------------------------------------------------------
#define M_BCDToHEX(x)           (((x) >> 4) & 0x0f) * 10 + ((x) & 0x0f)
#define M_HEXToBCD(x)           ((((x) / 10) << 4) | ((x) % 10))
#define M_HiByteOfWord(x)       (unsigned char) ((x) >> 8)
#define M_LoByteOfWord(x)       (unsigned char) (x)
#define M_ByteSwapOfWord(x)     (((x) >> 8) | ((x) << 8))
#define M_HiByteOfDword(x)      (unsigned char) ((x) >> 24)
#define M_MidHiByteOfDword(x)   (unsigned char) ((x) >> 16)
#define M_MidLoByteOfDword(x)   (unsigned char) ((x) >> 8)
#define M_LoByteOfDword(x)      (unsigned char) (x)
//richie@0117 modify
#define M_ByteSwapOfDword(x)    (((unsigned long)(x) << 24) | (((unsigned long)(x) & 0x0000ff00) << 8) | (((unsigned long)(x) & 0x00ff0000) >> 8) | ((unsigned long)(x) >> 24))
#define M_UCHARToULONG(x,y,u,v) (unsigned long) (((unsigned long)x)<<24)|(((unsigned long)y)<<16)|(((unsigned long)u)<<8)|((unsigned long)(v))
#define M_UCHARToUSHORT(x,y)	(unsigned short)  ((((unsigned short)x)<<8)|((unsigned short)y))
//Chamber @0731
#define HIBYTE(var)             (*(unsigned char*)&var)
#define LOBYTE(var)             (*((unsigned char*)&var+1))
#define HIINT(var)              (*(unsigned int*)&var)
#define LOINT(var)              (*((unsigned int*)&var+1))

//-----------------------------------------------------------------------------
//Header file
//-----------------------------------------------------------------------------
#if ( SIMULATE == 1 )
#define USING_0
#define USING_1
#define USING_2
#define USING_3
#define INTERRUPT_0
#define INTERRUPT_1
#define INTERRUPT_3
#else
#define USING_0			using 0
#define USING_1			using 1
#define USING_2			using 2
#define USING_3			using 3
#define INTERRUPT_0		interrupt 0
#define INTERRUPT_1		interrupt 1
#define INTERRUPT_3		interrupt 3
#endif
/*
#define KPA8591_RTL	

#ifdef KPA8591_RTL
#define DbgPrint                
#else
#define DbgPrint                printf
#endif
*/

// 110102@wyeo, start
#define CODE_RELEASE		0 //Rs232,DbgPrint,on when 0
                                  //mask DbgPrint,RS232 when 1
                                  //Rs232 only when 2
#define K_SLASH /

#if     CODE_RELEASE

#define DbgPrint;/K_SLASH

#else

#define DbgPrint printf

#endif


//-----------------------------------------------------------------------------
//Header file
//-----------------------------------------------------------------------------
#if ( SIMULATE == 1 )
#else
#include <reg320.h>
#include <absacc.h>
#endif
#include <stdio.h>

#include "device.h"
#include "option.h"

#include "chipopt.h"
#include "cardopt.h"

#if (SIMULATE == 0)  //WMP3

//----For System Debug --
//sbit   DbgP10	= P1^0;          /* Verify I/O Port 0 : */
sbit   DbgP11   = P1^1;          /* Verify I/O Port 1 : */
//sbit   DbgP12   = P1^2;          /* Verify I/O Port 2 : */
sbit   DbgP13   = P1^3;          /* Verify I/O Port 3 : */
sbit   DbgP14   = P1^4;          /* Verify I/O Port 4 : */
sbit   DbgP15   = P1^5;          /* Verify I/O Port 5 : */
sbit   DbgP16   = P1^6;          /* Verify I/O Port 6 : */
//sbit   DbgP17   = P1^7;          /* Verify I/O Port 7 : */
//----For System Debug --
sbit   DbgP30	= P3^0;          /* Verify I/O Port 0 : */
sbit   DbgP31   = P3^1;          /* Verify I/O Port 1 : */
sbit   DbgP32   = P3^2;          /* Verify I/O Port 2 : */
sbit   DbgP33   = P3^3;          /* Verify I/O Port 3 : */
sbit   DbgP34   = P3^4;          /* Verify I/O Port 4 : */
sbit   DbgP35   = P3^5;          /* Verify I/O Port 5 : */
sbit   DbgP36   = P3^6;          /* Verify I/O Port 6 : */
sbit   DbgP37   = P3^7;          /* Verify I/O Port 7 : */
//---
//#if 0
//sbit SPL_STB	= P1^0;
//sbit SPL_ACK	= P1^1;
//sbit SPL_DAT	= P1^2;
//#else
sbit Charge_Pin = P3^0;
sbit SPL10_STB	= P3^3;
sbit SPL10_ACK	= P3^4;
sbit SPL10_DAT	= P3^5;

//#endif
//---
#endif


#if (K_CARD_TYPE & K_NANDF_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_NANDF
#elif (K_CARD_TYPE & K_NORF_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_NORF
#elif (K_CARD_TYPE & K_NEXTF_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_NEXTF
//patch4.2@richie@ds0509 begin
#elif (K_CARD_TYPE & K_DOSRAM_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_DOSRAM
//patch4.2@richie@ds0509 end
#elif (K_CARD_TYPE & K_SDF_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_SDF
#elif (K_CARD_TYPE & K_MMC_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_MMC
#elif (K_CARD_TYPE & K_SMC_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_SMC
#elif (K_CARD_TYPE & K_CFC_SUPPORTED)
#define K_MEDIA_BUILT_IN			K_MEDIA_CFC
#endif

// remark above if you are sure that the built in media is sdram
//#define K_MEDIA_BUILT_IN			K_MEDIA_NONE

#if (K_CARD_TYPE & K_CFC_SUPPORTED)
#define K_MEDIA_CARD				K_MEDIA_CFC
#elif (K_CARD_TYPE & K_SMC_SUPPORTED)
#define K_MEDIA_CARD				K_MEDIA_SMC
#elif (K_CARD_TYPE & K_SDF_SUPPORTED)		// wyeo@0509

//version4.0@ada@0513 for MMC
#define K_MEDIA_CARD				K_MEDIA_SDF
#elif (K_CARD_TYPE & K_MMC_SUPPORTED)
#define K_MEDIA_CARD				K_MEDIA_MMC

#elif (K_CARD_TYPE & K_NANDF_SUPPORTED)
#define K_MEDIA_CARD				K_MEDIA_NANDF
#elif (K_CARD_TYPE & K_NORF_SUPPORTED)
#define K_MEDIA_CARD				K_MEDIA_NORF
#elif (K_CARD_TYPE & K_NEXTF_SUPPORTED)
#define K_MEDIA_CARD				K_MEDIA_NEXTF
//patch4.2@richie@ds0509 begin
#elif (K_CARD_TYPE & K_DOSRAM_SUPPORTED)
#define K_MEDIA_CARD				K_MEDIA_DOSRAM
//patch4.2@richie@ds0509 end
#endif
// WWWW end

#include "l2.h"
#include "l2_supp.h"
#include "l1.h"

⌨️ 快捷键说明

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