<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 計算機串口與單片機通訊測試系統的實(shí)現

計算機串口與單片機通訊測試系統的實(shí)現

作者: 時(shí)間:2012-02-21 來(lái)源:網(wǎng)絡(luò ) 收藏

1 引 言

本文引用地址:http://dyxdggzs.com/article/172038.htm

串行接口標準經(jīng)過(guò)使用和發(fā)展,目前已有多種,不過(guò)都是在RS-232C的基礎上改進(jìn)而形成的。RS-232C標準是美國EIA(電子工業(yè)聯(lián)合會(huì ))與 BELL公司一起開(kāi)發(fā)并于1969年公布的協(xié)議。因此,他作為一種標準,目前已在微機接口中被廣泛采用,他不僅已被內置于每臺,同時(shí)也已被內置于從微處理器到主機的多種類(lèi)型的及其相連設備。而的通訊技術(shù)可以解決多臺下位機的多內容同時(shí)顯示,還可以方便地完成多機通訊技術(shù)、多數據處理等優(yōu)點(diǎn)。但是當同時(shí)用到兩種通信方式時(shí),很可能產(chǎn)生沖突或其他不可預料的錯誤,對開(kāi)發(fā)工作極其不利。

所以,此系統解決了這種開(kāi)發(fā)中的問(wèn)題,依靠軟件仿真數據信號的發(fā)送、接收和多種通訊方式的測試。利用簡(jiǎn)單的硬件連接去檢測通訊是否能正常工作。

11.jpg

2 系統硬件組成

由圖1可看出,該系統主要由軟硬件兩部分構成,硬件平臺是由PC機串口發(fā)送到下位機一條通道。圖中光耦電路完成PC機信號RS-232電平到TTL電平的轉換。當PC機輸入口為RS-232高電平時(shí),二極管VD1及光耦電路導通,使得三極管VT1導通,8031接收口RXD被定位于TTL低電平(0 V);當輸入口為RS-232低電平時(shí),二極管VD1及光耦電路截止,使得三極管VT1截止,RXD被定位于TTL高電平(+5 V)。

另外軟件系統對由PC信號入口(串口)可以輸入信號,對串口和的通訊進(jìn)行字符、數字、顯示等測試。

3 測試方法和內容

由串口向單片機接口進(jìn)行通訊、發(fā)送數據和返回設備狀態(tài),而傳輸協(xié)議的選擇對于通訊雙方至關(guān)重要。針對系統的測試主要是常規測試,所以選擇了面向字符的同步協(xié)議,如圖2所示。

12.jpg

這種協(xié)議的典型代表是IBM公司的二進(jìn)制同步傳輸(BSC)協(xié)議,他的特點(diǎn)是一次傳送若干個(gè)字符組成的數據塊,而不是只傳送一個(gè)字符,并規定了10個(gè)字符作為這個(gè)數據塊的開(kāi)頭與結束標志以及整個(gè)傳輸過(guò)程的控制信息,他們叫做通信控制字。此系統會(huì )在測試時(shí)嚴格依照協(xié)議對單片機接受端進(jìn)行數據發(fā)送,從端口發(fā)送數據校驗碼進(jìn)行測試。而數據前的SYN主要起聯(lián)絡(luò )作用,SOH為序始字符。數據塊將傳送正式的測試字符,測試字符包括數字、漢字、字符等進(jìn)行發(fā)送,單片機(下位機)將進(jìn)行相應顯示,顯示完成后,PC機(上位機)將有本地回顯,回顯出發(fā)送的內容和接收到的數據是否顯示一致。如果顯示一致,則將會(huì )發(fā)出串口和單片機連接成功的標志;如果不能一致顯示,或者出現亂碼以及出現數據錯位,或者單片機難以接受上位機數據。

類(lèi)似這些情況,此系統會(huì )開(kāi)始利用二進(jìn)制編碼進(jìn)行位校驗,當接口和單片機不能通訊時(shí),可能出現硬件或者軟件的情況。會(huì )有專(zhuān)門(mén)的模塊進(jìn)行處理,將會(huì )對通訊過(guò)程進(jìn)行再次發(fā)送,如果發(fā)送后,得不到單片機的回應信號則說(shuō)明硬件電路連接存在問(wèn)題。而出現不能正常顯示等情況,則系統會(huì )對發(fā)出的數據進(jìn)行位分析,自動(dòng)對發(fā)送的測試數據減少其內容,并重新檢測協(xié)議的執行,以確定協(xié)議上無(wú)錯。檢測是否為硬件的電路產(chǎn)生的干擾。因為可測試多臺下位機,所以,數據為廣播方式發(fā)送,測試時(shí)可調整為點(diǎn)-點(diǎn)的發(fā)送方式。而系統會(huì )在接受到正常返回信號后,自動(dòng)正?;仫@。

測試過(guò)程中,系統自動(dòng)調整測試順序,以最快的速度對所有下位機進(jìn)行測試,常規情況下是順序測試。如果某個(gè)單片機和串口通信出現問(wèn)題,則系統會(huì )跳過(guò)出問(wèn)題的目標機,繼續向下檢測,并同時(shí)記錄下該機的問(wèn)題。

在所有目標機被測試完成后,對出問(wèn)題的機器再進(jìn)行點(diǎn)點(diǎn)的測試,以確定其狀況和問(wèn)題所在。如果多目標機出現問(wèn)題,則可對他們同時(shí)采取處理,啟用多個(gè)進(jìn)程進(jìn)行,以提高效率。該系統最多可同時(shí)對8個(gè)目標機進(jìn)行檢測,超過(guò)8個(gè),系統會(huì )自動(dòng)進(jìn)行任務(wù)保存,以進(jìn)行第二批處理。

4 系統軟件具體

軟件系統主要完成的功能是單片機串口的初始化和雙機通訊,完成軟件測試。而單片機初始化包括下面內容:串行控制器SCON的設置,定時(shí)器方式控制寄存器TMOD及T1的定時(shí)初始值的設置,專(zhuān)用寄存器PCON的SMOD位的設置。

13.jpg

在測試開(kāi)始時(shí),PC機先送出測試開(kāi)始標志(本系統用ASCII碼的1AH),接著(zhù)發(fā)送各下位機的地址信號,再送出本次測試要發(fā)送的數據個(gè)數信息,最后是連續發(fā)送出測試數據。下位機采用查詢(xún)方式接受數據,當RI被激活時(shí),讀入數據,判斷是否是1AH,如果是,則繼續等待接受下一個(gè)數據,判斷是否在呼叫自己,若是,則往下接受第3個(gè)數,即本次要接受的數據個(gè)數,并按照其所給信息相應設定往下要連續接受的數據個(gè)05數。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>