欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

技術頻道

數據采集卡的應用

  1 引言

  pcl-813b(簡稱813b)是臺灣研華公司推出的一款基于pc的高性能、多功能數據采集卡。該卡不僅性能優異,而且有完善的軟件支持,使得此卡能廣泛適用于工業自動化系統、自動化設備監控系統,具有廣闊的應用前景。vb是一種高效、易學易用的開發工具。一些工業測控系統中,需要計算機從現場獲取實際數據或發出控制命令,這就需要計算機實現對i/o端口的控制與訪問,但是vb不具備直接對硬件地址進行訪問的功能,可以利用vc++編寫訪問i/o接口地址的程序,創建動態鏈接庫(dll),利用dll進行調用來實現端口訪問與控制。本文以此卡為例,詳細介紹了在vb環境下的應用。

  2 pcl-813b數據采集卡簡介

  813b是基于isa結構的,需插在計算機的isa槽中。它采用了12位分辨率a/d轉換器(ad574),用來轉換模擬輸入,轉換時間為25μs,數據傳送速率達25kbps;輸入范圍:雙極性±5v,±2.5v,±1.25v,±0.625v。單極性0~10v,0~5v,0~2.5v,0~1.25v; a/d轉換觸發方式為軟件觸發; 813b支持32路單端隔離模擬量輸入,最大連續過壓±30v。

  813b是一種通用型數據采集卡,可以滿足不同用戶的不同要求。因此卡上有一個dip開關(sw1)和1個跳線器(jp100),可由用戶自行設置,以滿足不同的需要。

  813b使用16個連續的i/o地址,其i/o基地址有開關sw1選擇,有效地址從000~3f0h(十六進制)。sw1開關共有6個微型撥碼開關,其撥碼組合與對應的基地址有關系。

  輸入范圍選擇:如使用單極性輸入,把開關置在“u”位置,此時允許0~10v,0~5v,0~1.25v模擬量輸入。如放大倍數是1,允許輸入0~10v;放大倍數是2,允許輸入0~5v;放大倍數8,允許輸入0~1.25v。放大倍數由軟件控制。

  3 動態鏈接庫dll的編寫

  在vb中要利用dll進行調用來實現板卡的訪問與控制,首先要編寫動態鏈接庫dll。

  在windows98中,應用程序采取一種成為“動態鏈接庫”的特殊函數集來實現代碼和資源的共享,以最大限度地節省資源。之所以稱為“動態”,是因為它們是在運行期間鏈接到應用程序的,而不是在編譯期間。創建一個exe文件時,會有許多例程鏈接到代碼并放入exe文件中。但是dll中的例程則僅僅在實際運行時才鏈接到exe文件。按照這種方式,我們可以把幾個程序共用的代碼放到一個dll中,這樣可以節省大量的空間,提高運行效率。同時在工業控制中對計算機的底層硬件進行訪問,以及利用各種控制接口板進行數據采集和控制時間,僅靠vb是無法解決的。解決這樣的問題可以間接使用動態鏈接庫來實現。

  3.1 創建dll的三個基本成分

  (1) libmain函數

  它是windows dll的入口點,主要用來完成一些初始化任務;

  (2) 出口函數wep

  windows的dll必須包含一個標準的出口函數。在dll最終卸出之前,windows調用該函數作一些必要的清除工作(如釋放一些資源等);

  (3) 自己的功能函數

  windows95下vb編寫的程序是32位的,與之對應的dll也應是32位的。對于32位的dll,16位dll中的入口函數libmain、退出函數wep被dllentrypoint所代替。dllentrypoint入口和退出兩個函數服務。在每次裝入或卸下dll時,windows95調入dllentrypoint。

  在vc++5.0中選擇file|new,在new對話框中選擇project workspace,再在new project workspace對話框中選擇dynamic-link library選項,并輸入工程項目名,即可生成動態鏈接庫的工作框架。

  3.2 利用vc++5.0開發的dll的完整的程序清單

  //dll源文件i0.cpp

  #include

  #include

  int far pascal outport(unsigned)

  short sport);

  int far pascal outport(unsigned short port,int databyte);

  //d11entrypoint函數

  bool winapi d11entrypoint

  (hinstance hd11,

  dworddwreason,

  lpvoid reserved)

  {

  switch(dwreason)

  {

  case dll_process_attach:

  {

  break;

  }

  case dll_process_detach:

  {

  break;

  }

  }

  return true;

  }

  //兩個功能函數

  int far pascal inport(unsigned short port)

  {

  reture(_inp(prot);

  )

  int far pascal outport(unsigned short port,int databyte)

  {

  int a;

  a=_outp(port,databyte);

  return a;

  }

  //模塊定義文件i0.def

  code preload moveable discardable

  data preload single

  exports

  inport

  outport

  3.3 vb中的dll調用

  dll函數或過程必須在全局模塊(*.bas)中正確說明才有效。vb是用declare語句把一個dll函數引入vb中的,它告訴vb在哪里找到dll函數,并且讓vb知道dll需要哪種類型的參數,同時返回哪種類型的值。當某個dll函數用declare語句正確聲明以后,就可以像使用其它函數一樣使用這個dll函數。

  在vb應用程序的全局模塊中聲明i0.dll并將其放入windows/system目錄下,這樣就可以向使用windows api一樣使用i098中的inport和outport函數了。

  declare function inport lib“io.d11”  (byval prot as integer)as long

  declare function outport lib“io.d11”  (byval port as integer,byval

  databyte as long)as long

  4 應用實例

  4.1 813b采集卡的初始化(采集卡基地址220h)

  (1) 選通道

  向22ah寫入相應的控制字選擇通道,寫入“0”表示0通道,寫入“1”代表1通道,依次類推

  (2) 啟動ad轉換

  向22ch寫入任意值,觸發ad轉換

  (3) 讀入數據

  把12位數據的低8位讀入224h,把高4位讀入225h中。

  4.2 vb的編程實例

  利用定時器實現定時采集在vb中,可利用定時器的interval屬性設置每秒鐘采集的次數,把采集段程序放在定時器的timer事件中來實現數據采集。對于一般計算機來講,由于受系統硬件能力的限制,定時器每秒鐘最多只能產生18個事件,若時間間隔設置得過小,將達不到預期效果

  應用實例下面給出數據采集軟件程序中部分主要源代碼

  以采集某0~100℃的溫度信號(經溫度變送器轉換為0~5v)為例,設定a/d板為單極性輸入方式,i/o端口基地址為220h,放大倍率為1

  在module1中聲明:

  declare function outport lib “io.dll” (byval

  portasinteger,byvaldataasinteger)

  declare function inport lib“io.dll”(byval portasinteger asinteger)

  dll文件已拷貝到windows的system目錄下

  采集程序部分:

  private sub timerwd-timer()

  chwd=1 //設定溫度通道號為1

  x=outport(&h22a,chwd) //輸入通道號

  y=outport(&h2c,0 ) //啟動a/d轉換

  j=1

  dowhilej《》0 //判斷a/d轉換是否結束

  j=inport&h22a and 1

  loop

  adwl=inport(&h224) //a/d結果低8位送入變量adwh

  adwh=inport (&h225) //a/d結果高4位送入變量adwl

  adwdata=val(adwh-224)×256+val(adwl)

  //12位a/d轉換結果

  vwd=adwdata×10/4095 //對應的電壓

  wd=100×vwd/5 //標度變換為實際溫度

  …

  endsub

  幾點說明:

  數據采集值是12位,放在2個地址里,其中224h存放數據的低8位(數據7~數據0),225h的低4位存放采集數據的高4位(數據11~數據8),225h的其它位自動變為1110。

  則12位ad轉換的結果為:

  adwdata=val(adwh-224)×256+val(adwl),

  其中224表示無采集數據時的自然值(即11100000)。

  12位ad經ad轉換的最大值是212=4096

  5 結束語

  上述采用vb調用dll實現數據采集的方法有一定的通用性,上述程序全部經過測試通過,可作為類似控制的參考。

文章版權歸西部工控xbgk所有,未經許可不得轉載。

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

      在线成人亚洲| 国产欧美在线视频| 久久精品女人的天堂av| 99www免费人成精品| 国产日韩免费| 欧美日韩亚洲一区二区三区在线| 欧美在线www| 一区二区三区欧美激情| 亚洲国产三级网| 国产午夜亚洲精品羞羞网站| 欧美黄免费看| 久久一区中文字幕| 久久精品国产一区二区电影| 一本一本久久| 亚洲免费精品| 亚洲国产日韩欧美综合久久| 国产在线拍偷自揄拍精品| 欧美性大战久久久久久久| 欧美激情综合| 欧美国产亚洲另类动漫| 女人天堂亚洲aⅴ在线观看| 久久激五月天综合精品| 久久福利一区| 欧美自拍丝袜亚洲| 久久精品国产91精品亚洲| 亚洲综合电影| 性欧美8khd高清极品| 午夜精品久久久久久久久久久久| 亚洲无限乱码一二三四麻| 一本大道久久a久久精二百| 亚洲乱码国产乱码精品精| 日韩一级黄色大片| 在线天堂一区av电影| 在线亚洲欧美| 午夜精品久久久久久久99热浪潮| 在线一区二区三区四区五区| 亚洲午夜伦理| 午夜精品福利电影| 久久精品视频播放| 免费久久99精品国产自| 欧美国产欧美亚洲国产日韩mv天天看完整| 老牛影视一区二区三区| 欧美1区3d| 欧美图区在线视频| 国产日本欧美一区二区三区| 狠狠色丁香久久婷婷综合_中| 在线日韩视频| 9l视频自拍蝌蚪9l视频成人| 亚洲欧美春色| 久久综合狠狠综合久久综合88| 美女精品视频一区| 欧美日韩国产丝袜另类| 国产伦理一区| 亚洲片国产一区一级在线观看| 一区二区欧美视频| 性色av一区二区三区在线观看| 久久一区视频| 欧美无乱码久久久免费午夜一区| 国产小视频国产精品| 1000部精品久久久久久久久| 99视频在线精品国自产拍免费观看| 亚洲综合日本| 媚黑女一区二区| 国产精品视频99| 亚洲激情欧美| 欧美一区二区在线免费观看| 欧美精品导航| 国内外成人在线视频| 一本一本久久a久久精品综合麻豆| 欧美在线视频免费| 欧美三级午夜理伦三级中文幕| 国产一区二区视频在线观看| 亚洲美女视频| 久久影视精品| 国产精品婷婷| 一区二区三区色| 欧美成人小视频| 激情久久久久久| 性刺激综合网| 欧美日韩中文字幕精品| 亚洲国产精品专区久久| 久久精品人人做人人综合| 国产精品99一区| 999亚洲国产精| 欧美国产精品| 亚洲国产天堂久久综合| 久久久久久尹人网香蕉| 国产精品一区二区视频| 夜夜嗨av色一区二区不卡| 欧美寡妇偷汉性猛交| 亚洲承认在线| 另类人畜视频在线| 极品少妇一区二区三区| 久久精品在线视频| 国产一区二区三区高清在线观看| 午夜欧美精品| 国产日韩欧美一区二区三区在线观看 | 性欧美长视频| 国产色综合久久| 欧美在线欧美在线| 国产在线不卡| 久久夜色精品国产亚洲aⅴ| 国内精品99| 久久久精品国产一区二区三区| 国产一区二区观看| 久久免费视频观看| 亚洲欧洲一区二区在线播放| 欧美+亚洲+精品+三区| 亚洲国产精品久久久| 欧美日韩大片| 亚洲自拍偷拍一区| 国产日本精品| 蜜桃久久av| 99在线观看免费视频精品观看| 欧美日韩在线直播| 欧美一区二区三区四区在线观看地址 | 亚洲曰本av电影| 国产美女搞久久| 久久xxxx| 亚洲精选在线观看| 国产精品视频精品| 久久婷婷国产综合尤物精品| 亚洲精品久久嫩草网站秘色| 欧美日韩免费观看一区| 亚洲欧美日韩一区二区三区在线观看| 国产精品三上| 毛片一区二区三区| 亚洲一区二区三区四区五区午夜 | 欧美国产激情| 欧美中在线观看| 亚洲精品国产欧美| 国产精品日韩精品欧美在线 | 欧美一级片久久久久久久| 在线观看视频日韩| 欧美亚州一区二区三区 | 午夜在线电影亚洲一区| 曰本成人黄色| 国产精品伦一区| 欧美好骚综合网| 久久久www成人免费无遮挡大片| 亚洲精品免费在线| 一区二区三区在线不卡| 欧美特黄一区| 欧美人妖另类| 裸体女人亚洲精品一区| 亚洲欧美日韩精品一区二区 | 亚洲福利视频三区| 国产亚洲欧美一区二区三区| 欧美日韩在线视频一区| 免费在线看一区| 久久久久综合| 亚洲精品一区二区三区99| 国产精品国产三级国产专区53| 欧美mv日韩mv国产网站| 久久久噜噜噜久久中文字免| 在线中文字幕一区| 亚洲精品无人区| 亚洲国产cao| 亚洲电影免费在线| 一区二区三区在线视频播放| 国产精品一区二区久久久| 欧美婷婷久久| 国产精品久久久久久一区二区三区 | 久久gogo国模裸体人体| 性欧美暴力猛交另类hd| 亚洲资源av| 亚洲在线播放电影| 亚洲欧美在线一区二区| 午夜精品区一区二区三| 欧美一级精品大片| 久久精品一区二区三区不卡牛牛| 欧美一区二区视频网站| 久久成人在线| 久久久综合免费视频| 可以看av的网站久久看| 免费高清在线视频一区·| 欧美电影在线| 欧美日韩综合视频网址| 国产精品久久久久三级| 国产精品欧美一区二区三区奶水| 国产精品高潮呻吟视频| 国产精品一区2区| 国产欧美一区二区精品性色| 国户精品久久久久久久久久久不卡| 黑人巨大精品欧美黑白配亚洲| 永久免费毛片在线播放不卡| 91久久精品网| 中国成人亚色综合网站| 欧美在线短视频| 欧美jizzhd精品欧美巨大免费| 欧美电影美腿模特1979在线看| 欧美高清视频一区二区| 欧美性久久久| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲第一在线| 亚洲影视在线播放| 老色鬼久久亚洲一区二区| 欧美日韩一区二区三区视频| 国产模特精品视频久久久久| 怡红院精品视频在线观看极品|