51單片機與PC機通信概述_第1頁
51單片機與PC機通信概述_第2頁
51單片機與PC機通信概述_第3頁
51單片機與PC機通信概述_第4頁
51單片機與PC機通信概述_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、專業(yè)綜合實習(xí)報告專 業(yè): 電子信息工程 年 級: 2013級 指導(dǎo)教師: 學(xué) 生: 目錄一:實驗項目名稱二:前言三:項目內(nèi)容及要求四:串口通信原理五:設(shè)計思路 5.1虛擬串口的設(shè)置 5.2下位機電路和程序設(shè)計 5.3串口通信仿真六:電路原理框圖七:相關(guān)硬件及配套軟件7.1 AT89C51器件簡介7.2 COMPIN簡介7.3 MAX232器件簡介7.4 友善串口調(diào)試助手7.5 虛擬串口軟件Virtual Serial Port Driver 6.9八:程序設(shè)計九:proteus仿真調(diào)試十:總結(jié)十一:參考文獻一:實驗項目名稱:基于51單片機的單片機與PC機通信二:前言在國內(nèi)外,以PC機作為上位機

2、,單片機作為下位機的控制系統(tǒng)中,PC機通常以軟件界面進行人機交互,以串行通信方式與單片機進行積極交互,而單片機系統(tǒng)根據(jù)被控對象配置相應(yīng)的前向,后向信息通道,工作時作為主控機測對象,作為被控機接受PC機監(jiān)督,指揮,定期或受命向上位機提供對象及本身的工作狀態(tài)信息。 目前,隨著集成電路集成度的增加,電子計算機向微型化和超微型化方向發(fā)展,微型計算機已成為導(dǎo)彈,智能機器人,人類宇宙和太空和太空奧妙復(fù)雜系統(tǒng)不可缺少的智能部件。在一些工業(yè)控制中,經(jīng)常需要以多臺單片機作為下位機執(zhí)行對被控對象的直接控制,以一臺PC機為上位機完成復(fù)雜的數(shù)據(jù)處理,組成一種以集中管理、分散控制為特點的集散控制系統(tǒng)。

3、0;為了提高系統(tǒng)管理的先進性和安全性,計算機工業(yè)自動控制和監(jiān)測系統(tǒng)越來越多地采用集總分算系統(tǒng)。較為常見的形式是由一臺做管理用的上位主計算機(主機)和一臺直接參與控制檢測的下位機(單片機)構(gòu)成的主從式系統(tǒng),主機和從機之間以通訊的方式來協(xié)調(diào)工作。主機的作用一是要向從機發(fā)送各種命令及參數(shù):二是要及時收集、整理和分析從機發(fā)回的數(shù)據(jù),供進一步的決策和報表。從機被動地接受、執(zhí)行主機發(fā)來的命令,并且根據(jù)主機的要求向主機回傳相應(yīng)煩人實時數(shù)據(jù),報告其運行狀態(tài)。 用串行總線技術(shù)可以使系統(tǒng)的硬件設(shè)計大大簡化、系統(tǒng)的體積減小、可靠性提高。同時,系統(tǒng)的更改和擴充極為容易。MCS-51系列單片機,由于內(nèi)部帶有一

4、個可用于異步通訊的全雙工的穿行通訊接口,陰齒可以很方便的構(gòu)成一個主從式系統(tǒng)。 串口是計算機上一種非常通用的設(shè)備通訊協(xié)議,大多數(shù)計算機包容兩個基于RS232的串口。串口同時也是儀器儀表設(shè)備通過用的通訊協(xié)議,很多GPIB兼容的設(shè)備也帶有RS-232口。同時串口通訊協(xié)議也可以用于獲取遠程采集設(shè)備數(shù)據(jù)。所以,深入的理解學(xué)習(xí)和研究串口通信相關(guān)知識是非常必要的。此次畢業(yè)設(shè)計選題為“PC機與MCS-51單片機的串口通訊”,使用51單片機來實現(xiàn)一個主從式的總線通訊系統(tǒng)。通過此次設(shè)計,對串口通訊的原理和應(yīng)用融會貫通,為以后的時間工作儲備知識和研究方法。3 項目內(nèi)容及要求基于51單片機,在相關(guān)軟件的輔助

