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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? csl_vcp.h

?? dm642 串口初始化以及測試的程序
?? H
字號:
/******************************************************************************\
*           Copyright (C) 2000 Texas Instruments Incorporated.
*                           All Rights Reserved
*------------------------------------------------------------------------------
* FILENAME...... csl_vcp.h
* DATE CREATED.. 04/09/2001 
* LAST MODIFIED. 05/30/2001 
*
\******************************************************************************/
#ifndef _CSL_VCP_H_
#define _CSL_VCP_H_

#include <csl_chip.h>   
#include <csl_stdinc.h>
#include <csl_irq.h>
#include "csl_vcphal.h"

#if (VCP_SUPPORT)
/****************************************\
* VCP 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  _VCP_MOD_
  #define IDECL extern far
  #define USEDEFS
  #define IDEF
#else
  #ifdef  _INLINE
    #define IDECL static inline
    #define USEDEFS
    #define IDEF  static inline
  #else
    #define IDECL extern far
  #endif
#endif

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

/****************************************\
* VCP global typedef declarations
\****************************************/
typedef Uint32 VCP_Standard;
typedef Uint32 VCP_Mode;
typedef Uint32 VCP_Map;
typedef Uint32 VCP_Rate;
typedef Uint8  VCP_UserData;
typedef Uint8  VCP_ExtrinsicData;

typedef struct {
   Uint32 ic0;
   Uint32 ic1;
   Uint32 ic2;
   Uint32 ic3;
   Uint32 ic4;
   Uint32 ic5;
} VCP_ConfigIc;

typedef struct {
   VCP_Rate     rate;
   Uint8        constLen;
   Uint8        poly0;
   Uint8        poly1;
   Uint8        poly2;
   Uint8        poly3;
   Uint16       yamTh;
   Uint16       frameLen;
   Uint16       relLen;
   Uint16       convDist;
   Uint16       maxSm;
   Uint16       minSm;
   Uint8        stateNum;
   Uint8        bmBuffLen;
   Uint8        decBuffLen;
   Uint8        traceBack;
   Uint8        readFlag;
   Uint8        decision;
   Uint16       numBranchMetrics;
   Uint16       numDecisions;
   Uint16       numBmFrames;
   Uint16       numDecFrames;
} VCP_Params;
typedef struct {
   VCP_Rate     rate;
   Uint8        constLen;
   Uint16       frameLen;
   Uint16       yamTh;
   Uint8        stateNum;
   Uint8        decision;
   Uint8        readFlag;
} VCP_BaseParams;

/****************************************\
* VCP global ants declarations
\****************************************/
#define VCP_RATE_1_2              2
#define VCP_RATE_1_3              3
#define VCP_RATE_1_4              4
#define VCP_DECISION_HARD         0
#define VCP_DECISION_SOFT         1
#define VCP_TRACEBACK_NONE        0
#define VCP_TRACEBACK_TAILED      1
#define VCP_TRACEBACK_CONVERGENT  2
#define VCP_TRACEBACK_MIXED       3
#define VCP_END_PACKED32          0
#define VCP_END_NATIVE            1
#define VCP_NUM_IC                6
#define VCP_NUM_OP                2

/****************************************\
* VCP global function declarations
\****************************************/
/* Set all icx registers :                                                    */ 
/* Establish all IC register values in the configIc struct based on the       */
/* parameters defined in configParms.                                         */
CSLAPI void VCP_genIc(VCP_Params *restrict configParms,
                      VCP_ConfigIc *restrict configIc);

/* Fill out the necessary TCP parameters.                                     */
CSLAPI void VCP_genParams(VCP_BaseParams *configBase,
                      VCP_Params *configParms);


/****************************************\
* VCP inline function declarations
\****************************************/

/* Master transfer functions */
IDECL void   VCP_start();
IDECL void   VCP_pause();
IDECL void   VCP_unpause();
IDECL void   VCP_stop();
IDECL void   VCP_reset();

