<style id="7i3y3"></style>

      <sub id="7i3y3"><i id="7i3y3"></i></sub>

        午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
        首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
        中華工控網首頁
          P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
          D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
          電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
        C#使用COM組件接口操作精簡ISA總線
        英創信息技術有限公司
        收藏本文     查看收藏

            英創ARM9工控主板的數據采集功能通常采用板上的GPIO實現數字輸入輸出、通過精簡ISA總線擴展相應的外部控制電路(如控制繼電器或AD或DA實現模擬數據的輸入輸出等)。由于英創ARM9嵌入式主板采用WinCE操作系統,很多客戶都選擇了界面友好、開發便利的C#語言(使用Visual Studio 2005.NET集成開發環境);以往用戶在使用C#操作控制GPIO以及ISA總線的時候,是使用英創提供的動態鏈接庫,采用傳統的DllImport方法,首先在程序開始的地方來進行函數申明,然后才能在程序中進行調用;而這個動態鏈接庫里面函數的EntryPoint由于系統的原因,往往是一個古怪的名字,而且英創每次在進行動態鏈接庫的升級后,這個EntryPoint的名字就可能發生變化,這對用戶程序的可維護性帶來極大的不便。為了解決這個問題,英創公司現在提供了操作精簡ISA總線的COM組件接口;用戶只需要在目標平臺上進行組件注冊,然后在C#程序開發的時候,對該COM組件添加引用,即可在程序里面自由地通過對象操作來使用函數,而不必反復費心地進行函數申明的工作。下面我們就以EM9000嵌入式主板為實例,在C#使用COM組件接口操作精簡ISA總線作一個說明:

        一、在目標嵌入式主板上進行COM組件注冊

              ISA COM組件的核心文件就是英創提供的EM9000_ISA_API_COM.dll動態鏈接庫文件,首先需要將它在目標嵌入式工控主板上注冊。用戶可以使用Visual Studio Remote Tools提供的“遠程文件查看器”連接目標嵌入式工控主板,并將英創提供的EM9000_ISA_API_COM.dll和REGSVR32.exe這兩個文件下載到目標主板的Flash存儲器上去(這里假設下載到EM9000的NandFlash)。然后在開發主機PC上使用Telnet連接目標工控主板(如圖),進入放置剛才下載這兩個文件的Flash存儲器目錄,運行:

              REGSVR32 EM9000_ISA_API_COM.dll

              即可完成COM組件注冊。

        二、在C#工程中添加COM組件引用

              接下來可以進入C# COM組件開發。首先將EM9000_ISA_API_COM.dll文件復制到用戶的C#工程目錄下,然后在Visual Studio 2005.NET集成開發環境中打開用戶工程。為了使用ISA總線COM組件,必須為該工程添加外部引用;用戶可在集成開發環境的右側的“解決方案資源管理器”中找到“引用”,對其單擊鼠標右鍵,然后單擊“添加引用”(如圖)。


         
              在彈出的“添加引用”對話框中,選擇“瀏覽”選項卡,并在你的工程目錄下找到你剛才復制過來的EM9000_ISA_API_COM.dll文件,選擇它,并單擊“確定”。

          這時,你已經完成了添加工程中的COM組件的引用工作,這時,你可以在集成開發環境的右側的“解決方案資源管理器”中看到了一個名稱為EM9000_ISA_API_COMLib的引用,同時,EM9000_ISA_API_COM.dll也加入到了你的工程中(如圖)。

        三、在應用程序開發中使用ISA COM組件

              首先,為了使應用程序能直接調用相關的類和函數,必須在程序的起始using語句中添加:

              using EM9000_ISA_API_COMLib;

              程序中對于ISA總線的操作完全圍繞EM9000_ISA_COMClass和EM9000_ISA_EX_COM這兩個類來進行的。用戶可以根據自己對于ISA總線操作的需要來定義這兩個類的對象實體,然后通過對對象里面的方法(函數)來進行所需要的操作。EM9000_ISA_COMClass所定義的對象主要包括一些ISA總線擴展(包括PWM、WatchDog等)的方法,EM9000_ISA_EX_COM所定義的對象主要包括一些將接口定義為GPIO的操作(如IO輸入輸出)方法。下面大致做一些講解:

              (1) 定義類的對象

        EM9000_ISA_COMClass ISA_Port = new EM9000_ISA_COMClass(); //定義一個
                                                                                                            //M9000_ISA_COMClass對象
        EM9000_ISA_EX_COM GPIO_Port = new EM9000_ISA_EX_COM();   //定義一個
                                                                                                            //EM9000_ISA_EX_COM對象


              (2) 使用對象的方法函數

              英創提供了一個ISA COM組件的方法函數列表,里面詳細羅列了各種方法函數的使用。由于該COM組件是用C++來編寫的,所以,這個列表里面的函數形式是以C++的方式來標注的;由于C#和C++的相似性,所以大多數方法函數不需要在此提出特別注解,只需要針對幾個帶有C++指針參數的函數在此作一提示(舉例中所使用的類對象已經在上文中定義):

              ·int COM_EM9000_PWMOUT( int ChIdx, float* pFreq, float* pDuty );

              這個操作PWM輸出的函數,帶有兩個返回實際脈沖頻率和占空比的指針變量,在C#中,我們一般按照如下示例的方式來使用:

              int ChIdx = 0;
              float pFreq = 60.0f;   //脈沖頻率60KHz
              float pDuty = 70.0f;   //占空比70%
              int i1 = ISA_Port.COM_EM9000_PWMOUT(ChIdx, ref pFreq, ref pDuty);

              注意pFreq和pDuty由C++的指針變成了兩個ref變量,它們將返回實際脈沖頻率和占空比值。

              ·int COM_PIO_State( UINT16* pInValue );

              這個讀取GPIO輸入狀態的函數,帶有一個返回輸入值的指針變量,我們是按照如下示例在進行使用:

              ushort gpio_in_state = 0x0000;  //這是一個返回IO輸入狀態的值,初始化可以任意設置一個值
              i1 = GPIO_Port.COM_PIO_State(out gpio_in_state);

              注意gpio_in_state由C++的指針變成了一個out變量,它將返回實際GPIO輸入狀態。

              用戶還可以參考英創提供的C# ISA總線COM組件例程,進行實際的應用開發。


         

        狀 態: 離線

        公司簡介
        產品目錄

        公司名稱: 英創信息技術有限公司
        聯 系 人: 李林
        電  話: 028-86180660
        傳  真: 028-85141028
        地  址: 成都市高新區高朋大道5號博士創業園
        郵  編: 610041
        主  頁:
         
        該廠商相關技術文摘:
        GPRS集抄單元整機方案
        DOS工控主板的TCP/IP應用
        低成本LCD的選型與使用
        ARM9工控主板支持斷點續傳的FTP文件傳送
        嵌入式數據庫SQLCE的開發與應用
        基于精簡ISA總線的CE設備驅動程序
        工控主板EM9360的GPIO的各種使用方法
        工控主板EM9000數字IO的增強擴展
        英創工控主板同時驅動RS232和RS485的方法
        ARM9工控板在遠程監控中的應用
        主板EM9161實現音頻輸出的方法
        更多文摘...
        立即發送詢問信息在線聯系該技術文摘廠商:
        用戶名: 密碼: 免費注冊為中華工控網會員
        請留下您的有效聯系方式,以方便我們及時與您聯絡

        關于我們 | 聯系我們 | 廣告服務 | 本站動態 | 友情鏈接 | 法律聲明 | 不良信息舉報
        工控網客服熱線:0755-86369299
        版權所有 中華工控網 Copyright©2022 Gkong.com, All Rights Reserved

        主站蜘蛛池模板: 亚洲Av午夜精品a区| 亚洲欧美在线观看一区二区| 国产成人在线小视频| 人妻精品中文字幕av| 性姿势真人免费视频放| 在线观看欧美精品二区| 日本韩国一区二区精品| 中文亚洲成A人片在线观看| 亚洲av无码专区在线观看成人| 91中文字幕在线一区| 国产福利在线免费观看| 和黑人中出一区二区三区| 精品无人乱码一区二区三区的优势 | 国产精品自拍中文字幕| 香蕉99国内自产自拍视频| 蜜臀视频在线观看一区二区| 中文字幕久久精品波多野结| 国产精品护士| 日产无人区一线二码三码2021| 亚洲香蕉在线| 午夜免费无码福利视频麻豆| 亚洲日韩AV一区二区三区四区 | 亚洲欧美国产日韩天堂区 | 国产日韩在线亚洲色视频| 国产肉体xxxx裸体137大胆| 亚洲日本韩国欧美云霸高清| 亚洲熟妇中文字幕日产无码 | 熟女在线视频一区二区三区| 四房播色综合久久婷婷| 男人的天堂va在线无码| 国产精品一线二线三线区| 亚洲精品电影院| 国产精品免费看久久久| 国产成人免费手机在线观看视频| 欧美肥老太牲交大战| 久久久这里只有免费精品| 亚洲www永久成人网站| 欧美日韩精品综合在线一区| 国产成人午夜精品永久免费| 精品 无码 国产观看| 久久精品亚洲国产综合色|