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

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

?? hwdrv_apci2016.c

?? 最新版comedi的源碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/**@verbatimCopyright (C) 2004,2005  ADDI-DATA GmbH for the source code of this module.                 ADDI-DATA GmbH         Dieselstrasse 3         D-77833 Ottersweier         Tel: +19(0)7223/9493-0         Fax: +49(0)7223/9493-92         http://www.addi-data-com         info@addi-data.com This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USAYou shoud also find the complete GPL in the COPYING file accompanying this source code.@endverbatim*//*      +-----------------------------------------------------------------------+  | (C) ADDI-DATA GmbH          Dieselstra?e 3       D-77833 Ottersweier  |  +-----------------------------------------------------------------------+  | Tel : +49 (0) 7223/9493-0     | email    : info@addi-data.com         |  | Fax : +49 (0) 7223/9493-92    | Internet : http://www.addi-data.com   |  +-------------------------------+---------------------------------------+  | Project     : APCI-2016       | Compiler   : GCC                      |  | Module name : hwdrv_apci2016.c| Version    : 2.96                     |  +-------------------------------+---------------------------------------+  | Project manager: Eric Stolz   | Date       :  02/12/2002              |  +-------------------------------+---------------------------------------+  | Description :   Hardware Layer Acces For APCI-2016                    |  +-----------------------------------------------------------------------+  |                             UPDATES                                   |  +----------+-----------+------------------------------------------------+  |   Date   |   Author  |          Description of updates                |  +----------+-----------+------------------------------------------------+  |          |           |                                                |  |          |           |                                                |  |          |           |                                                |  +----------+-----------+------------------------------------------------+*//*+----------------------------------------------------------------------------+|                               Included files                               |+----------------------------------------------------------------------------+*/#include "hwdrv_apci2016.h"/*+----------------------------------------------------------------------------+| Function   Name   : int i_APCI2016_ConfigDigitalOutput                     ||			  (comedi_device *dev,comedi_subdevice *s,               | |                      comedi_insn *insn,lsampl_t *data)                     |+----------------------------------------------------------------------------+| Task              : Configures The Digital Output Subdevice.               |+----------------------------------------------------------------------------+| Input Parameters  : comedi_device *dev : Driver handle                     ||                     UINT *data         : Data Pointer contains             ||                                          configuration parameters as below ||                                                                            | |			  data[0]            : 1 Digital Memory On               | 	|				     			   0 Digital Memory Off              | +----------------------------------------------------------------------------+| Output Parameters :	--													 |+----------------------------------------------------------------------------+| Return Value      : TRUE  : No error occur                                 ||		            : FALSE : Error occur. Return the error          ||			                                                         |+----------------------------------------------------------------------------+*/int i_APCI2016_ConfigDigitalOutput(comedi_device *dev,comedi_subdevice *s,comedi_insn *insn,lsampl_t *data) {  if  ((data[0]!=0) && (data[0]!=1))      {        comedi_error(dev,"Not a valid Data !!! ,Data should be 1 or 0\n");       return -EINVAL;     } // if  ((data[0]!=0) && (data[0]!=1))   if  (data[0])     {     devpriv->b_OutputMemoryStatus = ADDIDATA_ENABLE ;      } // if  (data[0]  else     {     devpriv->b_OutputMemoryStatus = ADDIDATA_DISABLE;     } // else if  (data[0]  return insn->n;}/*+----------------------------------------------------------------------------+| Function   Name   : int i_APCI2016_WriteDigitalOutput                      ||			  (comedi_device *dev,comedi_subdevice *s,               ||                      comedi_insn *insn,lsampl_t *data)                     |+----------------------------------------------------------------------------+| Task              : Writes port value  To the selected port                |+----------------------------------------------------------------------------+| Input Parameters  : comedi_device *dev      : Driver handle                ||                     UINT ui_NoOfChannels    : No Of Channels To Write      ||                     UINT *data              : Data Pointer to read status  |+----------------------------------------------------------------------------+| Output Parameters :	--													 |+----------------------------------------------------------------------------+| Return Value      : TRUE  : No error occur                                 ||		            : FALSE : Error occur. Return the error          ||			                                                         |+----------------------------------------------------------------------------+*/int i_APCI2016_WriteDigitalOutput(comedi_device *dev,comedi_subdevice *s,comedi_insn *insn,lsampl_t *data)  {   UINT  ui_NoOfChannel;   UINT ui_Temp,ui_Temp1;   ui_NoOfChannel=CR_CHAN(insn->chanspec);   if  ((ui_NoOfChannel<0) || (ui_NoOfChannel>15))       {         comedi_error(dev,"Invalid Channel Numbers !!!, Channel Numbers must be between 0 and 15\n");        return -EINVAL;      } // if  ((ui_NoOfChannel<0) || (ui_NoOfChannel>15))   if  (devpriv->b_OutputMemoryStatus )      {      ui_Temp=inw(devpriv->iobase+APCI2016_DIGITAL_OP);      } // if  (devpriv->b_OutputMemoryStatus )   else      {       ui_Temp=0;      } // else if  (devpriv->b_OutputMemoryStatus )   if  ((data[1]!=0) && (data[1]!=1))       {         comedi_error(dev,"Invalid Data[1] value !!!, Data[1] should be 0 or 1\n");        return -EINVAL;      } // if  ((data[1]!=0) && (data[1]!=1))     if  (data[3]==0)      {       if  (data[1]==0)         {         data[0]=(data[0] << ui_NoOfChannel)|ui_Temp;         outw(data[0],devpriv->iobase+APCI2016_DIGITAL_OP);          } // if (data[1]==0)       else         {         if  (data[1]==1)            {               switch (ui_NoOfChannel)	       {               case 2:  data[0]=(data[0] << (2*data[2]))|ui_Temp; 	                break;               case 4:  data[0]=(data[0] << (4*data[2]))|ui_Temp;	                break;               case 8:  data[0]=(data[0] << (8*data[2]))|ui_Temp;	                break;               case 15: data[0]=data[0]|ui_Temp;                         break;               default: comedi_error(dev," chan spec wrong");                        return -EINVAL;   // "sorry channel spec wrong "                 }//switch(ui_NoOfChannels)            outw(data[0],devpriv->iobase+APCI2016_DIGITAL_OP);            }// if  (data[1]==1)         else            {            printk("\nSpecified channel not supported\n");            } // else if  (data[1]==1)         } // else if (data[1]==0)      } // if (data[3]==0)   else      {      if  (data[3]==1)         {         if  (data[1]==0)            {            data[0]=~data[0]&0x1;            ui_Temp1=1;            ui_Temp1=ui_Temp1<<ui_NoOfChannel;            ui_Temp=ui_Temp|ui_Temp1;              data[0]=(data[0] << ui_NoOfChannel)^0xffff;            data[0]=data[0]& ui_Temp;             outw(data[0],devpriv->iobase+APCI2016_DIGITAL_OP);             } // if  (data[1]==0)          else            {            if  (data[1]==1)               {                switch (ui_NoOfChannel)	          {                  case 2: data[0]=~data[0]&0x3;                           ui_Temp1=3;                          ui_Temp1=ui_Temp1<<2*data[2];                          ui_Temp=ui_Temp|ui_Temp1;                             data[0]=((data[0] << (2*data[2]))^0xffff)& ui_Temp; 	                  break;                  case 4: data[0]=~data[0]&0xf;                          ui_Temp1=15;                          ui_Temp1=ui_Temp1<<4*data[2];                          ui_Temp=ui_Temp|ui_Temp1;                              data[0]=((data[0] << (4*data[2]))^0xffff)&ui_Temp;	                  break;                  case 8: data[0]=~data[0]&0xff;                          ui_Temp1=255;                          ui_Temp1=ui_Temp1<<8*data[2];                          ui_Temp=ui_Temp|ui_Temp1;                              data[0]=((data[0] << (8*data[2]))^0xffff)&ui_Temp;                          break;                 case 15: break;                 default: comedi_error(dev," chan spec wrong");        		      return -EINVAL;   // "sorry channel spec wrong "                   }//switch(ui_NoOfChannels)              outw(data[0],devpriv->iobase+APCI2016_DIGITAL_OP);              }// if(data[1]==1)           else              {              printk("\nSpecified channel not supported\n");

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一二三四在线观看| 色88888久久久久久影院野外| 欧美日韩一本到| 亚洲国产美女搞黄色| 欧美日韩激情在线| 日韩成人精品在线观看| 日韩一区二区在线观看视频| 奇米色一区二区三区四区| 欧美一级艳片视频免费观看| 久久国产日韩欧美精品| 国产性做久久久久久| 成人黄色av电影| 一区二区三区中文在线| 欧美日韩视频在线第一区 | 欧美伊人久久久久久久久影院 | 91国偷自产一区二区三区观看 | 91精品国产一区二区三区| 免费视频最近日韩| 久久先锋影音av| 国内精品视频666| 天天做天天摸天天爽国产一区| 91精选在线观看| 国产乱妇无码大片在线观看| 国产精品人人做人人爽人人添| 色综合久久久久久久| 日韩成人av影视| 欧美激情综合五月色丁香小说| 99久久精品99国产精品| 日本在线播放一区二区三区| 国产日韩欧美一区二区三区乱码 | 亚洲欧美日韩国产手机在线 | 久久黄色级2电影| 国产精品久久久久一区二区三区| 欧美性生交片4| 亚洲妇熟xx妇色黄| 国产午夜精品久久| 欧美日韩国产123区| 国产一区啦啦啦在线观看| 亚洲欧美视频在线观看| 日韩一区二区三区视频在线| 99精品视频免费在线观看| 日韩av网站在线观看| 亚洲少妇30p| 欧美不卡视频一区| 在线亚洲精品福利网址导航| 国产美女视频91| 亚洲va欧美va人人爽| 国产精品久久毛片a| 日韩视频一区二区三区在线播放| 97精品视频在线观看自产线路二| 精品一区二区三区在线观看国产 | 欧美zozozo| 日本电影欧美片| 国产成人免费xxxxxxxx| 天堂一区二区在线| 亚洲精品ww久久久久久p站| 国产视频一区在线播放| 日韩欧美视频一区| 天堂在线一区二区| 国产日韩欧美一区二区三区综合| 欧美顶级少妇做爰| 欧美三级中文字幕| 99re在线精品| 不卡一二三区首页| 风间由美一区二区av101| 久久精品国产亚洲a| 亚洲电影一级黄| 亚洲精品视频在线看| 最新热久久免费视频| 中文字幕免费不卡| 国产日韩v精品一区二区| 日韩欧美国产午夜精品| 91精品国产综合久久久久久| 欧美色成人综合| 欧美色精品在线视频| 欧美日韩综合在线免费观看| 在线观看中文字幕不卡| 日本道免费精品一区二区三区| 成人的网站免费观看| 国产精品456| 国产suv精品一区二区三区| 国产精品一区专区| 国产精品99久久不卡二区| 国产69精品久久777的优势| 国产成人a级片| 成人av资源在线观看| 99re8在线精品视频免费播放| 成人av在线电影| 99re热视频精品| 欧美亚洲丝袜传媒另类| 欧美片网站yy| 日韩美女在线视频| 久久中文娱乐网| 国产精品青草久久| 亚洲欧美日韩国产手机在线 | 亚洲乱码国产乱码精品精98午夜 | 亚洲大尺度视频在线观看| 国产精品久久久久精k8| 国产精品福利电影一区二区三区四区| 中文一区一区三区高中清不卡| 国产精品色哟哟| 亚洲老妇xxxxxx| 丝袜亚洲另类丝袜在线| 精品一区二区精品| 成人av在线网站| 欧美日韩视频在线一区二区| 日韩午夜激情av| 国产片一区二区三区| 亚洲欧美日韩成人高清在线一区| 亚洲自拍偷拍欧美| 久久不见久久见免费视频7| 国产成人免费在线视频| 91极品美女在线| 欧美大片在线观看一区二区| 中文字幕二三区不卡| 亚洲国产精品视频| 国产一区二区三区高清播放| 99免费精品在线| 欧美一区二区在线观看| 国产日产欧产精品推荐色 | 日本免费在线视频不卡一不卡二| 精品一区精品二区高清| 91理论电影在线观看| 欧美一区二区日韩一区二区| 亚洲欧洲色图综合| 琪琪一区二区三区| 99免费精品在线| 亚洲精品一区二区三区四区高清| 亚洲欧美日韩国产综合在线 | 亚洲a一区二区| 国产精品一区二区在线观看不卡| 91成人在线观看喷潮| 久久久美女毛片| 亚洲123区在线观看| 波多野结衣欧美| 亚洲精品一线二线三线| 午夜精品一区二区三区免费视频| 国产不卡高清在线观看视频| 9191久久久久久久久久久| 国产精品国产三级国产aⅴ无密码| 日本亚洲三级在线| 在线观看日产精品| 中文在线免费一区三区高中清不卡| 免费观看在线综合| 在线影视一区二区三区| 国产精品久久久久久久午夜片| 久久精品国产一区二区三| 欧美日韩精品一区视频| 亚洲欧美日韩中文字幕一区二区三区| 国产麻豆成人传媒免费观看| 欧美精品 国产精品| 一区二区成人在线| 99久久亚洲一区二区三区青草| 久久久精品国产免费观看同学| 亚洲一二三级电影| 色视频欧美一区二区三区| 国产精品私房写真福利视频| 国产在线精品国自产拍免费| 91精品国产色综合久久不卡电影 | 欧美高清在线精品一区| 激情五月婷婷综合网| 欧美一区二区三区日韩| 日日夜夜精品视频天天综合网| 色婷婷国产精品| 一区二区三区四区中文字幕| 91精品办公室少妇高潮对白| 久久久久久久网| 激情综合色综合久久综合| 欧美成人三级在线| 蜜臀av一区二区| 日韩精品一区二区三区在线播放 | 久久精品免费看| 制服丝袜亚洲网站| 日韩av一二三| 日韩精品一区二区三区老鸭窝| 美女视频黄免费的久久 | 在线观看91av| 日韩av高清在线观看| 欧美一区二区三区四区五区| 久久精品国产在热久久| 久久先锋资源网| 国产a视频精品免费观看| 国产农村妇女精品| 成人免费va视频| 亚洲美女在线国产| 欧美三电影在线| 美女视频一区二区三区| 精品久久久网站| 国产成人精品aa毛片| 国产精品第四页| 在线免费观看不卡av| 天堂av在线一区| 久久综合一区二区| 大胆亚洲人体视频| 亚洲午夜久久久久久久久电影院 | 日韩精品一区二区三区中文不卡| 国产美女在线观看一区| 国产精品久久久久久亚洲伦| 欧美性三三影院| 日韩精品1区2区3区|