張 啟
(四川職業(yè)技術(shù)學院,629000)
研究計算機串口與單片機通訊測試系統(tǒng)的實現(xiàn)
張 啟
(四川職業(yè)技術(shù)學院,629000)
隨著計算機串口技術(shù)的不斷發(fā)展,計算機串口技術(shù)已經(jīng)細分為很多種,能夠根據(jù)不同的應(yīng)用情況合理選擇計算機串口技術(shù)。本文將會對計算機串口與單片機通訊測試系統(tǒng)進行簡單的研究和分析,提高測試的效率和質(zhì)量。
計算機串口 單片機 通訊測試
(一)計算機串口數(shù)據(jù)通訊的定義
數(shù)據(jù)通訊是一種新的通訊方式,結(jié)合了通訊技術(shù)和計算機技術(shù)兩者優(yōu)點。而計算機串口通訊是指通過數(shù)據(jù)信號線、控制線和底線等線路連接外設(shè)和計算機,按位進行傳輸數(shù)據(jù)的通訊方式。計算機串口實際上是一種計算機領(lǐng)域通用的設(shè)備通訊協(xié)議,同時也是儀器儀表設(shè)備通用的通訊協(xié)議。計算機串口通訊的主要運行程序如下圖所示:
由上圖不難看出,計算機串口通訊的概念很簡單,計算機串口按位對字節(jié)進行發(fā)送和接收,運行過程中所需要得數(shù)據(jù)線數(shù)量少,利于與遠距離通訊中可大大節(jié)約通訊成本,但也因為這種運行方式而導致計算機串口通訊的數(shù)據(jù)傳輸速度比并行傳輸方式速度慢,降低信號傳輸?shù)男省?/p>
(二)計算機串口數(shù)據(jù)通訊的關(guān)鍵
隨著電子技術(shù)的不斷發(fā)展,有很多工作領(lǐng)域都廣泛地應(yīng)用單片機,如工業(yè)、農(nóng)業(yè)、科研等,這都只因單片機自帶的串口功能可以提高控制系統(tǒng)的實用性,而且使用方法變得更加簡便。因此,計算機串口通訊是單片機和單片機之間進行通訊的關(guān)鍵。在計算機串口數(shù)據(jù)通訊中,最重要的參數(shù)有五個元素,分別是:波特率、數(shù)據(jù)位、起始位、停止位和奇偶校驗。兩個要進行通訊的端口,這些相對應(yīng)的參數(shù)必須要匹配才能進行通訊。
(一)計算機串口與單片機通訊測試系統(tǒng)的原理
盡管目前我國串行通訊接口有很多標準,但是都是在RS-232C的基礎(chǔ)上進行改修和完善所形成的。計算機串口與單片機通訊技術(shù)能夠簡單完成多臺下位機同時通訊,還可以解決多臺下位機無法同時顯示多種內(nèi)容的問題,令整個通訊過程變得更加方便快捷。但是在大部分的通訊過程中,往往需要兩種通訊方式才能夠完成通訊工作,這種情況極容易導致令計算機串口出現(xiàn)沖突的現(xiàn)象,甚至還會出現(xiàn)其他無法預料的通訊措施,令整個系統(tǒng)的開發(fā)過程中是造成極大的影響。所以,必須要在對計算機串口與單片機通訊系統(tǒng)進行測試之前,先對系統(tǒng)運作的整個流程進行了解,并選擇合適的軟件仿真信號的發(fā)送、接收工作,檢查系統(tǒng)在正常的運作過程中是否存在問題。
(二)計算機串口與單片機通訊測試系統(tǒng)的測試內(nèi)容
對于通訊雙方來說,傳輸協(xié)議是十分重要的,關(guān)系到計算機串口想單片機接口發(fā)送數(shù)據(jù)、進行通訊以及返回設(shè)備狀態(tài)都有著不同程度的影響,所以在進行測試的時候,將會針對系統(tǒng)所選擇的協(xié)議類型進行詳細的研究和分析。對于選擇這種同步協(xié)議的系統(tǒng),在進行測試的時候?qū)栏癜凑胀絽f(xié)議的要求,對單片機接受端進行數(shù)據(jù)發(fā)送,從端口發(fā)送數(shù)據(jù)校驗碼進行測試。在測試過程中,數(shù)據(jù)塊將傳送正式的通訊字符,這些通訊字符作為測試的形式,包含了數(shù)字、漢字、字符等多種不同的字符,并經(jīng)過組合后進行發(fā)送,單片機作為下位機,將進行相應(yīng)顯示,顯示完成后,PC機有本地回顯,然后就可以開始分析PC極的本地回顯出發(fā)送的內(nèi)容是否與接收到的數(shù)據(jù)一致。如果兩者顯示一致,那么測試系統(tǒng)將會顯示串口和單片機連接成功的標志。但是如果兩者顯示的結(jié)果不一致、出現(xiàn)亂碼或數(shù)據(jù)錯位,或者單片機難以接收上位機數(shù)據(jù)的時候。當在測試過程中出現(xiàn)上述情況時,計算機串口與單片機通訊測試系統(tǒng)將會利用二進制編碼對整個通訊過程進行位校驗。計算機串口和單片機出現(xiàn)不能通訊的時候,導致這一情況出現(xiàn)的原因有兩種,軟件和硬件。測試系統(tǒng)會有專門的模塊,針對兩者的軟件和硬件進行檢測和處理,處理完成后,還會再一次進行完整的通訊過程。如果在這一次的測試過程中仍然得不到單片機的回應(yīng)信號,就可以證明是通訊過程中硬件電路出現(xiàn)連接問題。最后,如果通訊過程仍然不能顯示正常的信號,那么測試系統(tǒng)會對發(fā)出的數(shù)據(jù)進行位分析,自動對發(fā)送的測試數(shù)據(jù)減少其內(nèi)容,并重新檢測協(xié)議的執(zhí)行。常規(guī)情況下,測試過程是按順序測試的,但是在測試過程中,系統(tǒng)還可以根據(jù)測試的情況和相關(guān)的結(jié)果自動調(diào)整測試順序,提高所有下位機的測試速度和效率。如果計算機串口和某個單片機的通信過程出現(xiàn)問題,測試系統(tǒng)就會跳過出問題的目標機,繼續(xù)向下檢測,并同時記錄下該機的問題。當所有目標機測試完成后,測試系統(tǒng)將會對出現(xiàn)問題的單片機再進行新的測試,進一步確定通訊問題所在。
(三)計算機串口與單片機通訊測試系統(tǒng)的測試過程
在進行測試前,PC機將會先送出測試開始標志,然后開始發(fā)送各下位機的地址信號,以及這一次測試將要發(fā)送的數(shù)據(jù)個數(shù)信息,最后才會連續(xù)發(fā)送出測試數(shù)據(jù)。上位機的串行通訊本系統(tǒng)采用異步串行通訊,該通訊測試程序是順序結(jié)構(gòu)。主要操作是上位機向下位機發(fā)送通訊測試開始標志以及下位機的聯(lián)絡(luò)地址,指令下位機接受數(shù)據(jù)個數(shù)的信息以及測試數(shù)據(jù)的正確顯示。各臺下位機將會采用查詢的方式接收測試數(shù)據(jù),等待接收到數(shù)據(jù),進行輸出的對比。舉個例子,如果輸出與發(fā)送顯示一致的話,則說明計算機串口與單片機通訊測試系統(tǒng)測試成功。下圖是上位機通訊測試系統(tǒng)程序的流程圖:
隨著電子技術(shù)的不斷發(fā)展,計算機串口技術(shù)的使用方法將會變得越來越簡單,通訊過程也會變得越來越方便,發(fā)展至今,已經(jīng)有很多的外設(shè)測試系統(tǒng)都開始利用這一種技術(shù)。在采用計算機串口與單片機通訊技術(shù)前,對計算機串口與單片機通訊測試系統(tǒng)進行簡單的研究和分析,能夠有效提高技術(shù)應(yīng)用的效率和質(zhì)量。通過這一次對計算機串口與單片機通訊測試系統(tǒng)的研究,對計算機串口與單片機兩者之間的通訊過程以及主要測試內(nèi)容都有了更進一步的認識,無論是從理論或?qū)嵺`方面都得到了很大的提高。對于這個測試系統(tǒng)的應(yīng)用,相信在未來電子科技的不斷發(fā)展和推進下,必定為電子領(lǐng)域作出巨大的貢獻。
[1]肖碩.荊剛.李莉娜等.單片機數(shù)據(jù)通信典型應(yīng)用大全[M].中國鐵道出版社.2011
[2]李江全.魏中巖.姚帥等.單片機通信與控制應(yīng)用編程實例[M].中國電力出版社.2012
[3]張秀關(guān).單片機與計算機串口通信實踐[M].電子工業(yè)出版社.2013
[4]于斌.單片機原理與接口技術(shù)[M].人民郵電出版社.2008
G322
B
1007-6344(2015)12-0055-01