超碰激情 I 成人福利网站 I 淫国产 I 曰批视频免费30分钟成人 I 刘亦菲裸体视频一区二区三区 I 午夜久 I 尤物综合 I 亚洲一区av在线观看 I 欧美亚洲国产精品久久高清 I 欧美老熟妇乱子伦视频 I 无码中出人妻中文字幕av I 久久美女福利视频 I 精品无人区乱码1区2区3区在线 I 性饥渴的农村熟妇 I 色综合综合色 I 少妇人妻88久久中文字幕 I 久久夜色精品国产噜噜av I 老熟妇仑乱视频一区二区 I 男女做爰猛烈叫床视频动态图 I 日本大片一区二区 I 人成午夜免费视频在线观看 I 激情婷婷av I 男女下面一进一出免费视频网站 I 久久影视一区 I 午夜污网站 I 先锋人妻无码av电影 I 久久久久久久岛国免费网站 I 又粗又大又黄又硬又爽免费看 I 人妻无码免费一区二区三区 I www.色成人100 I 欧美高清网站 I 精品国产第一页 I 国产suv一区二区三区88区 I 橹图极品美女无圣光 I 午夜宅男欧美

產品分類

當前位置: 首頁 > 傳感測量產品 > 工業傳感器 > 濁度傳感器

類型分類:
科普知識
數據分類:
濁度傳感器

基于VC++6.0的串口通信開發方法

發布日期:2022-04-17 點擊率:103

1 引言
  在當今的工業控制領域,串口通信是計算機與其他設備進行數據通信時經常使用的方法,具有實現簡單、使用靈活、數據傳輸可靠等幾個優點,特別是在實時監控系統中得到廣泛應用,在我們使用的計算機上使用的串口一般是RS232,使用RS232接口只能進行一對一的通信,然而在工業控制領域往往是一臺工控機和多臺智能設備進行通信,并且要求傳輸距離遠,因為這些需求,在工控領域一般使用RS485。
  在Win32下,可以使用兩種編程方式實現串口通信,其一是使用MScomm控件,這種方法程序簡單,但欠靈活。其二是調用Windows的API函數,這種方法可以清楚地掌握串口通信的機制,并且自由靈活。使用控件的方法在本質上也是使用API進行串口通信,控件只不過是對API的一個封裝處理,本文只介紹使用API進行串口通信編程的方法。
2 串口通信的一般步驟
2.1 打開串口
  在32位Windows中,串口和其他通信設備(如磁盤等)都被作為文件進行處理,在使用前必須先將其打開,為保證串口通信數據傳輸的可靠性,串口一般以非共享模式打開,也就是在被串口打開后,其他程序不能在去打開此設備。
2.2 配置串口
  在使用串口進行數據通信前必須對其進行正確的配置,串口需要配置的主要參數有波特率、數據位、停止位、奇偶校驗、收發數據緩沖區大小。除此之外還要對串口進行超時設置,以防止在串口通信時數據傳輸突然中斷而導致讀寫操作進入無限期等待的狀態,設置了超時,如果在指定時間內沒有完成所進行的操作,則此操作被自動放棄。
2.3 讀寫串口
  在串口被打開并設置好后,就可以使用串口進行讀寫數據了,讀寫數據可以采用同步、異步及事件驅動等多種方式。
2.4 關閉串口
  在使用完串口后應該將其關閉,如果沒有關閉,該串口會處于打開狀態,其他的應用程序便無法打開使用該串口。
3 利用API函數實現串口通信
3.1 打開串口
  Win32系統把文件的概念進行了擴展。無論是文件、通信設備、命名管道、郵件槽、磁盤、還是控制臺,都是用API函數CreateFile來打開或創建的。該函數的原型為:
HANDLE CreateFile(LPCTSTR lpFileName,
DWORD dwDesiredAccess,
DWORD dwShareMode,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
DWORD dwCreationDistribution,
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile);
各個參數說明如下:
lpFileName:將要打開的串口邏輯名,如“COM1”;
dwDesiredAccess:指定串口訪問的類型,可以是讀取、寫入或二者并列;
dwShareMode:指定共享屬性,由于串口不能共享,該參數必須置為0;
lpSecurityAttributes:引用安全性屬性結構,缺省值為NULL;
dwCreationDistribution:創建標志,對串口操作該參數必須置為OPEN_EXISTING;
dwFlagsAndAttributes:屬性描述,用于指定該串口是否進行異步操作,該值為FILE_FLAG_OVERLAPPED,表示使用異步的I/O;該值為0,表示同步I/O操作;
hTemplateFile:對串口而言該參數必須置為NULL;
3.2 配置串口
  在打開通訊設備句柄后,常常需要對串口進行一些初始化配置工作。這需要通過一個DCB結構來進行。DCB結構包含了諸如波特率、數據位數、奇偶校驗和停止位數等信息。在查詢或配置串口的屬性時,都要用DCB結構來作為緩沖區。在打開串口后,可以調用GetCommState函數來獲取串口的默認配置,該函數獲取一個DCB結構體,只要在該結構內對應該先修改DCB結構,然后再調用SetCommState函數以修改后的DCB結構設置串口。DCB主要有以下幾個重要的成員:

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產品

更多