您好,歡迎來電子發(fā)燒友網! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網>源碼下載>C/C++語言編程>

利用Visual C++實現串口通信編程

大?。?/span>0.1 MB 人氣: 2017-10-13 需要積分:0

  利用Visual C++在windows環(huán)境下設計異步串行通信程序可以使用不同的方法。一種方法可以使用windows系統(tǒng)提供的串行口API函數;另一種方法可以直接使用Microsoft公司提供的ActiveX控件MSCOMM.OCX。利用MSCOMM.OCX控件進行串行口程序設計相對比較簡單,只要對該控件的屬性、事件和方法進行設置和操作,就能完成簡單的串行通信功能。而直接使用windows系統(tǒng)提供的串行口API函數則相對較為靈活。試驗中,可根據自己的情況任意其中一種進行編程。以下針對如何使用windows系統(tǒng)提供的串行口API函數進行編程做簡要介紹

  在windows系統(tǒng),串行口和其它通信設備都是作為文件進行處理的。串行口的打開、關閉、發(fā)送和接收所用的函數都與操作文件的函數相同。總體來說,利用Visual C++進行異步串行通信程序設計通??梢苑譃?個大階段,它們是串行口打開階段、串行口狀態(tài)值讀取和屬性設置階段、串行數據的發(fā)送與接收階段,以及串行口關閉階段。

 ?。?) 打開串行口

  在對串行口進行所有的操作之前,首先要將其打開。串行口的打開可以使用CreateFile函數,CreateFile函數將返回一個句柄,在隨后與該串行口相關的各種操作中使用。與文件操作相同,在利用CreateFile打開串行口時,也可以將串行口指定為“讀訪問權限”、“寫訪問權限”或“讀寫訪問權限”。

  HANDLE CreateFile(

  LPCTSTR lpFileName

  DWORD dwDesiredAccess

  DWORD dwSharedMode

  LPSECURITY_ATTRIBUTES lpSecurityAttributes

  DWORD dwCreationDisposition

  DWORD dwFlagsAndAttributes

  HANDLE hTemplateFile

 ?。?;

  在調用成功時,CreateFile返回打開文件的句柄,該句柄將在以后與該串口相關的各個調用函數中使用。如果調用失敗,則CreateFile返回INVALID_HANDLE_VALUE。

  (2) 串行口的狀態(tài)讀取和屬性設置

  一旦將串口打開,就可以對該串口的屬性進行設置。由于串口的屬性非常復雜,因此通常采用讀取該串口當前狀態(tài)值,然后在此基礎上進行修改的方法。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關規(guī)定!

      ?