亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? csl_timer.h

?? 奇想達(dá)QXD-DM642開發(fā)板提供的讀寫rtc實(shí)時(shí)時(shí)鐘源碼。
?? H
字號(hào):
/******************************************************************************\
*           Copyright (C) 1999-2000 Texas Instruments Incorporated.
*                           All Rights Reserved
*------------------------------------------------------------------------------
* FILENAME...... csl_timer.h
* DATE CREATED.. 06/20/1999 
* LAST MODIFIED. 07/24/2004   Re-introduced BIOS dependency due to compatibilty issues
*                02/09/2004   Removed bios related items 
*                10/03/2000
\******************************************************************************/
#ifndef _CSL_TIMER_H_
#define _CSL_TIMER_H_

#include <csl_chip.h> 
#include <csl_irq.h>
#include <csl_timerhal.h>


#if (TIMER_SUPPORT)
/******************************************************************************\
* scope and inline control macros
\******************************************************************************/
#ifdef __cplusplus
#define CSLAPI extern "C" far 
#else
#define CSLAPI extern far
#endif

#undef  USEDEFS
#undef  IDECL
#undef  IDEF

#ifdef  _TIMER_MOD_
  #define IDECL CSLAPI
  #define USEDEFS
  #define IDEF
#else
  #ifdef  _INLINE
    #define IDECL static inline
    #define USEDEFS
    #define IDEF  static inline
  #else
    #define IDECL CSLAPI
  #endif
#endif


/******************************************************************************\
* global macro declarations
\******************************************************************************/

/* TIMER_open() flags */
#define TIMER_OPEN_RESET     (0x00000001)

/* device identifiers for TIMER_open() */
#define TIMER_DEVANY  (-1)
#define TIMER_DEV0    (0)
#define TIMER_DEV1    (1)
#if (TIMER_DEVICE_CNT > 2)
  #define TIMER_DEV2    (2)
#endif


/******************************************************************************\
* global typedef declarations
\******************************************************************************/

/* handle structure */
typedef struct {
  Uint32 allocated;
  Uint32 eventId;
  volatile Uint32 *baseAddr;
} TIMER_Obj, *TIMER_Handle;

/* device configuration structure */
typedef struct {
  Uint32 ctl;
  Uint32 prd;
  Uint32 cnt;
} TIMER_Config;


/******************************************************************************\
* global variable declarations
\******************************************************************************/

/* predefined deviced handles for legacy - should not be used */
extern far TIMER_Handle _TIMER_hDev0;
extern far TIMER_Handle _TIMER_hDev1;
extern far TIMER_Handle _TIMER_hBios;


/******************************************************************************\
* global function declarations
\******************************************************************************/
CSLAPI TIMER_Handle TIMER_getBiosHandle(); 

CSLAPI void TIMER_reset(TIMER_Handle hTimer);
CSLAPI void TIMER_resetAll();

CSLAPI TIMER_Handle TIMER_open(int devNum, Uint32 flags);
CSLAPI void TIMER_close(TIMER_Handle hTimer);


/******************************************************************************\
* inline function declarations
\******************************************************************************/
IDECL Uint32 TIMER_getEventId(TIMER_Handle hTimer);

IDECL void TIMER_start(TIMER_Handle hTimer);
IDECL void TIMER_pause(TIMER_Handle hTimer);
IDECL void TIMER_resume(TIMER_Handle hTimer);

IDECL Uint32 TIMER_getPeriod(TIMER_Handle hTimer);
IDECL void   TIMER_setPeriod(TIMER_Handle hTimer, Uint32 period);
IDECL Uint32 TIMER_getCount(TIMER_Handle hTimer);
IDECL void   TIMER_setCount(TIMER_Handle hTimer, Uint32 count);

IDECL int  TIMER_getDatIn(TIMER_Handle hTimer);
IDECL void TIMER_setDatOut(TIMER_Handle hTimer, int Val);
IDECL int  TIMER_getTstat(TIMER_Handle hTimer);

IDECL void TIMER_config(TIMER_Handle hTimer, TIMER_Config *config);
IDECL void TIMER_configArgs(TIMER_Handle hTimer, Uint32 ctl, Uint32 prd, 
  Uint32 cnt);
IDECL void TIMER_getConfig(TIMER_Handle hTimer, TIMER_Config *config);


