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

📄 intc.h

📁 嵌入式系统
💻 H
字号:
/*-----------------------------------------------------------------------------
@@
@@ (Summary)    : LH7953x series Interrupt Controller (INTC) Device Driver Header File
@@
@@ (Comment)    : INTC Header File
@@
@@ (Author)     : 
@@
@@ (History)    : 
@@
@@ (RCS ID) :
@@
-----------------------------------------------------------------------------*/
#ifndef INTC_H
#define INTC_H

/*+include files**************************************************************/
/*                                                                           */
/*                                                                           */
/***************************************************************************-*/
#include "type_def.h"
#include "dev_def.h"
#include "intc_sys_def.h"
#include "intc_def.h"

/*+Public Macro definitions***************************************************/
/*                                                                           */
/*                                                                           */
/***************************************************************************-*/

/*+Public Type definitions****************************************************/
/*                                                                           */
/*                                                                           */
/***************************************************************************-*/

/* Interrupt Sources */

#define APD_INTC_TIMER0     0x00000001
#define APD_INTC_TIMER1     0x00000002
#define APD_INTC_TIMER2     0x00000004
#define APD_INTC_TIMER3     0x00000008
#define APD_INTC_UART0      0x00000010
#define APD_INTC_UART1      0x00000020
#define APD_INTC_DMA0       0x00000040
#define APD_INTC_DMA1       0x00000080
#define APD_INTC_PLL        0x00000100
#define APD_INTC_WDT        0x00000200
#define APD_INTC_RTCALM     0x00000400
#define APD_INTC_RTCIRQF    0x00000800
#define APD_INTC_PWM0       0x00001000
#define APD_INTC_PWM1       0x00002000
#define APD_INTC_PWM2       0x00004000
#define APD_INTC_PWM3       0x00008000
#define APD_INTC_SSP        0x00010000
#define APD_INTC_NOT_DEF    0x00020000
#define APD_INTC_LCDC       0x00040000
#define APD_INTC_NOT_DEF1   0x00080000
#define APD_INTC_INT0       0x00100000
#define APD_INTC_INT1       0x00200000
#define APD_INTC_INT2       0x00400000
#define APD_INTC_INT3       0x00800000
#define APD_INTC_INT4       0x01000000
#define APD_INTC_INT5       0x02000000
#define APD_INTC_INT6       0x04000000
#define APD_INTC_INT7       0x08000000
#define APD_INTC_ALL        0x0FFFFFFF

#ifdef INTC_C
/*------------------------ Local context - START ----------------------------*/

/*+include files**************************************************************/
/*                                                                           */
/*                                                                           */
/*****************************************************************************/

#define VISIBLE             /* Mark as LOCAL context */

/*+Local Type definitions*****************************************************/
/*                                                                           */
/*                                                                           */
/*****************************************************************************/

/*+Local Macro definitions****************************************************/
/*                                                                           */
/*                                                                           */
/*****************************************************************************/

/*+Local function prototypes**************************************************/
/*                                                                           */
/*  Name                           Type      Abstract                        */
/*  --------                       -------   ------------                     */
/*                                                                           */
/*****************************************************************************/

/*+Local data declarations****************************************************/
/*                                                                           */
/*  Name                            Description                              */
/*  ---------                       ----------------                         */
/*****************************************************************************/

/*------------------------- Local context - END -----------------------------*/

#else
#define VISIBLE extern      /* Mark as GLOBAL context */
#endif

/*----------------------- Global context - START ----------------------------*/

/*+Public data declarations***************************************************/
/*                                                                           */
/*  Name                            Description                              */
/*  --------                        ----------------                         */
/*****************************************************************************/

/*+Public function prototypes*************************************************/
/*                                                                           */
/* Name                             Type        Abstract                     */
/* --------                         -------     ------------                 */
/*                                                                           */
/*****************************************************************************/

VISIBLE APD_BOOLEAN apd_INTCChkIRQEnable(APD_ULONG interrupt_src);
VISIBLE APD_BOOLEAN apd_INTCChkIRQStatus(APD_ULONG interrupt_src);

VISIBLE APD_BOOLEAN apd_INTCChkFIQEnable(APD_ULONG interrupt_src);
VISIBLE APD_BOOLEAN apd_INTCChkFIQStatus(APD_ULONG interrupt_src);

VISIBLE APD_VOID apd_INTCClrIntr(APD_ULONG interrupt_src);
VISIBLE APD_ULONG apd_INTCReadIRQEnable(APD_VOID);
VISIBLE APD_ULONG apd_INTCReadFIQEnable(APD_VOID);
//VISIBLE APD_VOID apd_INTCEnableIRQ(APD_ULONG interrupt_src);
//VISIBLE void apd_INTCDisableIRQ(unsigned long interrupt_src);
VISIBLE APD_VOID apd_INTCEnableFIQ(APD_ULONG interrupt_src);
VISIBLE APD_VOID apd_INTCDisableFIQ(APD_ULONG interrupt_src);
VISIBLE APD_ULONG apd_INTCReadIRQStatus(APD_VOID);
VISIBLE APD_ULONG apd_INTCReadFIQStatus(APD_VOID);
VISIBLE APD_ULONG apd_INTCReadIRQRawStatus(APD_VOID);
VISIBLE APD_ULONG apd_INTCReadFIQRawStatus(APD_VOID);
VISIBLE APD_VOID apd_INTCConfigure(APD_VOID);


/*-------------------------- Global context - END --------------------------*/

#undef VISIBLE
#endif

⌨️ 快捷键说明

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