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

📄 base.h

📁 用来测试mcf5249的嵌入式测试程序
💻 H
字号:
//*******************************************************************
//  Copyright 2003 SHENZHEN UNIVERSITY EDA CENTER
//*******************************************************************
//  File Name      : base.h
//  Abstract       : define type header file
//  Modifications  :
//  Model   1.0
//  Rev.    Date       Coded by
//  0.0.1   03-05-29   K.H.Li        frist release
//*******************************************************************

#ifndef _BASE_H
#define _BASE_H

#include "type.h"
#include "mcf5249.h"

//*******************************************************************
// hardware #defines
//*******************************************************************
#define DISABLEIRQ5	    imm2->gpio.GIEN &= ~MCF5249_GPIO5_HL
#define ENABLEIRQ5		imm2->gpio.GIEN |= MCF5249_GPIO5_HL

// OUTPUT
#define IDE_RST         0x0001
#define D12_RST         0x0002
#define SMC_CE          0x0004
#define FLA_CE          0x0008
#define D12_PD          0x0010
#define FLA_WP          0x0020

// STATUS
#define D12_IRQ         0x0040
#define IDE_IRQ         0x0020
#define D12_SUSPD       0x0010
#define SMC_RB          0x0008
#define SMC_WP          0x0004
#define SMC_CD          0x0002
#define SMC_LVD         0x0001

//*************************************************************************
// basic #defines
//*************************************************************************

// USB address
#define D12_DATA		    (0x30F00000)
#define D12_COMMAND	    	(0x30F00002)

// IDE register
#define IDE_DATA 	   		(0x30E000E0)
#define IDE_ERR        		(0x30E000E2)
#define IDE_SEC_CNT	   		(0x30E000E4)
#define IDE_SECTOR	   		(0x30E000E6)
#define IDE_CYL_LSB	   		(0x30E000E8)
#define IDE_CYL_MSB    		(0x30E000EA)
#define IDE_HEAD 	   		(0x30E000EC)
#define IDE_COMMAND    		(0x30E000EE)
#define IDE_STATUS 	   		(0x30E000EE)
#define IDE_CONTROL	   		(0x30E000DC)
#define IDE_ASTATUS	  		(0x30E000DC)

// CFC register
#define CFC_DATA 	   		(0x30E000B0)
#define CFC_ERR        		(0x30E000B2)
#define CFC_SEC_CNT	   		(0x30E000B4)
#define CFC_SECTOR	   		(0x30E000B6)
#define CFC_CYL_LSB	   		(0x30E000B8)
#define CFC_CYL_MSB    		(0x30E000BA)
#define CFC_HEAD 	   		(0x30E000BC)
#define CFC_COMMAND    		(0x30E000BE)
#define CFC_STATUS 	   		(0x30E000BE)
#define CFC_CONTROL	   		(0x30E0007C)
#define CFC_ASTATUS	  		(0x30E0007C)

// SMC address
#define SMC_COMMAND	    	(0x30D00004)
#define SMC_ADDRESS	    	(0x30D00002)
#define SMC_DATA		    (0x30D00000)

// STATUS address
#define STA_ADDRESS	    	(0x30C00004)

// OUTPUT address
#define OUT_ADDRESS	    	(0x30B00000)

//ColdFire base address
#define FLASH_ADDRESS		(0x50000000)
#define NET_ADDRESS		    (0xe0000000)
#define IDE_ADDRESS		    (0x30000000)
#define SDRAM_ADDRESS		(0x40000000)
#define SDRAM_SIZE			(0x00080000)

#define IMM_ADDRESS			(0x10000000)
#define IMM2_ADDRESS		(0x80000000)
#define INT_SRAM0_ADDRESS   (0x00000000)
#define INT_SRAM1_ADDRESS   (0x20010000)

#define GPIO_READ       	(IMM2_ADDRESS+0x0)
#define GPIO_OUT        	(IMM2_ADDRESS+0x4)
#define GPIO1_READ      	(IMM2_ADDRESS+0xB0)
#define GPIO1_OUT       	(IMM2_ADDRESS+0xB4)


//*******************************************************************
//  Public variable data
//*******************************************************************
extern MCF5249_IMM *imm;
extern MCF5249_IMM2 *imm2;
extern uint16 *DRAMBuffer;

extern uint16 Testflags;
extern uint16 Isrflags;
extern uint16 Keyflags;
extern uint16 Keyloop;

extern uint16 MP3Play_min;
extern uint16 MP3Play_sec;

extern uint8 AVol;
extern uint8 DVol;

extern IDENTIFY_DATA IDEid;
extern IDE_BUFFER IDEBuffer;

extern uint32 buffer0;
extern uint32 buffer1;
extern uint32 buffer2;
extern uint32 buffer3;

/********************************************************************
*	Function Prototypes 
********************************************************************/
extern uint32 VECTOR_TABLE[256];
extern uint32 _SP_INIT;

extern void cpu_cache_flush(void);
extern void cpu_cache_disable(void);
extern void mcf5249_wr_cacr(uint32);
extern void mcf5249_wr_acr0(uint32);
extern void mcf5249_wr_acr1(uint32);

#endif /* _BASE_H */

⌨️ 快捷键说明

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