單片機與PC機的串行通信設(shè)計解析_第1頁
單片機與PC機的串行通信設(shè)計解析_第2頁
單片機與PC機的串行通信設(shè)計解析_第3頁
單片機與PC機的串行通信設(shè)計解析_第4頁
單片機與PC機的串行通信設(shè)計解析_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、文章編號:(203單片機與PC 機的串行通信設(shè)計李德玉,李兵,段雄(中國礦業(yè)大學(xué)機電工程學(xué)院,江蘇徐州摘要:主要講述在工業(yè)控制現(xiàn)場,如何實現(xiàn)單片機與PC 機之間的數(shù)據(jù)傳送。在分析硬件接口連接的基礎(chǔ)上,詳細探討了如何利用VB 來開發(fā)串行通信程序。關(guān)鍵詞:串行通信;MCS 51;Visual Basic ;編程;RS 232C 中圖號:TP36811文獻標識碼:A1前言現(xiàn)代的工業(yè)控制現(xiàn)場,常常采用分布式控制系統(tǒng)。分布式控制系統(tǒng)主要由上位機和下位機組成,下位機采用運行性能較為可靠的單片機(如MCS 51系列,直接對所控制的系統(tǒng)進行實時數(shù)據(jù)的采集、抽樣、平滑、發(fā)送和接收、控制;而上位機則多采用PC 機

2、(如Pentium 系列,主要負責(zé)對各單片機進行綜合管理,以實現(xiàn)測控系統(tǒng)的自動檢測與控制。隨著PC 機的迅速發(fā)展,PC 機的性能越來越可靠,再加上PC 機應(yīng)用程序的友好性及易開發(fā)性,使得PC 在工業(yè)控制現(xiàn)場得到了廣泛應(yīng)用。單片機收集到信息后發(fā)送給PC 機,PC 機處理后再發(fā)出相應(yīng)的指令給單片機,控制外圍電路工作。這就涉及到一個單片機與PC 機間的串行通信的問題。以下以MCS 51系列中 的8031芯片如何與Pentium MMX 機進行通信加以闡述。2硬件部分設(shè)計2118031芯片的串行口8031芯片內(nèi)有一個全雙工的串行口,它有4種工作方式:方式0,串行接口為移位寄存器I/O 方式;方式1,串

3、行口被控制為8位的異步通信接口傳送一幀信息為10位,其中1位為起始位,8位為數(shù)據(jù)位,1位停止位,波特率可變;方式2和3,則被定義為9位的異步通信接口。傳送一幀信息為11位,其中1位起始位,8位數(shù)據(jù)位,1位是附加的可程控為1或0的第9位數(shù)據(jù),1位停止位。其工作方式的選擇由片內(nèi)的特殊功能寄存器SCON (串行口控制寄存器的設(shè)置完成。212PC 機的RS 232C 串行接口通常,PC 機的主板會提供一個打印機輸出并行端口(LPT ,兩個串行口(COM1、COM2,并行口主要進行短距離的數(shù)據(jù)傳送,至少需要8根數(shù)據(jù)線同時進行數(shù)據(jù)的傳送,因而傳送速率較快。而長距離的數(shù)據(jù)傳送只能采用串行口,串行口只需要一根

4、數(shù)據(jù)線進行數(shù)據(jù)傳送,傳送距離較長,投資較少,但傳送速率較低。RS 232C 也是人們常用的網(wǎng)絡(luò)通信接口。此處,PC 機與單片機的通信便采用該接口。213接口電路為了能使單片機與PC 機之間通信,必須使二者遵循相同的通信協(xié)議。由于下位機的8031芯片串行口,輸入輸出為TT L 邏輯電平,高電平為318V 左右,低電平為013V 左右,這種以TT L 電平傳送數(shù)據(jù)的方式,抗干擾性較差。而上位機的RS 232C 串行口則采用+12V 和-12V 電平方式,使0信號和1信號的電平差別增大,從而增強了抗干擾性。為了解決這一矛盾,可采用一個RS 232C 電平轉(zhuǎn)換器。它由發(fā)送器1488和接收器1489組成

5、(見圖1。圖1串行口連接電路Fig.1Connecting circuit of serial mouth3軟件部分設(shè)計311上位機的通信程序設(shè)計由于PC 機的開發(fā)環(huán)境較多,如:VC +、Delphi 、VB 等等,這些較為優(yōu)秀的軟件開發(fā)環(huán)境為上位機的通信程序的開發(fā)提供了極大的方便。本文主要講述如何用VB 來進行程序設(shè)計。Visul Basic 是微軟公司開發(fā)的軟件開發(fā)環(huán)境,利用其提供的MSC omm.ocx 專用通信控件容許通過串口發(fā)送和接收數(shù)據(jù),再利用一個定時器控件(T imer ,可簡單地實現(xiàn)串行通信。MSC omm 控件介紹(主要屬性,只有VB 企業(yè)版才提供該控件:C ommPort

6、:設(shè)置并返回通信端口號??扇?16;Settings :以字符串的形式設(shè)置或返回波特率、奇偶校驗、數(shù)據(jù)位和停止位;Input :返回并刪除接收緩沖區(qū)中的數(shù)據(jù)流。01煤礦機械2002年第1期PortOpen:設(shè)置或返回通信端口的狀態(tài),也可以打開和關(guān)閉端口。Output:將字符串寫入發(fā)送緩沖區(qū)。C ommEvent:返回最近的通信事件或錯誤。該屬性在設(shè)計時不可用,在運行時是只讀的。Rthreshold:設(shè)置或返回在MSC omm控件,將C ommEvent屬性設(shè)置為comEvReceive并在產(chǎn)生OnC omm事件之前接收的字符數(shù)。Sthreshold:設(shè)置或返回在MSC omm控件,將C omm

7、Event屬性設(shè)置為comEvSend并產(chǎn)生OnC omm 事件之前發(fā)送緩沖區(qū)中允許的最少字符數(shù)。OnC omm事件:當C ommEvent屬性值改變時產(chǎn)生該事件,表明產(chǎn)生了通信事件或通信錯誤。查詢與中斷方式的選擇:在發(fā)送和接收數(shù)據(jù)時,可選擇查詢和中斷方式,這通過設(shè)置VB的Rthreshold和Sthreshold屬性做到。Rthreshold=0時,接收數(shù)據(jù)不產(chǎn)生OnC omm事件,通信事件必須定時主動查詢接收緩沖區(qū)以檢測是否有新數(shù)據(jù)接到。Rhreshold=1或大于1時將產(chǎn)生OnC omm事件,則為中斷方式。事件驅(qū)動通信提供了對串口交互通信強有力的支持,而與之相對應(yīng)的即為中斷方式。程序清單

8、:通用變量聲明Dim Rec(512As Integer接收字節(jié)數(shù)組定義;Dim REcV As Integer字節(jié)存儲的地址指針定義; Dim sent(As Byte發(fā)送的可變數(shù)組定義;上位機通信初始化程序:Private Sub Form Load(MSC omm1.C ommPort=1選擇COM1端口MSC omm1.Settings=”4800,n,8,1”設(shè)置波特率為4800,無奇偶校驗,8位數(shù)據(jù)位,1位停止位;MSC omm1.InputLen=0讀取接收緩沖區(qū)的全部內(nèi)容;MSC omm1.InBufferSize=1024輸入緩沖區(qū)長度設(shè)定為1024;MSC omm1.Out

9、BufferSize=512輸出緩沖區(qū)長度設(shè)定;MSC omm1.Sthreshold=0使用查詢方式發(fā)送數(shù)據(jù); MSC omm1.Rthreshold=1使用中斷方式接收數(shù)據(jù); MSC omm1.PortOpen=1打開通信端口1;End Sub定時器事件Private Sub T imer1T imer(T imer1.Interval=500設(shè)置時間間隔為015s;Rec(REcV=AscB(MSC omm1.Input從接收緩沖區(qū)中取一個字節(jié)并賦給數(shù)組Rec(;REcV=REcV+1地址指針加1;I f REcV512Then REcV=0地址指針清0;T imer1.Interval

10、=0停止定時器;End SubOnC omm(事件處理程序:Private Sub MSC omm1OnC omm(Select Case MSC omm1.C ommEventCase comEvReceive發(fā)生收到數(shù)據(jù)事件執(zhí)行以下命令;MSC omm1.Rthreshold=0不準后續(xù)接收字節(jié)引起OnC omm(事件;可根據(jù)具體問題,在此處添加相應(yīng)的處理程序;Case comEventBreak發(fā)生錯誤時執(zhí)行以下命令;可根據(jù)具體問題,在此處添加相應(yīng)的處理程序;End Sub發(fā)送事件Dim I As IntegerMSC omm1.RTSEnable=1請求發(fā)送;ReDim sent(25

11、6重新定義數(shù)組sent(;For I=0T o255sent(I=INext IMSC omm1.Output=sent數(shù)組數(shù)據(jù)裝入發(fā)送緩沖區(qū)啟動發(fā)送;MSC omm1.RTSEnable=False發(fā)送完畢,撤消請求發(fā)送信號;312下位機通信程序設(shè)計對于單片機的通信程序,可能采用匯編語言進行編寫,由于這部分的程序設(shè)計已經(jīng)相當成熟,在此不再進行詳細的闡述。在所提供的參考文獻2中,已列出了詳細的程序清單,在處理具體的實際問題時,讀者可進行查閱、引用,而無需重復(fù)編程。參考文獻:1徐淑華,等1單片微型機原理及應(yīng)用M1哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1994,612MCS51系列單片機通信工具程序J1電

12、腦開發(fā)與應(yīng)用,1992,(11:4413美國微軟公司1VB610控件參考手冊M1北京:北京希望電子出版社,19991作者簡介:李德玉,1976年生,現(xiàn)在中國礦業(yè)大學(xué)機電工程學(xué)院攻讀碩士學(xué)位,主要從事流體機械方面的研究工作。收稿日期:112002年第1期煤礦機械文章編號:(202擴張式自激超越彈簧離合器強度可靠性優(yōu)化設(shè)計潘承怡(哈爾濱理工大學(xué),黑龍江哈爾濱摘要:以強度可靠度為約束,對擴張式自激超越彈簧離合器進行了優(yōu)化設(shè)計,在滿足強度可靠度的同時,采用計算機可迅速求得一組最佳結(jié)構(gòu)參數(shù)。關(guān)鍵詞:離合器;自激;超越;可靠性;優(yōu)化設(shè)計中圖號:TH13314文獻標識碼:A1引言擴張式自激超越彈簧離合器(以

13、下簡稱離合器結(jié)構(gòu)簡單、重量輕、彈性好、操縱方便,高速條件下接 合平穩(wěn),適于具有自動掛合、自動脫開的機械傳動。文獻1對離合器的結(jié)構(gòu)原理進行了理論分析。由于離合器彈簧所受應(yīng)力及其強度均呈一定分布狀態(tài),且具有很大變異性,如采用常規(guī)設(shè)計法顯然比較粗糙;而只采用可靠性設(shè)計雖然比較接近工程實際,但又不能取得最佳結(jié)構(gòu)參數(shù)。為此提出對離合器進行強度可靠性優(yōu)化設(shè)計,使設(shè)計的離合器在滿足強度可靠性指標的同時,取得一組最佳結(jié)構(gòu)參數(shù)。2離合器彈簧受載情況與應(yīng)力和強度分布離合器結(jié)構(gòu)如圖1所示,主要結(jié)構(gòu)參數(shù)為彈簧絲直徑d 、彈簧中徑D 、彈簧與主動殼體和被動殼體的接觸圈數(shù)為N 。工作時,主動軸1通過鍵2帶動主動殼體3連著

14、彈簧旋向旋轉(zhuǎn),使彈簧圈擴張扭開,與兩殼體脹緊接觸,離合器自動接合,此時彈簧絲所受應(yīng)力為壓應(yīng)力。由文獻2知,彈簧絲所受應(yīng)力及強度均為正態(tài)分布,其強度可靠度的確定應(yīng)按正態(tài)分布進行計算。為了求得最佳結(jié)構(gòu)參數(shù),故采用強度可靠性優(yōu)化設(shè)計。3建立數(shù)學(xué)模型311建立目標函數(shù)離合器的體積或重量取決于彈簧的主要結(jié)構(gòu)參數(shù),為使離合器的重量最輕,取設(shè)計變量X =x 1,x 2,x 3T=d ,D ,N T,建立如下目標函數(shù)基金項目:機械工業(yè)部教育司科技基金項目(min F (X =4d 2(D (2N =22x 21x 2x 3(1式中彈簧絲材料的比重。圖1擴張式自激超越彈簧離合器結(jié)構(gòu)簡圖Fig.1Schemati

15、c diagram of structure for self-energizingoverrunning spring clutch11主動軸21鍵31主動殼體41彈簧51密封圈61被動殼體71被動軸312建立約束條件(1強度可靠度約束條件由文獻1得,彈簧絲所受壓應(yīng)力的數(shù)學(xué)期望s =4(D/d -14(D/d -432T (e 2Nf -1d3+8Td 2D (2式中T 離合器所傳遞的扭矩;f 彈簧與兩殼體間的摩擦系數(shù)。為了計算彈簧的可靠度,首先需求出可靠度系數(shù)Z R =c -n s2c+2s(3式中c 彈簧絲承載能力的數(shù)學(xué)期望;c 彈簧絲承載能力均方差;s 彈簧絲所受壓應(yīng)力均方差;n 強度儲備系數(shù),一般取n =1111125。Serial communication design bet w een SCM and PCL I De-yu ,L I Bing ,D UAN Xiong(Mechanical and Electronic Engineering C ollege of China University of Mining &Technology ,Xuzhou ,China Abstract :The paper mainly presents how to realize the data transfer between SCM and PC

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論