IDECL Uint32 VCP_getMinSm();
IDECL Uint32 VCP_getMaxSm();
IDECL Uint32 VCP_getYamBit();
IDECL Uint32 VCP_getIndexState();

IDECL Uint32 VCP_statPause();
IDECL Uint32 VCP_statRun();
IDECL Uint32 VCP_statError();
IDECL Uint32 VCP_statWaitIc();
IDECL Uint32 VCP_statInFifo();
IDECL Uint32 VCP_statOutFifo();

IDECL Uint32 VCP_statSymProc();
IDECL Uint32 VCP_getNumOutFifo();
IDECL Uint32 VCP_getNumInFifo();

IDECL Uint32 VCP_errTest();

IDECL Uint32 VCP_getBmEndian();
IDECL Uint32 VCP_getSdEndian();

IDECL void   VCP_setNativeEndian();
IDECL void   VCP_setPacked32Endian();
IDECL void   VCP_setBmEndian(Uint32 bmEnd);
IDECL void   VCP_setSdEndian(Uint32 sdEnd);

IDECL void VCP_icConfig(VCP_ConfigIc *config);
IDECL void VCP_icConfigArgs(Uint32 ic0, Uint32 ic1, Uint32 ic2,  Uint32 ic3,
                            Uint32 ic4, Uint32 ic5);
IDECL void VCP_getIcConfig(VCP_ConfigIc *config);

/* Ceiling functions */
IDECL Uint32 VCP_ceil(Uint32 a, Uint32 b);

IDECL Uint32 VCP_normalCeil(Uint32 a, Uint32 b);

