?? vic_control.h
字號:
/****************************************Copyright (c)**************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
**
** http://www.embedtools.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name: VIC_Control.h
** Last modified Date: 2007-07-09
** Last Version: 1.00
** Descriptions: VIC_Control 軟中斷函數接口
**------------------------------------------------------------------------------------------------------
** Created by: LinEnqiang
** Created date: 2007-07-06
** Version: 1.00
** Descriptions: The original version
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
********************************************************************************************************/
#ifndef _VIC_CONTROL_H_
#define _VIC_CONTROL_H_
#ifdef __cplusplus
extern "C" {
#endif
//----------------------IRQ配置信息結構體定義------------------//
typedef struct{
uint32 Channel;
uint32 PRI;
uint32 ISRFunction;
uint8 State;
}VIC_Config,*pVIC_Config;
//------------------------------------------------------------//
/*********************************************************************************************************
** Function name: SetVICIRQ
** Descriptions: 設置所選外設的中斷優先級、中斷服務函數地址,并使能中斷
** input parameters: channel :外設對應的中斷通道號
** PRI :中斷優先級
** ISRFuction :中斷服務函數地址
** Returned value: 成功 :返回 1
** 失敗 :返回 0
*********************************************************************************************************/
__inline uint32 SetVICIRQ(uint32 channel,uint32 PRI,uint32 ISRFuction)
{
return(OsSwiHandle1(0x100,channel,PRI,ISRFuction));
}
/*********************************************************************************************************
** Function name: FreeVICIRQ
** Descriptions: 釋放所選外設的IRQ資源
** input parameters: channel :外設對應的中斷通道號
** Returned value: 成功 :返回 1
** 失敗 :返回 0
*********************************************************************************************************/
__inline uint32 FreeVICIRQ(uint32 channel)
{
return(OsSwiHandle1(0x101,channel));
}
/*********************************************************************************************************
** Function name: ReEnableVICIRQ
** Descriptions: 重新使能相應外設的中斷
** input parameters: channel :外設對應的中斷通道號
** Returned value: 成功 :返回 1
** 失敗 :返回 0
*********************************************************************************************************/
__inline uint32 ReEnableVICIRQ(uint32 channel)
{
return(OsSwiHandle1(0x102,channel));
}
/*********************************************************************************************************
** Function name: DisableVICIRQ
** Descriptions: 禁止相應外設的中斷
** input parameters: channel :外設對應的中斷通道號
** Returned value: 成功 :返回 1
** 失敗 :返回 0
*********************************************************************************************************/
__inline uint32 DisableVICIRQ(uint32 channel)
{
return(OsSwiHandle1(0x103,channel));
}
/*********************************************************************************************************
** Function name: GetVICIRQState
** Descriptions: 獲取所選外設的中斷通道號、優先級、中斷服務函數地址及中斷使能狀態
** input parameters: channel :外設對應的中斷通道號
** pISRConfig :IRQ配置信息結構體指針
** Returned value: 成功 :返回 1
** 失敗 :返回 0
*********************************************************************************************************/
__inline uint32 GetVICIRQState(uint32 channel,pVIC_Config pISRConfig)
{
return(OsSwiHandle1(0x104,channel,pISRConfig));
}
/*********************************************************************************************************
** Function name: SetVICFIQ
** Descriptions: 設置并使能所選中斷通道號為FIQ中斷
** input parameters: channel :外設對應的中斷通道號
** Returned value: 成功 :返回 1
** 失敗 :返回 0
*********************************************************************************************************/
__inline uint32 SetVICFIQ(uint32 channel)
{
return(OsSwiHandle1(0x105,channel));
}
/*********************************************************************************************************
** Function name: FreeVICFIQ
** Descriptions: 釋放所選中斷通道號的FIQ中斷
** input parameters: channel :外設對應的中斷通道號
** Returned value: 成功 :返回 1
** 失敗 :返回 0
*********************************************************************************************************/
__inline uint32 FreeVICFIQ(uint32 channel)
{
return(OsSwiHandle1(0x106,channel));
}
//----------------------允許中斷嵌套宏定義------------------//
#define OS_ENABLE_NESTING OS_EXIT_CRITICAL
#define OS_DISABLE_NESTING OS_ENTER_CRITICAL
//---------------------------------------------------------//
#ifdef __cplusplus
}
#endif
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -