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

📄 dma.h

📁 DSP 5409 plc应用程序,调试通过,是用在电力线通讯上的演示程序.
💻 H
字号:
//==========================================================================================
// Filename:		dma.h
//
// Description:		Generic template which includes headers in proper format.
//
// Copyright (C) 2000 - 2001 Texas Instruments Incorporated
// Texas Instruments Proprietary Information
// Use subject to terms and conditions of TI Software License Agreement
//
// Revision History:
//==========================================================================================

#ifndef dma_h						// Header file guard
#define dma_h


//==========================================================================================
// System #include files <filename.h>
// Application #includes "filename.h"
//==========================================================================================


//==========================================================================================
// #Defined Compile-Time Flags
//==========================================================================================

//==========================================================================================
// #Defined Constant Definitions
//==========================================================================================


//==========================================================================================
// Macro Definitions
//==========================================================================================


//==========================================================================================
// External Functions
//==========================================================================================


//==========================================================================================
// External Variables
//==========================================================================================


//==========================================================================================
// Constants
//==========================================================================================
// --------- DMA Channel Numbers ----------
	#define	DMA_CHANNEL0	0
	#define	DMA_CHANNEL1	1
	#define	DMA_CHANNEL2	2
	#define	DMA_CHANNEL3	3
	#define	DMA_CHANNEL4	4
	#define	DMA_CHANNEL5	5

#if (PROCESSOR == 5410) 
// -------- DMA Synchronization Modes ----------
	#define	DMASYNC_NOSYNC	0x0		// No Sync Event (nonsynchronized operation)
	#define DMASYNC_REVT0	0x1		// MCBSP 0 Receive  Event (REVT0)
	#define DMASYNC_XEVT0	0x2		// MCBSP 0 Transmit Event (XEVT0)
	#define DMASYNC_REVT2	0x3		// MCBSP 2 Receive  Event (REVT2)
	#define DMASYNC_XEVT2	0x4		// MCBSP 2 Transmit Event (XEVT2)
	#define DMASYNC_REVT1	0x5		// MCBSP 1 Receive  Event (REVT1)
	#define DMASYNC_XEVT1	0x6		// MCBSP 1 Transmit Event (XEVT1)
	#define DMASYNC_REVTA0	0x7		// MCBSP 0 Receive Event  - ABIS Mode (REVTA0)
	#define DMASYNC_XEVTA0	0x8		// MCBSP 0 Transmit Event - ABIS Mode (XEVTA0)
	#define DMASYNC_REVTA2	0x9		// MCBSP 2 Receive Event  - ABIS Mode (REVTA2)
	#define DMASYNC_XEVTA2	0xA		// MCBSP 2 Transmit Event - ABIS Mode (XEVTA2)
	#define DMASYNC_REVTA1	0xB		// MCBSP 1 Receive Event  - ABIS Mode (REVTA1)
	#define DMASYNC_XEVTA1	0xC		// MCBSP 1 Transmit Event - ABIS Mode (XEVTA1)
	#define DMASYNC_TINT	0xD		// Timer Interrupt Event
	#define DMASYNC_XINT3	0xE		// External Interrupt 3 (INT3) Event
	#define DMASYNC_RSVD	0xF		// Reserved

#elif ((PROCESSOR == 5402) || (PROCESSOR == 5472))
// -------- DMA Synchronization Modes ----------
	#define	DMASYNC_NOSYNC	0x0		// No Sync Event (nonsynchronized operation)
	#define DMASYNC_REVT0	0x1		// MCBSP 0 Receive  Event (REVT0)
	#define DMASYNC_XEVT0	0x2		// MCBSP 0 Transmit Event (XEVT0)
	#define DMASYNC_REVT1	0x5		// MCBSP 1 Receive  Event (REVT1)
	#define DMASYNC_XEVT1	0x6		// MCBSP 1 Transmit Event (XEVT1)
	#define DMASYNC_TINT0	0xD		// Timer 0 Interrupt Event
	#define DMASYNC_XINT3	0xE		// External Interrupt 3 (INT3) Event
	#define DMASYNC_TINT1	0xF		// Timer 1 Interrupt Event
#endif

	#define RUN 	1
	#define STOP 	0
	#define HI 		1
	#define LO		0
	#define EN 		1
	#define DIS		0
// ---------- DMA Interrupt Multiplexer Control Bits ----------
// These bits select how the DMA interrupts will be assigned in the interrupt vector table
// and IMR/IMF registers.
// Note that SINT7/TINT1/DMACH1 is available on the 5402 but not 5472(Orion).
	#define INTOSEL0	0	// SINT7= Timer 1 Int,  SINT10= MCBSP 1 RINT, SINT11= MCBSP 1 XINT
	#define INTOSEL1	1	// SINT7= Timer 1 Int,  SINT10= DMA Ch 2 Int, SINT11= DMA Ch 3 Int
	#define INTOSEL2	2	// SINT7= DMA Ch 1 Int, SINT10= DMA Ch 2 Int, SINT11= DMA Ch 3 Int
  //#define INTOSEL3	3   // -- Reserved: Do not use --	


//==========================================================================================
// Structures
//==========================================================================================

//==========================================================================================
// Forward Declarations
//==========================================================================================


//==========================================================================================
// Function Prototypes
//==========================================================================================
void DMA_reset(void);

void DMA_init(  unsigned int channel, 
                unsigned int source,
                unsigned int destination,
                unsigned int count, 
                unsigned int frame_sync, 
                unsigned int control_mode);



//==========================================================================================
#endif									// End of header guard: #ifndef dma_h


⌨️ 快捷键说明

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