/****************************************\
* VCP inline function definitions
\****************************************/
#ifdef USEDEFS
/*----------------------------------------------------------------------------*/
IDEF void VCP_start(){
   VCP_FSET(EXE,COMMAND,1) ;  
}
/*----------------------------------------------------------------------------*/
IDEF void VCP_pause(){
  VCP_FSET(EXE,COMMAND,2);
}
/*----------------------------------------------------------------------------*/
IDEF void VCP_unpause(){
  VCP_FSET(EXE,COMMAND,4);
}
/*----------------------------------------------------------------------------*/
IDEF void VCP_stop(){
   VCP_FSET(EXE,COMMAND,5) ;  
}
/*----------------------------------------------------------------------------*/
IDEF void VCP_reset(){
  VCP_RSET(IC0,VCP_IC0_DEFAULT);
  VCP_RSET(IC1,VCP_IC1_DEFAULT);
  VCP_RSET(IC2,VCP_IC2_DEFAULT);
  VCP_RSET(IC3,VCP_IC3_DEFAULT);
  VCP_RSET(IC4,VCP_IC4_DEFAULT);
  VCP_RSET(IC5,VCP_IC5_DEFAULT);
  VCP_RSET(EXE,VCP_EXE_DEFAULT);
  VCP_RSET(END,VCP_END_DEFAULT);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getMinSm(){
  return VCP_FGET(OUT0,FMINS);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getMaxSm(){
  return VCP_FGET(OUT0,FMAXS);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getYamBit(){
  return VCP_FGET(OUT1,YAM);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getIndexState(){
  return VCP_FGET(OUT1,FMAXI);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_statPause(){
  return VCP_FGET(STAT0,PAUS);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_statRun(){
  return VCP_FGET(STAT0,RUN);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_statError(){
  return VCP_FGET(STAT0,ERR);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_statWaitIc(){
  return VCP_FGET(STAT0,WIC);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_statInFifo(){
  return VCP_FGET(STAT0,IFEMP);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_statOutFifo(){
  return VCP_FGET(STAT0,OFFUL);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_statSymProc(){
  return VCP_FGET(STAT0,NSYM);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getNumOutFifo(){
  return VCP_FGET(STAT1,NSYMOF);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getNumInFifo(){
  return VCP_FGET(STAT1,NSYMIF);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_errTest(){
  return VCP_FGET(ERR,ERROR);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getBmEndian(){
  return VCP_FGET(END,BM);
}
/*----------------------------------------------------------------------------*/
IDEF Uint32 VCP_getSdEndian(){
  return VCP_FGET(END,SD);
}
/*----------------------------------------------------------------------------*/
IDEF void   VCP_setNativeEndian(){
  VCP_FSET(END,BM,VCP_END_BM_NATIVE);
  VCP_FSET(END,SD,VCP_END_SD_NATIVE);
}
/*----------------------------------------------------------------------------*/
IDEF void   VCP_setPacked32Endian(){
  VCP_FSET(END,BM,VCP_END_BM_32BIT);
  VCP_FSET(END,SD,VCP_END_SD_32BIT);
}
/*----------------------------------------------------------------------------*/
IDEF void   VCP_setBmEndian(Uint32 bmEnd){
  VCP_FSET(END,BM,bmEnd);
}
/*----------------------------------------------------------------------------*/
IDEF void   VCP_setSdEndian(Uint32 sdEnd){
  VCP_FSET(END,SD,sdEnd);
}
/*----------------------------------------------------------------------------*/
IDEF void VCP_icConfig(VCP_ConfigIc *config) {

  Uint32 gie;
  volatile Uint32 *base = (volatile Uint32 *) _VCP_BASE_IC;
  register int x0,x1,x2,x3,x4,x5;

  gie = IRQ_globalDisable();

   x0 = config->ic0;
   x1 = config->ic1;
   x2 = config->ic2;
   x3 = config->ic3;
   x4 = config->ic4;
   x5 = config->ic5;
  
  base[_VCP_IC0_OFFSET]  = x0;
  base[_VCP_IC1_OFFSET]  = x1;
  base[_VCP_IC2_OFFSET]  = x2;
  base[_VCP_IC3_OFFSET]  = x3;
  base[_VCP_IC4_OFFSET]  = x4;
  base[_VCP_IC5_OFFSET]  = x5;
  
  IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
IDEF void VCP_icConfigArgs(Uint32 ic0, Uint32 ic1, Uint32 ic2, Uint32 ic3, Uint32 ic4,
                           Uint32 ic5) {

  Uint32 gie;
  volatile Uint32 *base = (volatile Uint32 *) _VCP_BASE_IC;

  gie = IRQ_globalDisable();
  
  base[_VCP_IC0_OFFSET]  = ic0;
  base[_VCP_IC1_OFFSET]  = ic1;
  base[_VCP_IC2_OFFSET]  = ic2;
  base[_VCP_IC3_OFFSET]  = ic3;
  base[_VCP_IC4_OFFSET]  = ic4;
  base[_VCP_IC5_OFFSET]  = ic5;
  
  IRQ_globalRestore(gie);
}
/*----------------------------------------------------------------------------*/
IDEF void VCP_getIcConfig(VCP_ConfigIc *config) {

  Uint32 gie;
  volatile Uint32 *base = (volatile Uint32 *) _VCP_BASE_IC;
  register int x0,x1,x2,x3,x4,x5;

  gie = IRQ_globalDisable();

   x0 = base[_VCP_IC0_OFFSET];
   x1 = base[_VCP_IC1_OFFSET];
   x2 = base[_VCP_IC2_OFFSET];
   x3 = base[_VCP_IC3_OFFSET];
   x4 = base[_VCP_IC4_OFFSET];
   x5 = base[_VCP_IC5_OFFSET];
  
  config->ic0  =  x0;
  config->ic1  =  x1;
  config->ic2  =  x2;
  config->ic3  =  x3;
  config->ic4  =  x4;
  config->ic5  =  x5;
  
  IRQ_globalRestore(gie);
}

/*----------------------------------------------------------------------------*/

IDEF Uint32 VCP_ceil(Uint32 val, Uint32 pwr2) {
  Uint32 gie;
  Uint32 x;
  
  gie = IRQ_globalDisable();

  /* x^pwr2 = ceil(val, 2^pwr2) */
  /* val is increased (if necessary) to be a multiple of 2^pwr2 */
  x = (((val) - (((val)>>(pwr2)) << (pwr2))) == 0) ?                           \
      ((val)>>(pwr2)):(((val)>>(pwr2))+1);
  
  IRQ_globalRestore(gie);

  return(x);
}

/*----------------------------------------------------------------------------*/

IDEF Uint32 VCP_normalCeil(Uint32 val1, Uint32 val2) {
  Uint32 gie;
  Uint32 x;
  
  gie = IRQ_globalDisable();

  /* x = ceil(val1, val2) */
  /* val is increased (if necessary) to be a multiple of val2 */
  x = ( ((val1)%(val2))!=0  )?( ((val1)/(val2)) + 1 ):((val1)/(val2));
  
  IRQ_globalRestore(gie);

  return(x);
}
/*----------------------------------------------------------------------------*/
#endif /* USEDEFS */

#endif /* VCP_SUPPORT */
#endif /* _CSL_VCP_H_ */
/******************************************************************************\
* End of csl_vcp.h
\******************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区免费观看| 亚洲免费在线视频一区 二区| 亚洲成av人在线观看| 波多野结衣精品在线| 中文字幕中文字幕在线一区| 99riav一区二区三区| 亚洲乱码国产乱码精品精的特点 | 国产精品高潮久久久久无| 国产成人免费av在线| 1024成人网色www| 欧美综合视频在线观看| 日韩av电影一区| 久久久国产一区二区三区四区小说 | 中文字幕乱码亚洲精品一区| jlzzjlzz欧美大全| 香蕉久久一区二区不卡无毒影院| 91精品啪在线观看国产60岁| 国产在线视频精品一区| 亚洲欧美中日韩| 91精品在线免费| 国产精品资源在线看| 亚洲免费观看在线观看| 日韩一区二区在线看片| 国产成人免费视频精品含羞草妖精| 中文字幕一区二区三区蜜月| 欧美天天综合网| 国产一区二区三区观看| 亚洲女同一区二区| 日韩精品中文字幕一区| 99这里只有精品| 日本中文一区二区三区| 国产精品你懂的在线| 欧美美女视频在线观看| 成人免费毛片片v| 污片在线观看一区二区| 欧美国产精品一区二区| 欧美无砖专区一中文字| 国产精品一二三四区| 亚洲一区二区三区四区不卡| 国产日韩精品一区二区三区在线| 欧美综合视频在线观看| 成人激情视频网站| 七七婷婷婷婷精品国产| 一区二区三区国产豹纹内裤在线| 日韩精品一区在线观看| 欧美在线你懂得| 波多野结衣亚洲一区| 激情综合色播五月| 午夜精品影院在线观看| 亚洲欧美日韩国产一区二区三区| 2014亚洲片线观看视频免费| 欧美色精品在线视频| 不卡大黄网站免费看| 激情国产一区二区| 青青青爽久久午夜综合久久午夜| 亚洲日本欧美天堂| 国产精品色哟哟| 精品国产91九色蝌蚪| 51精品秘密在线观看| 在线免费不卡视频| 91美女在线观看| 丁香婷婷综合色啪| 国产丶欧美丶日本不卡视频| 久久激情综合网| 青青草91视频| 奇米影视一区二区三区| 天天色 色综合| 午夜视频在线观看一区二区| 亚洲色图视频免费播放| 中文字幕视频一区二区三区久| 日本一区二区三区dvd视频在线| 日韩精品一区在线观看| 日韩精品一区二区三区视频播放| 欧美老肥妇做.爰bbww| 欧美三级电影一区| 欧美午夜电影在线播放| 欧美人xxxx| 欧美高清一级片在线| 欧美群妇大交群的观看方式| 在线不卡中文字幕播放| 91精品国产免费| 日韩久久久精品| 久久久久久久精| 欧美极品少妇xxxxⅹ高跟鞋| 中文字幕的久久| 亚洲人精品一区| 亚洲综合在线电影| 日本不卡的三区四区五区| 毛片av一区二区三区| 激情av综合网| 成人av电影免费观看| 91色视频在线| 欧美日韩久久不卡| 精品国产免费久久| 国产欧美日韩在线视频| 亚洲六月丁香色婷婷综合久久| 亚洲一区二区视频| 麻豆国产精品官网| 国产成人综合亚洲网站| 91亚洲男人天堂| 欧美日韩综合不卡| 精品少妇一区二区| 中文字幕乱码久久午夜不卡| 亚洲男人的天堂一区二区| 丝瓜av网站精品一区二区| 久久99精品久久久久| 国产精品18久久久久久久久久久久 | 色婷婷激情久久| 制服.丝袜.亚洲.另类.中文| 久久蜜桃av一区精品变态类天堂| 国产精品女主播在线观看| 亚洲美女一区二区三区| 久久精品国产色蜜蜜麻豆| 不卡一区在线观看| 7777精品伊人久久久大香线蕉经典版下载| 日韩色视频在线观看| 中文字幕一区二区三区av| 日本亚洲三级在线| eeuss鲁一区二区三区| 8x福利精品第一导航| 国产精品大尺度| 喷水一区二区三区| 色婷婷av一区二区三区之一色屋| 日韩精品一区国产麻豆| 亚洲精品老司机| 国产一区二区看久久| 欧美日韩国产综合一区二区| 欧美国产日韩精品免费观看| 奇米一区二区三区av| 日本韩国精品一区二区在线观看| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 国产欧美一区二区精品性| 无码av中文一区二区三区桃花岛| 成人一级片在线观看| 911精品国产一区二区在线| 亚洲欧美日韩国产手机在线| 国产毛片精品一区| 91精品国产高清一区二区三区| 最新欧美精品一区二区三区| 狠狠色丁香婷婷综合| 欧美日韩国产高清一区二区三区 | 成人av在线资源网| 日韩免费视频线观看| 一区av在线播放| 成人福利在线看| 久久久国产精华| 蜜桃视频在线观看一区二区| 在线观看视频一区| 亚洲天堂av一区| 成人av电影观看| 久久精品人人做人人综合 | 粉嫩av一区二区三区在线播放| 欧美精品在线视频| 亚洲综合无码一区二区| 91同城在线观看| 国产精品高清亚洲| 成人在线视频首页| 国产精品乱人伦中文| 大美女一区二区三区| 国产欧美一区二区三区在线看蜜臀| 精品一区二区三区免费观看 | 91成人免费网站| 亚洲嫩草精品久久| 一本大道av一区二区在线播放| 国产精品美女久久久久久久久 | 亚洲国产欧美另类丝袜| 欧美少妇xxx| 亚洲午夜视频在线| 欧美精品一级二级| 日韩不卡免费视频| 日韩一区二区视频在线观看| 蜜臀av一区二区| 精品国产一区二区三区av性色| 久久99在线观看| 国产人久久人人人人爽| eeuss鲁片一区二区三区在线看| 国产精品乱人伦一区二区| 91污在线观看| 日韩在线a电影| 欧美精品一区二区三区很污很色的 | 国产福利一区二区三区视频| 中文字幕av一区二区三区高| 成人av电影免费观看| 亚洲精品中文字幕乱码三区| 欧美丝袜丝nylons| 另类综合日韩欧美亚洲| 久久精品水蜜桃av综合天堂| 成人精品视频网站| 一区二区三区日韩精品| 欧美日韩一二三| 久久草av在线| 国产精品国产三级国产专播品爱网 | 亚洲蜜臀av乱码久久精品蜜桃| 欧美日韩久久久| 国产精品一级片在线观看| 亚洲精品视频自拍| 日韩欧美视频在线| 99久久国产综合精品色伊| 婷婷久久综合九色国产成人| 久久人人爽人人爽|