5、下,建立起單片機與PC機之間的通信機制,使用proteus仿真軟件進行仿真,要求可從PC機上發(fā)送數(shù)字及英文字母出來,由單片機接收并在虛擬軟件顯示屏上顯現(xiàn)出來,有開關(guān)控制數(shù)字或者是字母的發(fā)送。四:串口通信原理單片機與外圍部件或設(shè)備的數(shù)據(jù)傳輸方式有并行通信和串行通信兩種方式,本實驗主要通過串行通信方式進行單片機與PC機之間的數(shù)據(jù)傳輸,故略去并行通信方式的介紹。串行通信是指計算機主機與外設(shè)之間以及主機系統(tǒng)與主機系統(tǒng)之間數(shù)據(jù)的串行傳送。使用一條數(shù)據(jù)線,將數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個固定的時間長度。其只需要少數(shù)幾條線就可以在系統(tǒng)間交換信息,特別適用于計算機與計算機、計算機與外設(shè)之間的遠距離

6、通信。串口通信時,發(fā)送和接收到的每一個字符實際上都是一次一位的傳送的,每一位為1或者為0。這種傳送方式具有方法簡單,靈活性強,可靠性高等特點,同時需要的傳送線少,適于遠距離傳送。但是,由于數(shù)據(jù)是按位發(fā)送出去的,因此這種數(shù)據(jù)傳送方式比并行通信速率低。串行通信又可以分為同步通信和異步通信兩種方式。同步通信是指同步通信是一種比特同步通信技術(shù),要求發(fā)收雙方具有同頻同相的同步時鐘信號,只需在傳送報文的最前面附加特定的同步字符,使發(fā)收雙方建立同步,此后便在同步時鐘的控制下逐位發(fā)送/接收。進行數(shù)據(jù)傳輸時,發(fā)送和接收雙方要保持完全的同步,因此,要求接收和發(fā)送設(shè)備必須使用同一時鐘。相對于同步通信,異步通信在發(fā)送

7、字符時,所發(fā)送的字符之間的時隙可以是任意的,當(dāng)然,接收端必須時刻做好接收的準(zhǔn)備(如果接收端主機的電源都沒有加上,那么發(fā)送端發(fā)送字符就沒有意義,因為接收端根本無法接收)。發(fā)送端可以在任意時刻開始發(fā)送字符,因此必須在每一個字符的開始和結(jié)束的地方加上標(biāo)志,即加上開始位和停止位,以便使接收端能夠正確地將每一個字符接收下來。內(nèi)部處理器在完成了相應(yīng)的操作后,通過一個回調(diào)的機制,以便通知發(fā)送端發(fā)送的字符已經(jīng)得到了回復(fù)。5 設(shè)計思路 Pc機和單片機的串口通信系統(tǒng)的調(diào)試一般通過一根串口連接線把帶有軟件上位機的(Pc機)和下位機(即單片機)連接起來進行,用這種調(diào)試串口通信程序比較煩瑣。本文介紹一種用純軟件實現(xiàn)PC

8、機和單片機串口通信的仿真的方法,所有的調(diào)試都在一臺電腦上通過軟件完成。上位機由Pc機代替,下位機由用PROTEUS軟件設(shè)計的AT89C51單片機仿真電路代替串口及連接通過由虛擬串口軟Virtual Serial Port Driver 6.9進行連接。5.1虛擬串口的設(shè)置 安裝虛擬串口軟件Virtual Serial Port Driver 6.9,然后打開,左邊上面的COMl是電腦上實際的物理串口,下面是虛擬串口,在沒有設(shè)置前是空的。因為電腦最多有兩個物理串口,將圓圈里的串口改為COMl,COM3,點擊Add pair,這就表示,利用這個軟件將計算機的串口l和模擬串口3聯(lián)接了起來,這兩個串口

9、可以進行通信了。5.2下位機電路和程序設(shè)計 用Proteus69設(shè)計的仿真電路只用了幾個元器件。由于兩個虛擬串口采用相同的標(biāo)準(zhǔn)電平,因此電路中用來作,ITllL電平向RS232電平轉(zhuǎn)換的電路在仿真電路中可以省略。單片機的實例程序用KeilC51語言編寫,串口接收數(shù)據(jù)采用中斷的方式,發(fā)送數(shù)據(jù)采用外部中斷的方式,用按鈕開關(guān)控制數(shù)據(jù)的發(fā)送。5.3串口通信仿真打開友善串口調(diào)試助手,修改串口為COM3,波特率為9600,校驗位為None,數(shù)據(jù)位8,停止位為1。用Proteus打開仿真電路文件,先設(shè)置AT89C51的屬性,右擊選中AT89C5l,再用左鍵單擊AT89C51,在出現(xiàn)的屬性對話框里點擊Prog