/******************************************************************************\
* inline function definitions
\******************************************************************************/
#ifdef USEDEFS
/*----------------------------------------------------------------------------*/
IDEF Uint32 TIMER_getEventId(TIMER_Handle hTimer) {
  return hTimer->eventId;
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_start(TIMER_Handle hTimer) {
  TIMER_FSETH(hTimer,CTL,HLD,1);
  TIMER_FSETH(hTimer,CTL,GO,1);
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_pause(TIMER_Handle hTimer) {
  TIMER_FSETH(hTimer,CTL,HLD,0);
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_resume(TIMER_Handle hTimer) {
  TIMER_FSETH(hTimer,CTL,HLD,1);
}
/*----------------------------------------------------------------------------*/
IDEF int  TIMER_getDatIn(TIMER_Handle hTimer) {
  return TIMER_FGETH(hTimer,CTL,DATIN);
}  
/*----------------------------------------------------------------------------*/
IDEF void TIMER_setDatOut(TIMER_Handle hTimer, int val) {
  TIMER_FSETH(hTimer,CTL,DATOUT,val);
}
/*----------------------------------------------------------------------------*/
IDEF int  TIMER_getTstat(TIMER_Handle hTimer) {
  return TIMER_FGETH(hTimer,CTL,TSTAT);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 TIMER_getPeriod(TIMER_Handle hTimer) {
  return TIMER_RGETH(hTimer,PRD);
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_setPeriod(TIMER_Handle hTimer, Uint32 period) {
  TIMER_RSETH(hTimer,PRD,period);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 TIMER_getCount(TIMER_Handle hTimer) {
  return TIMER_RGETH(hTimer,CNT);
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_setCount(TIMER_Handle hTimer, Uint32 count) {
  TIMER_RSETH(hTimer,CNT,count);
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_config(TIMER_Handle hTimer, TIMER_Config *config) {

  Uint32 gie;
  volatile Uint32 *base = (volatile Uint32 *)(hTimer->baseAddr);
  register int x0,x1,x2;

  gie = IRQ_globalDisable();

  x0 = config->ctl;
  x1 = config->prd;
  x2 = config->cnt;

  base[_TIMER_CTL_OFFSET] = 0x00000000;
  base[_TIMER_PRD_OFFSET] = x1;
  base[_TIMER_CNT_OFFSET] = x2;
  base[_TIMER_CTL_OFFSET] = x0;

  IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_configArgs(TIMER_Handle hTimer, Uint32 ctl, Uint32 prd,
  Uint32 cnt){

  Uint32 gie;
  volatile Uint32 *base = (volatile Uint32 *)(hTimer->baseAddr);

  gie = IRQ_globalDisable();

  base[_TIMER_CTL_OFFSET] = 0x00000000;
  base[_TIMER_PRD_OFFSET] = prd;
  base[_TIMER_CNT_OFFSET] = cnt;
  base[_TIMER_CTL_OFFSET] = ctl;

  IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
IDEF void TIMER_getConfig(TIMER_Handle hTimer, TIMER_Config *config) {

  Uint32 gie;
  volatile Uint32 *base = (volatile Uint32 *)(hTimer->baseAddr);
  volatile TIMER_Config* cfg = (volatile TIMER_Config*)config;
  register int x0,x1,x2;

  gie = IRQ_globalDisable();

  x0 = base[_TIMER_CTL_OFFSET];
  x1 = base[_TIMER_PRD_OFFSET];
  x2 = base[_TIMER_CNT_OFFSET];

  cfg->ctl = x0;
  cfg->prd = x1;
  cfg->cnt = x2;

  IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
#endif /* USEDEFS */


#endif /* TIMER_SUPPORT */
#endif /* _CSL_TIMER_H_ */
/******************************************************************************\
* End of csl_timer.h
\******************************************************************************/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久色中文字幕| 欧美伊人久久久久久午夜久久久久| 国产视频一区不卡| 欧美日韩精品免费观看视频| 国产乱色国产精品免费视频| 亚洲在线免费播放| 国产精品人妖ts系列视频| 欧美亚洲动漫精品| 91农村精品一区二区在线| 9191久久久久久久久久久| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 免费的成人av| 久久av中文字幕片| 久久狠狠亚洲综合| 亚洲国产高清不卡| 欧美三级韩国三级日本一级| 91首页免费视频| 91麻豆国产在线观看| 成人精品一区二区三区四区| 蜜臀av一区二区在线免费观看 | 国产精品久久久久精k8 | 国产午夜精品福利| 久久久影视传媒| 国产精品无码永久免费888| 久久久久国产精品麻豆ai换脸| 亚洲综合色噜噜狠狠| 亚洲国产成人午夜在线一区| 亚洲人妖av一区二区| 亚洲精品国久久99热| 亚洲电影一区二区三区| 乱一区二区av| 大胆欧美人体老妇| 欧美性极品少妇| 久久综合久久综合亚洲| 中文字幕一区二区日韩精品绯色| 亚洲另类春色国产| 麻豆精品新av中文字幕| 不卡电影免费在线播放一区| 欧洲视频一区二区| 久久亚洲捆绑美女| 亚洲美女屁股眼交3| 免费在线观看日韩欧美| 成人深夜视频在线观看| 欧美日本国产视频| 国产精品麻豆一区二区| 日精品一区二区| 成人毛片在线观看| 日韩久久精品一区| 亚洲综合激情另类小说区| 久久se这里有精品| 欧美日韩国产乱码电影| 亚洲欧洲成人精品av97| 国产一区二区三区四区五区入口| 日本高清免费不卡视频| 久久免费看少妇高潮| 日韩av在线播放中文字幕| 色综合久久久久久久久久久| 久久久久青草大香线综合精品| 免费在线观看日韩欧美| 欧美日本韩国一区二区三区视频 | 欧美一三区三区四区免费在线看| 亚洲天堂2014| 国内精品久久久久影院一蜜桃| 国产不卡免费视频| 欧美日本国产视频| 亚洲电影第三页| 欧美色图免费看| 亚洲一区二区精品久久av| 99精品欧美一区二区三区小说| 久久精品欧美一区二区三区麻豆| 日本不卡免费在线视频| 欧美三级韩国三级日本三斤 | 亚洲精品视频自拍| 91美女在线视频| 亚洲午夜免费电影| 欧美日韩国产另类不卡| 奇米色777欧美一区二区| 欧美大片一区二区| 看电视剧不卡顿的网站| 精品人在线二区三区| 国产99久久精品| 国产欧美一区二区精品性色超碰 | 成人免费看黄yyy456| 一区二区三区四区精品在线视频| 欧美精选午夜久久久乱码6080| 日韩中文字幕91| 国产亚洲美州欧州综合国| 91麻豆国产自产在线观看| 日本午夜一本久久久综合| 久久久久久久久久看片| 91丝袜美腿高跟国产极品老师 | 欧美一二三区在线观看| 99久久99久久久精品齐齐| 免费观看久久久4p| 亚洲女与黑人做爰| 精品粉嫩aⅴ一区二区三区四区 | 91啪亚洲精品| 精品国精品自拍自在线| 91视频你懂的| 国产一区二区久久| 亚洲高清免费观看| 中文字幕亚洲一区二区va在线| 91精品国产日韩91久久久久久| av在线播放不卡| 国产成人久久精品77777最新版本| 亚洲三级在线免费| 日本一区二区三区在线不卡| 日韩美一区二区三区| 色综合久久久久久久久久久| 国产伦精一区二区三区| 五月天婷婷综合| 亚洲国产精品自拍| 亚洲一区二区视频在线| 国产日产欧美精品一区二区三区| 日韩一区二区中文字幕| 欧美疯狂性受xxxxx喷水图片| 日本韩国欧美一区| 欧美日韩国产免费一区二区| 国产91在线|亚洲| 国产精品亚洲第一区在线暖暖韩国| 偷拍自拍另类欧美| 午夜精品久久久久久久99水蜜桃| 国产精品嫩草99a| 欧美激情一区二区三区不卡 | 欧美日韩午夜精品| 91精品一区二区三区久久久久久| 日本高清不卡视频| 欧美午夜精品免费| 欧美一区二区日韩| 精品少妇一区二区三区视频免付费 | 美国av一区二区| 视频一区国产视频| 麻豆成人免费电影| 国产精品一区久久久久| 99热99精品| 99久久精品免费| 欧美亚男人的天堂| 欧美一区二区国产| 日本一区二区三区高清不卡| 国产精品久久久久aaaa| 亚洲综合丁香婷婷六月香| 午夜一区二区三区视频| 韩国av一区二区三区在线观看| 99在线精品免费| 正在播放亚洲一区| 国产精品国产三级国产普通话蜜臀| 国产精品美女www爽爽爽| 亚洲一卡二卡三卡四卡| 韩国精品一区二区| 欧美色大人视频| 中文字幕中文字幕一区| 免费观看一级欧美片| 91成人网在线| 国产精品高清亚洲| 国产毛片精品视频| 91精品国产色综合久久| 亚洲综合图片区| 一道本成人在线| 中文字幕不卡一区| 国产一区二区成人久久免费影院| 欧美三级资源在线| 亚洲精品日韩综合观看成人91| 国产精品88888| 国产喂奶挤奶一区二区三区| 无吗不卡中文字幕| 色综合久久久久综合体| 中文字幕一区二区三区蜜月| 色综合久久99| 亚洲黄网站在线观看| 国产成人av一区| 国产精品视频你懂的| 国产成人精品免费在线| 久久精品一级爱片| 国产综合色在线视频区| 久久精品一级爱片| 成人在线视频一区| 日本一区二区成人| 成人小视频免费在线观看| 久久久久久亚洲综合| 国产成人精品三级| 日韩伦理免费电影| 欧美日韩美少妇| 国精产品一区一区三区mba视频| 国产片一区二区| 欧美中文字幕一二三区视频| 亚洲午夜久久久| 久久综合色婷婷| 色老头久久综合| 天堂av在线一区| 国产免费观看久久| 欧美日韩精品是欧美日韩精品| 美女看a上一区| 亚洲乱码国产乱码精品精可以看| 欧美日韩国产色站一区二区三区| 免费精品视频在线| 亚洲人成伊人成综合网小说| 欧美一级夜夜爽| 91视频在线观看| 成人美女视频在线看| 蜜臀av性久久久久蜜臀aⅴ四虎|