mirror of
https://github.com/oopuuu/zTC1.git
synced 2025-12-19 16:33:20 +08:00
修复mico-sdk错误
This commit is contained in:
@@ -1,170 +1,170 @@
|
||||
/**
|
||||
*****************************************************************************
|
||||
* @file: dma.h
|
||||
* @author Ingrid Chen
|
||||
* @version V1.0.0
|
||||
* @data 06-June-2013
|
||||
* @Brief DMA module driver header file.
|
||||
******************************************************************************
|
||||
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
|
||||
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
|
||||
* TIME. AS A RESULT, MVSILICON SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
|
||||
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
|
||||
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
|
||||
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
|
||||
*
|
||||
* <h2><center>© COPYRIGHT 2013 MVSilicon </center></h2>
|
||||
*/
|
||||
#ifndef __DMA_H__
|
||||
#define __DMA_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif//__cplusplus
|
||||
|
||||
/*
|
||||
**********************************************************
|
||||
* TYPE DEFINE
|
||||
**********************************************************
|
||||
*/
|
||||
/**
|
||||
* DMA Transfer Mode
|
||||
*/
|
||||
typedef enum _DMA_XFER_MODE
|
||||
{
|
||||
DMA_XFER_MODE_NONE,
|
||||
DMA_XFER_MODE_BASIC,
|
||||
DMA_XFER_MODE_PP,
|
||||
DMA_XFER_MODE_SHUT
|
||||
} DMA_XFER_MODE;
|
||||
|
||||
/**
|
||||
* DMA Transfer Channel
|
||||
*/
|
||||
typedef enum _DMA_XFER_CHANNEL
|
||||
{
|
||||
DMA_XFER_ALTCH0,
|
||||
DMA_XFER_PRICH0,
|
||||
DMA_XFER_PRICH1
|
||||
} DMA_XFER_CHANNEL;
|
||||
|
||||
/**
|
||||
* DMA Address increment
|
||||
*/
|
||||
typedef enum _DMA_ADDR_INC
|
||||
{
|
||||
DMA_ADDR_INC_NO,
|
||||
DMA_ADDR_INC_BYTE,
|
||||
DMA_ADDR_INC_WORD,
|
||||
DMA_ADDR_INC_DWORD
|
||||
} DMA_ADDR_INC;
|
||||
|
||||
/**
|
||||
* DMA Address Width
|
||||
*/
|
||||
typedef enum _DMA_ADDR_WIDTH
|
||||
{
|
||||
DMA_ADDR_WIDTH_BYTE,
|
||||
DMA_ADDR_WIDTH_WORD,
|
||||
DMA_ADDR_WIDTH_DWORD
|
||||
} DMA_ADDR_WIDTH;
|
||||
|
||||
/*
|
||||
**********************************************************
|
||||
* GLOBAL FUNCTION PROTOTYPE
|
||||
**********************************************************
|
||||
*/
|
||||
/**
|
||||
* @Brief ͨ<><CDA8>DMAͨ<41><CDA8>CH0<48><30>XMEM/VMEM/PMEM/SDRAM<41>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
* @Param SrcAddr
|
||||
* @Param DstAddr
|
||||
* @Param Length
|
||||
* @Return None
|
||||
* @Note@ Transfer Length is max to 65536 bytes
|
||||
*/
|
||||
void DmaMemoryCopy(uint32_t SrcAddr, uint32_t DstAddr, uint32_t Length);
|
||||
|
||||
/**
|
||||
* @Brief Get DMA Primary CH0 interrupt status
|
||||
* @Param None
|
||||
* @Return Interrupt flag
|
||||
* @Note@
|
||||
*/
|
||||
bool DmaPriCh0GetInt(void);
|
||||
|
||||
/**
|
||||
* @Brief Clear DMA Primary CH0 interrupt status
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh0IntClr(void);
|
||||
|
||||
|
||||
/**
|
||||
* @Brief Set DMA channel transfer mode
|
||||
* @Param Channel refer to DMA_XFER_CHANNEL
|
||||
* @Param Mode refer to DMA_XFER_MODE
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaSetChannelMode(uint8_t Channel, uint8_t Mode);
|
||||
|
||||
/**
|
||||
* @Brief Close DMA Primary CH0
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh0Close(void);
|
||||
|
||||
/**
|
||||
* @Brief DMA CH0 request
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaCh0SwReq(void);
|
||||
|
||||
/**
|
||||
* @Brief Get DMA Primary CH1 interrupt status
|
||||
* @Param None
|
||||
* @Return Interrupt flag
|
||||
* @Note@
|
||||
*/
|
||||
bool DmaPriCh1GetInt(void);
|
||||
|
||||
/**
|
||||
* @Brief Clear DMA Primary CH1 interrupt status
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh1IntClr(void);
|
||||
|
||||
/**
|
||||
* @Brief Close DMA Primary CH1
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh1Close(void);
|
||||
|
||||
/**
|
||||
* @Brief <09><><EFBFBD><EFBFBD>DMA<4D><41><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>
|
||||
* @Param <09><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD>
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaSetParameter(uint8_t Channel,
|
||||
uint32_t SrcAddr, DMA_ADDR_INC SrcAddrNCR, DMA_ADDR_WIDTH SrcDataWIDTH,
|
||||
uint32_t DstAddr, DMA_ADDR_INC DStAddrINCR, DMA_ADDR_WIDTH DstDataWIDTH,
|
||||
uint8_t BurstSize, uint32_t XferSize);
|
||||
|
||||
bool DmaCopyDone(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif//__cplusplus
|
||||
|
||||
#endif
|
||||
/**
|
||||
*****************************************************************************
|
||||
* @file: dma.h
|
||||
* @author Ingrid Chen
|
||||
* @version V1.0.0
|
||||
* @data 06-June-2013
|
||||
* @Brief DMA module driver header file.
|
||||
******************************************************************************
|
||||
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
|
||||
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
|
||||
* TIME. AS A RESULT, MVSILICON SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
|
||||
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
|
||||
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
|
||||
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
|
||||
*
|
||||
* <h2><center>© COPYRIGHT 2013 MVSilicon </center></h2>
|
||||
*/
|
||||
#ifndef __DMA_H__
|
||||
#define __DMA_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif//__cplusplus
|
||||
|
||||
/*
|
||||
**********************************************************
|
||||
* TYPE DEFINE
|
||||
**********************************************************
|
||||
*/
|
||||
/**
|
||||
* DMA Transfer Mode
|
||||
*/
|
||||
typedef enum _DMA_XFER_MODE
|
||||
{
|
||||
DMA_XFER_MODE_NONE,
|
||||
DMA_XFER_MODE_BASIC,
|
||||
DMA_XFER_MODE_PP,
|
||||
DMA_XFER_MODE_SHUT
|
||||
} DMA_XFER_MODE;
|
||||
|
||||
/**
|
||||
* DMA Transfer Channel
|
||||
*/
|
||||
typedef enum _DMA_XFER_CHANNEL
|
||||
{
|
||||
DMA_XFER_ALTCH0,
|
||||
DMA_XFER_PRICH0,
|
||||
DMA_XFER_PRICH1
|
||||
} DMA_XFER_CHANNEL;
|
||||
|
||||
/**
|
||||
* DMA Address increment
|
||||
*/
|
||||
typedef enum _DMA_ADDR_INC
|
||||
{
|
||||
DMA_ADDR_INC_NO,
|
||||
DMA_ADDR_INC_BYTE,
|
||||
DMA_ADDR_INC_WORD,
|
||||
DMA_ADDR_INC_DWORD
|
||||
} DMA_ADDR_INC;
|
||||
|
||||
/**
|
||||
* DMA Address Width
|
||||
*/
|
||||
typedef enum _DMA_ADDR_WIDTH
|
||||
{
|
||||
DMA_ADDR_WIDTH_BYTE,
|
||||
DMA_ADDR_WIDTH_WORD,
|
||||
DMA_ADDR_WIDTH_DWORD
|
||||
} DMA_ADDR_WIDTH;
|
||||
|
||||
/*
|
||||
**********************************************************
|
||||
* GLOBAL FUNCTION PROTOTYPE
|
||||
**********************************************************
|
||||
*/
|
||||
/**
|
||||
* @Brief ͨ<><CDA8>DMAͨ<41><CDA8>CH0<48><30>XMEM/VMEM/PMEM/SDRAM<41>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
* @Param SrcAddr
|
||||
* @Param DstAddr
|
||||
* @Param Length
|
||||
* @Return None
|
||||
* @Note@ Transfer Length is max to 65536 bytes
|
||||
*/
|
||||
void DmaMemoryCopy(uint32_t SrcAddr, uint32_t DstAddr, uint32_t Length);
|
||||
|
||||
/**
|
||||
* @Brief Get DMA Primary CH0 interrupt status
|
||||
* @Param None
|
||||
* @Return Interrupt flag
|
||||
* @Note@
|
||||
*/
|
||||
bool DmaPriCh0GetInt(void);
|
||||
|
||||
/**
|
||||
* @Brief Clear DMA Primary CH0 interrupt status
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh0IntClr(void);
|
||||
|
||||
|
||||
/**
|
||||
* @Brief Set DMA channel transfer mode
|
||||
* @Param Channel refer to DMA_XFER_CHANNEL
|
||||
* @Param Mode refer to DMA_XFER_MODE
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaSetChannelMode(uint8_t Channel, uint8_t Mode);
|
||||
|
||||
/**
|
||||
* @Brief Close DMA Primary CH0
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh0Close(void);
|
||||
|
||||
/**
|
||||
* @Brief DMA CH0 request
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaCh0SwReq(void);
|
||||
|
||||
/**
|
||||
* @Brief Get DMA Primary CH1 interrupt status
|
||||
* @Param None
|
||||
* @Return Interrupt flag
|
||||
* @Note@
|
||||
*/
|
||||
bool DmaPriCh1GetInt(void);
|
||||
|
||||
/**
|
||||
* @Brief Clear DMA Primary CH1 interrupt status
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh1IntClr(void);
|
||||
|
||||
/**
|
||||
* @Brief Close DMA Primary CH1
|
||||
* @Param None
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaPriCh1Close(void);
|
||||
|
||||
/**
|
||||
* @Brief <09><><EFBFBD><EFBFBD>DMA<4D><41><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>
|
||||
* @Param <09><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD>
|
||||
* @Return None
|
||||
* @Note@
|
||||
*/
|
||||
void DmaSetParameter(uint8_t Channel,
|
||||
uint32_t SrcAddr, DMA_ADDR_INC SrcAddrNCR, DMA_ADDR_WIDTH SrcDataWIDTH,
|
||||
uint32_t DstAddr, DMA_ADDR_INC DStAddrINCR, DMA_ADDR_WIDTH DstDataWIDTH,
|
||||
uint8_t BurstSize, uint32_t XferSize);
|
||||
|
||||
bool DmaCopyDone(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif//__cplusplus
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user