📄 general.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 + -