10、ram File后的打開按鈕,找到自Keil源程序編譯好的HEX文件后單擊打開,然后在Clock Frequency后填寫12M。單擊OK接下來打開串口COMPIN的屬性對話框,在PhsicalPort后選擇COMl,波特率為9600,校驗位為None,數(shù)據(jù)位8,停止位為l。設(shè)置好后,啟動仿真就可以實現(xiàn)電腦和單片機串口通信的仿真了。首先演示一下單片機向計算機的串口發(fā)送數(shù)據(jù)。撥動開關(guān)向右撥,運行,按一下開關(guān)。虛擬串口終端最示單片機向計算 機COMl發(fā)送的數(shù)據(jù),而計算機的COMI已經(jīng)和COM3相連,因軟件PROTEUS 所此可以在COM3收到單片機發(fā)送給COMi的數(shù)據(jù)。接著冉演示一下計算機的串口向

11、單片機發(fā)送數(shù)據(jù)。撥動開關(guān)向左撥,在口調(diào)試助手中輸入想要發(fā)送的數(shù)據(jù),點擊手動則字符 串由COM3發(fā)送給了計算機的COMI。再由COMI發(fā)送給單片 機。單片機的程序里面有回顯功能,將接 送給了COM因此可以在COM3的接受框內(nèi)能夠接收到會顯得字符串。六電路原理框圖7 相關(guān)硬件及配套軟件7.1 AT89C51器件簡介AT89C51是一種帶4K字節(jié)FLASH存儲器(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的

12、可擦除只讀存儲器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃速存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C051是它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。7.2 COMPIN簡介COM口( cluster communication port )即串行通訊端口。微機上的com口通常是9針,也有25針的接口,最大速率115200bps。通常用于連接鼠標(biāo)(串口)及通訊設(shè)備(如連接外置式MODEM進行數(shù)據(jù)通訊或

13、一些工廠的CNC機接口)等。一般主板外部只有一個COM口,機箱后面和并口一起的那個九孔輸出端(梯形),就是COM1口,COM2口一般要從主板上插針引出。并口是最長的那個梯形口。本實驗主要應(yīng)用九針接口。7.3 MAX232器件簡介MAX232是一種雙組驅(qū)動器/接收器,片內(nèi)含有一個電容性電壓發(fā)生器以便在單5V電源供電時提供EIA/TIA-232-E電平。當(dāng)用單片機和PC機通過串口進行通信,盡管單片機有串行通信的功能,但單片機提供的信號電平和RS232的標(biāo)準(zhǔn)不一樣,因此要通過max232這種類似的芯片進行電平轉(zhuǎn)換。7.4友善串口調(diào)試助手一個強大而穩(wěn)定的串口調(diào)試助手,支持常用的110-921600bp

14、s波特率及自定義波特率,波特率最高可支持8000000(串口硬件有關(guān)),可適應(yīng)于非標(biāo)準(zhǔn)波特率。支持串口自動識別,能設(shè)置校驗、數(shù)據(jù)位和停止位,能以ASCII碼或十六進制接收或發(fā)送任何數(shù)據(jù)或字符,可以任意設(shè)定自動發(fā)送周期,并能將接收數(shù)據(jù)保存成文本文件,能發(fā)送任意大小的文本文件。7.5虛擬串口軟件Virtual Serial Port Driver 6.9簡介該軟件安裝成功后可以虛擬出多個串口用于實驗,虛擬串口都是成對出現(xiàn)使用的,最大限度的方便了用戶數(shù)的需求。8 程序設(shè)計注:本程序采用C語言編寫,程序如下:#include <reg52.h>#define uint unsigned i

15、nt#define uchar unsigned charuchar Receive_Buffer101;uchar Buf_Index = 0;uchar code DSY_CODE=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;void Delay(uint x) uchar i;while(x-) for(i=0;i<120;i+);void main() uchar i;P0 = 0x00;Receive_Buffer0=i;SCON = 0x50;TMOD = 0x20;PCON = 0x00;TH1 = 0xfd;TL1 = 0xfd;EA = 1;EX0 = 1;IT0 = 1;ES = 1;IP = 0x01;TR1 = 1;while(1) for(i=0;i<100;i+) if(Receive_Bufferi=-1) break;P0 = DSY_CODEReceive_Bufferi;Delay(200); Delay(200);void Serial_INT() interrupt 4 uchar c;if(RI=0) return;ES = 0;RI = 0;c = SBUF;if(c>='0' && c<='9&#

溫馨提示

  • 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論