怎樣構建計算機相關的串口通訊

來CSDN以來,看到很多問串口通訊的問題貼。一直對搞工程的程序員有些同情和好感,因爲我瞭解和清楚,這樣的工作沒太多的人願幹。有時想寫篇串口通訊的博文,希望對某些人有些引導性的幫助。因爲自己在寫作上的一貫的惰性,所以這裏也只是根據自己的經驗。給出一個構建串口通訊的框架性說明。這不是一個準確和仔細的文章,只是給大家畫出一些框架,這裏只提供方向性、指向性的東西。如果想認真做串口,那麼可以藉此根據自己的需要搜索相關資料。

 

1、串口通訊的價值和意義

串口協議是計算機上一個真正的不老傳說,從232協議發展到422/485協議,從點對點通訊到鏈式通訊到星形通訊,各種形式變換不斷。個人計算機的配置上從最早的25針串口到前一段的9針串口,再轉到目前的USB口,甚至是用無線發射和接收設備延伸出的串口配置,這些萬變不離其中的東西真真正正地用了幾十年,這在計算機技術特別是硬件技術不斷更新的環境下實在是個神話。在這個過程中,有大量的儀器設備就是因爲通過串口可以和計算機技術結合,而產生了大量的價值。尤其是醫療器械、工業設備、商業設備、戶外廣告等領域。

2、硬件上的準備

作爲要構建串口通訊的我們,首先了解儀器端串口的形式和配置,可以把串口看作兩個或多個設備的輸入輸出口的連接。從通訊協議也就是通訊的要求上理解需要的數據輸入輸出方式和其他的一些信號要求,以便構建串口硬件上的連接。甚至有時需要親自動手製作某些串口的硬件器件。比如一種簡單構建的串口連接器:9針串口接頭的2、3腳是負責發送和接收數據的。如用一個串口短接線就可自制一個串口連接器,將2、3腳短接,就會形成個人計算機端口的串口“自適應應用”。串口可實現自發自收的功能。這樣既可以測試計算機串口端是否損壞,也同時實現了一種可調試的簡單架構。具體的連接方式可以上網查詢。其他的串口用的接頭如針對針、針對孔或孔對孔的延長線,串口轉U口轉換器,串口無線發射器等等相關設備都可以在市場上尋到。總之,硬件準備上,先要從想象中構建串口,不要拘泥於形式,串口有很多形式,很多形式都可以用串口通訊。

 

3、調試工具類上的準備

藉助工具是我們入手串口編程最便宜的方式。對串口編程不太熟悉的人或者入門者,可以尋找各類調試串口工具,這些在互聯網上均可搜索得到,多冠以:XX“串口助手”之名(這裏不點名XX,免做廣告之嫌)。這些工具中,有很多可以構建一些確定格式的數據並形成文件,給串口發送和接收。串口參數也可在這些軟件上給出不同設置。這些可以給你提供最初的可靠的串口調試幫助。當然串口編程熟悉之後,這些工具同樣也有對照參考的價值。還有一些虛擬串口的軟件,可以在網上搜索得到。這些軟件給你提供更多的串口模擬,甚至模擬串口之間的配對和連接,具有軟件調試工具上的價值。

 

4、編程上的方向

VC上很多串口編程的新手,最初的應用往往都從MSCOMM這一控件入手。這是可行的,但也要記住這個控件只能滿足簡單的應用,不要對這種方式下的編程寄予太高的要求。另一種方式是找到一個比較完備的串口封裝類,在此基礎上可以根據要求進行較爲高級的一些編程。當然這需要對編程者本身有更高的水平要求,對線程有較好的理解,串口編程的工作軟件的效率往往就在於對工作線程的理解上。最後一種方式是API 編程,這種方式要求對編程有較深理解對系統工作方式也要了解。另外有一方面是針對所有階段的編程者的,就是需要編程者去認真掌握串口的一些重要參數設置比如波特率、超時等參數的含義。認真核算數據傳輸速率等,這樣才能滿足或者形成一個高效的通訊協議。

從這些方面着手,足可以構建好串口通訊的應用。當今這個時代,對數據傳輸的越來越多的要求,使得衆多的儀器設備數據通訊更爲重要,不誇張地說,一個有創意,有技術的人配合最新技術的發展,仍然可以在串口這個領域喫一輩子。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章