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

📄 cpld.h

📁 ide的低层驱动程序。一个工程(cpld+dsp)的一部分。
💻 H
字号:
/*****************************************************************************/
/*function: this header file has defined the registers' addresses and register's bit defination    */
/*              of the BF533evm broad.                                                                                   */
/*date:      2004.10.20                                                                                                       */
/*auther:   Sugar Laserman                                                                                              */
/*Version:  The first version                                                                                               */
/*Note:       													                               */
/*                                                                                                                                    */
/*Copyright  2004 - 2004 EFlag Tech.Inc, All Rights Reserved                                              */
/*                                                                                                                                    */
/*****************************************************************************/

#ifndef CPLD
#define CPLD

/************************************************************/
/*               define base addresses	                 				   	*/
/************************************************************/
#define pLight 				(volatile unsigned char *)0x20200000
#define pLed	 			(volatile unsigned char *)0x20210000
#define pCtrlReg1			(volatile unsigned char *)0x20220000
#define pCtrlReg2			(volatile unsigned char *)0x20230000
#define pIDECS0BaseAddr		(volatile unsigned short *)0x20280000
#define pIDECS1BaseAddr		(volatile unsigned short *)0x20290000
#define pTestReg			(volatile unsigned char *)0x20260000
#define pLcdBaseAddr		(volatile unsigned char *)0x20270000
#define p1582BaseAddr		(volatile unsigned char *)0x20240000
#define pNetBaseAddr		(volatile unsigned char *)0x20250000


/*IDE address**************************************************/
#define pDataPort 		(volatile unsigned short *)(0x20280000 + (0x00<<1)) //数据寄存器
#define pPreComp 		(volatile unsigned char *)(0x20280000 + (0x01<<1)) //特性寄存器(写)
#define pSectorCount	(volatile unsigned char *)(0x20280000 + (0x02<<1)) //扇区数寄存器
#define pSectorNumber	(volatile unsigned char *)(0x20280000 + (0x03<<1)) //扇区号寄存器
#define pCylinderLow	(volatile unsigned char *)(0x20280000 + (0x04<<1)) //柱面号寄存器(低字节)
#define pCylinderHigh	(volatile unsigned char *)(0x20280000 + (0x05<<1)) //柱面号寄存器(高字节)
#define pDriveHead		(volatile unsigned char *)(0x20280000 + (0x06<<1)) //驱动器/磁头寄存器
#define pCommand 		(volatile unsigned char *)(0x20280000 + (0x07<<1)) //命令寄存器(写)

#define pStatus			(volatile unsigned char *)(0x20280000 + (0x07<<1)) //状态寄存器(读)
#define pErrorReg 		(volatile unsigned char *)(0x20280000 + (0x01<<1)) //错误寄存器(读)

/************************************************************/
/*               define Register Union structure             				   	*/
/************************************************************/
typedef union Led
{
	struct LedBits
		{
		unsigned Led1 : 1;
		unsigned Led2 : 1;
		unsigned Led3 : 1;
		unsigned Led4 : 1;
		unsigned Led5 : 1;
		unsigned Led6 : 1;
		unsigned          : 2;
		}LedBits;
	
	unsigned char Value;	
}Led;

typedef union CtrlReg1
{
	struct CtrlReg1Bits
		{
		unsigned CameraOE   	: 1;
		unsigned AD7183OE  		: 1;
		unsigned nIDEDataOE     : 1;
		unsigned nIDEOE 		: 1;
		
		unsigned OV6650Reset 	: 1;
		unsigned NetReset		: 1;
		unsigned   				: 1;
		unsigned    		 	: 1;
		}CtrlReg1Bits;

	unsigned char Value;
}CtrlReg1;

typedef union CtrlReg2
{
	struct CtrlReg2Bits
		{
		unsigned AD1885Reset	: 1;
		unsigned AD7183Reset    : 1;
		unsigned AD7171Reset    : 1;
		unsigned n1582Reset     : 1;
		
		unsigned OV6650PWDN     : 1;
		unsigned               	: 1;
		unsigned               	: 1;
		unsigned               	: 1;
		}CtrlReg2Bits;

	unsigned char Value;
}CtrlReg2;

typedef union Test
{
	struct TestBits
		{
		unsigned CPLD93 : 1;
		unsigned CPLD94 : 1;
		unsigned CPLD96 : 1;
		unsigned CPLD97 : 1;
		unsigned CPLD98 : 1;
		unsigned CPLD99 : 1;
		unsigned CPLD100 : 1;
		unsigned         : 1;
		}TestBits;

	unsigned char Value;
}Test;

#else

#endif













⌨️ 快捷键说明

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