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

📄 emif.c

📁 Real-Time Digital Signal Processing Implementations, Applications, and Experiments with the TMS320C
💻 C
字号:
/******************************************************************************/
/*  EMIF.C - TMS320C55x Peripheral Support Library EMIF Support               */
/*                                                                            */
/*    This file provides support for the TMS320C55x DSP's external memory     */
/*    interface (EMIF).                                                       */
/*                                                                            */
/*  FUNCTIONS:                                                                */
/*    emif_reset() - Reset EMIF state machine                                 */
/*    emif_init()  - Initialize EMIF registers                                */
/*                                                                            */
/******************************************************************************/

#pragma CODE_SECTION(emif_reset, "DRV5510");
#pragma CODE_SECTION(emif_init, "DRV5510");

/******************************************************************************/
/* INCLUDES                                                                   */
/******************************************************************************/
#include "emif.h"

/******************************************************************************/
/* LOCAL DEFINES                                                              */
/******************************************************************************/

/******************************************************************************/
/* FILE LOCAL (STATIC) VARIABLES                                              */
/******************************************************************************/

/******************************************************************************/
/* FILE LOCAL (STATIC) PROTOTYPES                                             */
/******************************************************************************/

/******************************************************************************/
/* FUNCTIONS                                                                  */
/******************************************************************************/

/******************************************************************************/
/* EMIF_INIT -  Reset EMIF state machine. Register settings remain unchanged  */
/******************************************************************************/
void emif_reset()
{
	EMIF_GRST = 0;
}

/******************************************************************************/
/* EMIF_INIT -  Initialize EMIF registers                                     */
/*                                                                            */
/******************************************************************************/
void emif_init(unsigned int g_ctrl,
					   PEmifSpaceCtrl ce0,
					   PEmifSpaceCtrl ce1,
					   PEmifSpaceCtrl ce2,
					   PEmifSpaceCtrl ce3,
					   PEmifSdramCtrl sdram
					  )
{
	EMIF_GCTRL = g_ctrl;
	
	if (ce0)
	{
		EMIF_CE0_CTRL1 = ce0->ctrl1;
		EMIF_CE0_CTRL2 = ce0->ctrl2;
		EMIF_CE0_CTRL3 = ce0->ctrl3;
	}
	
	if (ce1)
	{
		EMIF_CE1_CTRL1 = ce1->ctrl1;
		EMIF_CE1_CTRL2 = ce1->ctrl2;
		EMIF_CE1_CTRL3 = ce1->ctrl3;
	}
	
	if (ce2)
	{
		EMIF_CE2_CTRL1 = ce2->ctrl1;
		EMIF_CE2_CTRL2 = ce2->ctrl2;
		EMIF_CE2_CTRL3 = ce2->ctrl3;
	}
	
	if (ce3)
	{
		EMIF_CE3_CTRL1 = ce3->ctrl1;
		EMIF_CE3_CTRL2 = ce3->ctrl2;
		EMIF_CE3_CTRL3 = ce3->ctrl3;
	}
	
	if (sdram)
	{
		EMIF_SDRAM_CTRL1 = sdram->ctrl1;
		EMIF_SDRAM_CTRL2 = sdram->ctrl2;
		EMIF_SDRAM_PER   = sdram->per;
		EMIF_SDRAM_CNTR  = sdram->cntr;
		EMIF_SDRAM_INIT  = sdram->init;
	}
}

⌨️ 快捷键说明

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