dma.c
来自「IARSOURCECODE是基于LPC2478嵌入式软件IAR EWARM V4」· C语言 代码 · 共 96 行
C
96 行
/*****************************************************************************
* dma.c: DMA module file for NXP LPC23xx/24xx Family Microprocessors
*
* Copyright(C) 2006, NXP Semiconductor
* All rights reserved.
*
* History
* 2006.07.20 ver 1.00 Prelimnary version, first Release
*
******************************************************************************/
#include "LPC23xx.h" /* LPC23xx/24xx definitions */
#include "type.h"
#include "irq.h"
#include "dma.h"
#include "uart.h"
volatile DWORD DMATCCount = 0;
volatile DWORD DMAErrCount = 0;
volatile DWORD num_frms;
volatile DWORD x_pos, y_pos;
volatile BOOL first_frm;
volatile DWORD DMA_SRC;
/******************************************************************************
** Function name: DMAHandler
**
** Descriptions: DMA interrupt handler
**
** parameters: None
** Returned value: None
**
******************************************************************************/
__irq __arm void DMAHandler (void)
{
DWORD regVal;
//IENABLE; /* handles nested interrupt */
regVal = LCD_INTSTAT;
if ( (regVal&0x00000002) == 0x00000002 ) //FUFMIS
{
LCD_INTCLR |= 0x00000002;
}
//LNBUIC
if ( (regVal&0x00000004) == 0x00000004 )
{
LCD_INTCLR |= 0x00000004;
}
//VCompMIS
if ( (regVal&0x00000008) == 0x00000008 )
{
LCD_INTCLR |= 0x00000008;
}
//BERRAW
if ( (regVal&0x00000010) == 0x00000010 )
{
LCD_INTCLR |= 0x00000010;
}
//IDISABLE;
VICVectAddr = 0; /* Acknowledge Interrupt */
}
/******************************************************************************
** Function name: DMA_Init
**
** Descriptions:
**
** parameters:
** Returned value:
**
******************************************************************************/
DWORD DMA_Init( DWORD DMAMode )
{
LCD_INTMSK |= (0x01 << 4)|(0x01 << 3)|(0x01 << 2)|(0x01 << 1);
if ( DMAMode == M2M )
{
}
else
{
return ( FALSE );
}
if ( install_irq( EINT2_INT, (void *)DMAHandler, HIGHEST_PRIORITY ) == FALSE )
{
return ( FALSE );
}
return (TRUE);
}
/******************************************************************************
** End Of File
******************************************************************************/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?