




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、1成績:#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*實(shí)踐教學(xué)#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*#J*XXXXXXXX學(xué)院XXX年XXXX季學(xué)期XXXXXX課程設(shè)計(jì)題目51單片機(jī)雙機(jī)串行通信設(shè)計(jì)專業(yè)班級(jí):姓名:_學(xué)號(hào):指導(dǎo)教師:摘要通信技術(shù)根據(jù)傳輸方式的不同,分為串行通信和并行通信,而單片機(jī)在現(xiàn)代通信中非常實(shí)用。本次課程設(shè)計(jì)就是要利用單片機(jī)來完成一個(gè)系統(tǒng),實(shí)現(xiàn)單片機(jī)雙機(jī)串行通信。通信的結(jié)果用數(shù)碼管進(jìn)行顯示,數(shù)碼管采用查表方式顯示。兩個(gè)單片機(jī)之間采用RS232接口標(biāo)準(zhǔn)
2、進(jìn)行雙機(jī)通信。在通信過程中,使用通信協(xié)議進(jìn)行通信,實(shí)現(xiàn)兩個(gè)單片機(jī)之間串行異步通信。關(guān)鍵詞:51單片機(jī),串行通信,RS-232接口;目錄TOC o 1-5 h z HYPERLINK l bookmark6 o Current Document 前言1 HYPERLINK l bookmark8 o Current Document 第一章基本原理2 HYPERLINK l bookmark10 o Current Document 第二章系統(tǒng)分析3 HYPERLINK l bookmark12 o Current Document 2.1單片機(jī)3 HYPERLINK l bookmark14
3、o Current Document 2.2串行通信3 HYPERLINK l bookmark16 o Current Document 2.3RS-232接口標(biāo)準(zhǔn)5 HYPERLINK l bookmark44 o Current Document 第三章系統(tǒng)設(shè)計(jì)及系統(tǒng)調(diào)試9 HYPERLINK l bookmark46 o Current Document 3.1設(shè)計(jì)方案9 HYPERLINK l bookmark48 o Current Document 3.2硬件設(shè)計(jì)9 HYPERLINK l bookmark50 o Current Document 3.3軟件設(shè)計(jì)12 HYPER
4、LINK l bookmark52 o Current Document 3.4聯(lián)合調(diào)試20 HYPERLINK l bookmark54 o Current Document 總結(jié)21 HYPERLINK l bookmark56 o Current Document 參考文獻(xiàn)221前言近年來,在自動(dòng)化控制和智能儀器儀表中,單片機(jī)的應(yīng)用越來越廣泛。雖然MCS單片機(jī)內(nèi)部包含有豐富的硬件資源,但是對(duì)于一些復(fù)雜的單片機(jī)應(yīng)用系統(tǒng)來說,光靠單個(gè)的單片機(jī)資源遠(yuǎn)遠(yuǎn)不能滿足系統(tǒng)要求,通常需要對(duì)單片機(jī)進(jìn)行外部擴(kuò)展。例如擴(kuò)展I/O口,擴(kuò)展存儲(chǔ)器,擴(kuò)展定時(shí)/計(jì)數(shù)器等,更有甚者還需要擴(kuò)展單片機(jī)。那么一個(gè)應(yīng)用系統(tǒng)就可
5、能用到了兩個(gè)或兩個(gè)以上的單片機(jī),而這些單片機(jī)就需要通過互聯(lián)來實(shí)現(xiàn)彼此間的數(shù)據(jù)通信oMCS單片機(jī)具有串行口,利用串行口實(shí)現(xiàn)數(shù)據(jù)通信。根據(jù)單片機(jī)端口內(nèi)部的結(jié)構(gòu)特點(diǎn),這些端口的端口線可以直接相連,從而使兩個(gè)單片機(jī)之間并行通信不用另外的硬件電路設(shè)備。設(shè)計(jì)時(shí),也可以根據(jù)不同的使用要求采用不同的并行連接方法。51單片機(jī)的開發(fā)除了硬件支持外,同樣離不開軟件。用匯編語言或C語言等高級(jí)語言編寫的源程序必須轉(zhuǎn)換為機(jī)器碼才能被執(zhí)行。目前十分流行的是Keil8051C編譯器。它提供了集成開發(fā)環(huán)境,包括C編譯器、宏匯編、連接器、庫管理和仿真調(diào)試器。利用KeilCuVision編寫的程序可直接調(diào)用編譯器編譯,連接后可直接
6、運(yùn)行。學(xué)生結(jié)合自己的實(shí)際情況,選擇適合的方法來完成51單片機(jī)與PC機(jī)的串口通信。該題目概括了通信原理、單片機(jī)原理等課程的主要知識(shí)點(diǎn),讓人們對(duì)當(dāng)代通信技術(shù)有一定程度的了解,知道我們是怎么利用單片機(jī)來進(jìn)行串行通信的。 第一章基本原理串口通訊對(duì)單片機(jī)而言意義重大,不但可以實(shí)現(xiàn)將單片機(jī)的數(shù)據(jù)傳輸?shù)接?jì)算機(jī)端,而且也能實(shí)現(xiàn)計(jì)算機(jī)對(duì)單片機(jī)的控制。由于其所需電纜線少,接線簡單,所以在較遠(yuǎn)距離傳輸中,得到了廣泛的運(yùn)用。單片機(jī)有一個(gè)全雙工的串行通訊口,所以單片機(jī)和計(jì)算機(jī)之間可以方便地進(jìn)行串口通訊。進(jìn)行串行通訊時(shí)要滿足一定的條件,比如計(jì)算機(jī)的串口是RS232電平的,而單片機(jī)的串口是TTL電平的,兩者之間必須有一個(gè)電
7、平轉(zhuǎn)換電路,我們采用了專用芯片MAX232進(jìn)行轉(zhuǎn)換,雖然也可以用幾個(gè)三極管進(jìn)行模擬轉(zhuǎn)換,但是還是用專用芯片更簡單可靠。利用AT89C51芯片、復(fù)位電路、時(shí)鐘電路、LED數(shù)碼管等,使A機(jī)控制B機(jī)的兩個(gè)LED閃爍,B機(jī)控制A機(jī)的數(shù)碼管加一顯示。使用DS18B20溫度傳感器,由B機(jī)測量溫度后由A機(jī)顯示.把P1口的高7位與數(shù)碼管相連,綠燈表示通行方向。P2口與LED顯示器相連,用來輸出顯示的數(shù)字。系統(tǒng)的原理框圖如下:外圍電路圖1系統(tǒng)原理框圖AT89C51AT89C51外圍電路圖2原理圖第二章系統(tǒng)分析2.1單片機(jī)單片機(jī)是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器CPU隨
8、機(jī)存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、多種I/O口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能(可能還包括顯示驅(qū)動(dòng)電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。在我國,單片機(jī)已經(jīng)不是一個(gè)陌生的名詞,它的出現(xiàn)是近代計(jì)算機(jī)技術(shù)發(fā)展史上的一個(gè)重要里程碑,因?yàn)閱纹瑱C(jī)的誕生標(biāo)志著計(jì)算機(jī)正式形成了通用計(jì)算機(jī)系統(tǒng)和嵌入式計(jì)算機(jī)系統(tǒng)兩大分支。在單片機(jī)誕生之前,為了滿足工程對(duì)象的嵌入式應(yīng)用要求,只能將通用計(jì)算機(jī)進(jìn)行機(jī)械加固、電氣加固后嵌入到對(duì)象系統(tǒng)中構(gòu)成。由于通用計(jì)算機(jī)的巨大體積和高成本,無法嵌入到大多數(shù)對(duì)象體系中。單片機(jī)則應(yīng)嵌入式應(yīng)用而誕生。單片機(jī)的單芯片的微小體積和
9、極低的成本,可廣泛的嵌入到玩具、家用電器、機(jī)器人、儀器儀表、汽車電子系統(tǒng)、工業(yè)控制單元、辦公自動(dòng)化設(shè)備、金融電子系統(tǒng)、艦船、個(gè)人信息終端及通訊產(chǎn)品中,成為現(xiàn)代電子系統(tǒng)中最重要的智能化工具。單片機(jī)作為最典型的嵌入式系統(tǒng),它的成功應(yīng)用推動(dòng)了嵌入式系統(tǒng)的發(fā)展。近年來。除了各種類型的工控機(jī),各種以通用微處理器構(gòu)成的計(jì)算機(jī)主模板快、以通用處理器為核,片內(nèi)擴(kuò)展一些外圍功能電路單元構(gòu)成的嵌入式微處理器,甚至單片形式的PC及等,都實(shí)現(xiàn)了嵌入式應(yīng)用,成為嵌入式系統(tǒng)的龐大家族。作為典型的嵌入式系統(tǒng)的單片機(jī),在我國大規(guī)模應(yīng)用已有十余年歷史。在全國高等工科院校中,已普遍開設(shè)單片機(jī)及相關(guān)課程。單片機(jī)已成為電子系統(tǒng)中最普
10、遍的應(yīng)用手段。除了單設(shè)課程外,在涉及的許多環(huán)節(jié),如課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)、研究生論文課題中,單片機(jī)系統(tǒng)都是最廣泛的應(yīng)用手段。目前,許多單片機(jī)教材都Shiite以80C51系列為基礎(chǔ)來講述其原理及應(yīng)用的。這是因?yàn)镸CS-51系列單片機(jī)奠定了8位單片機(jī)的基礎(chǔ),形成了單片機(jī)的經(jīng)典體系結(jié)構(gòu)。單片機(jī)是現(xiàn)代計(jì)算機(jī)、電子技術(shù)的新興領(lǐng)域,無論是單片機(jī)本身還是單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)方案都會(huì)隨著時(shí)代不斷發(fā)生變變化。2.2串行通信在通信領(lǐng)域內(nèi),有兩種數(shù)據(jù)通信方式:并行通信和串行通信。隨著計(jì)算機(jī)網(wǎng)絡(luò)化和微機(jī)分級(jí)分布式應(yīng)用系統(tǒng)的發(fā)展,通信的功能越來越重要。而憑借著其改善的信號(hào)完整性和傳播速度,串行通信總線正在變得越來越普遍。在
11、遠(yuǎn)程通信和計(jì)算機(jī)科學(xué)中,串行通信是指在計(jì)算機(jī)總線或其他數(shù)據(jù)通道上,每次傳輸一個(gè)位元數(shù)據(jù),并連續(xù)進(jìn)行以上單次過程的通信方式。與之對(duì)應(yīng)的是并行通信,它在串行端口上通過一次同時(shí)傳輸若干位元數(shù)據(jù)的方式進(jìn)行通信。一位接一位地順序傳送。這樣一個(gè)字節(jié)的數(shù)據(jù)要分8次由低位到高位按順序一位位地傳送。由此可見,串行通信的特點(diǎn)如下:1、節(jié)省傳輸線,這是顯而易見的。尤其是在遠(yuǎn)程通信時(shí),此特點(diǎn)尤為重要。這也是串行通信的主要優(yōu)點(diǎn);2、數(shù)據(jù)傳送效率低。與并行通信比,這也這是顯而易見的。這也是串行通信的主要缺點(diǎn)。同步和異步都屬于串行數(shù)據(jù)傳送方式,但二者的傳送格式有所不同。同步方式的一幀內(nèi)含有很多數(shù)據(jù)位,而異步方式一幀內(nèi)只含有
12、幾個(gè)數(shù)據(jù)位。如果要傳送一大堆數(shù)據(jù),同步方式只給這串?dāng)?shù)據(jù)進(jìn)行一次外包裝(即添加“頭幀”、“尾幀”、“校驗(yàn)”幀),而異步方式在傳送這串?dāng)?shù)據(jù)時(shí)則要對(duì)數(shù)據(jù)的每一個(gè)字節(jié)分別加以包裝(即添加“頭”位、“尾”位和校驗(yàn))。顯然在相同的數(shù)據(jù)傳輸波特率下,同步方式比異步方式的傳送速度快,但同步方式要求收發(fā)雙方在整個(gè)事件傳送過程中始終保持嚴(yán)格同步,這將增加硬件上的難度,而異步通信只要求每幀(字節(jié))的傳送中短時(shí)間保持同步即可,實(shí)現(xiàn)起來要容易得多。串行通信被用于長距離通信以及大多數(shù)計(jì)算機(jī)網(wǎng)絡(luò),在這些應(yīng)用場合里,電纜和同步化使并行通信實(shí)際應(yīng)用面臨困難。憑借著其改善的信號(hào)完整性和傳播速度,串行通信總線正在變得越來越普遍,甚
13、至在短程距離的應(yīng)用中,其優(yōu)越性已經(jīng)開始超越并行總線不需要串行化元件等缺點(diǎn)。串行通信的分類:同步通信和異步通信。所謂同步通信,是指數(shù)據(jù)傳送是以數(shù)據(jù)塊(一組字符)為單位,字符與字符之間、字符內(nèi)部的位與位之間都同步同步串行通信的特點(diǎn)可以概括為:以數(shù)據(jù)塊為單位傳送信息;在一個(gè)數(shù)據(jù)塊(信息幀)內(nèi),字符與字符間無間隔;接收時(shí)鐘與發(fā)送進(jìn)鐘嚴(yán)格同步。所謂異步通信,是指數(shù)據(jù)傳送以字符為單位,字符與字符間的傳送是完全異步的,位與位之間的傳送基本上是同步的異步串行通信的特點(diǎn)可以概括為:以字符為單位傳送信息;相鄰兩字符間的間隔是任意長;接收時(shí)鐘和發(fā)送時(shí)鐘只要相近就可以。異步方式特點(diǎn)簡單的說就是:字符間異步,字符內(nèi)部各
14、位同步。兩臺(tái)機(jī)器的通信方式可分為單工通信、半雙工通信、雙工通信,他們的通信原理及通信方式為:單工通信:是指消息只能單方向傳輸?shù)墓ぷ鞣绞?。單工通信信道是單向信道,發(fā)送端和接收端的身份是固定的,發(fā)送端只能發(fā)送信息,不能接收信息;接收端只能接收信息,不能發(fā)送信息,數(shù)據(jù)信號(hào)僅從一端傳送到另一端,即信息流是單方向的。通信雙方采用“按一一講”(PushToTalk,PTT)單工通信屬于點(diǎn)到點(diǎn)的通信。根據(jù)收發(fā)頻率的異同,單工通信可分為同頻通信和異頻通信。半雙工通信:這種通信方式可以實(shí)現(xiàn)雙向的通信,但不能在兩個(gè)方向上同時(shí)進(jìn)行,必須輪流交替地進(jìn)行。也就是說,通信信道的每一段都可以是發(fā)送端,也可以是接端。但同一時(shí)
15、刻里,信息只能有一個(gè)傳輸方向。如日常生活中的例子有步話機(jī)通信等。雙工通信:雙工通信是指在同一時(shí)刻信息可以進(jìn)行雙向傳輸,和打電話一樣,說的同時(shí)也能聽,邊說邊聽。這種發(fā)射機(jī)和接收機(jī)分別在兩個(gè)不同的頻率上(兩個(gè)頻率差有一定要求)能同時(shí)進(jìn)行工作的雙工機(jī)也稱為異頻雙工機(jī)。雙工機(jī)的特點(diǎn)是使用方便,但線路設(shè)計(jì)較復(fù)雜,價(jià)格也較高。2.3RS-232接口標(biāo)準(zhǔn)RS-232C標(biāo)準(zhǔn)(協(xié)議)的全稱是EIA-RS-232C標(biāo)準(zhǔn),定義是“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)”它是在1970年由美國電子工業(yè)協(xié)會(huì)(EIA)聯(lián)合貝爾系統(tǒng)、調(diào)制解調(diào)器廠家及計(jì)算機(jī)終端生產(chǎn)廠家共同制定的用于
16、串行通訊的標(biāo)準(zhǔn)。其中EIA(ElectronicIndustryAssociation)代表美國電子工業(yè)協(xié)會(huì),RS(Recommendedstandard)代表推薦標(biāo)準(zhǔn),232是標(biāo)識(shí)號(hào),C代表RS232的最新一次修改。1、RS-232C接口引腳定義由于RS-232C并未定義連接器的物理特性,因此,出現(xiàn)了DB-25、DB-15和DB-9各種類型的連接器,其引腳的定義也各不相同。下面是常用的DB-25和DB-9連接器接口圖:圖3DB25和DB9引腳圖舊制JIS名稱新制JIS名稱全稱說明FGSGFrameGround連到機(jī)器的接地線TXDSDTransmittedData數(shù)據(jù)輸出線RXDRDRece
17、ivedData數(shù)據(jù)輸入線RTSRSRequesttoSend要求發(fā)送數(shù)據(jù)CTSCSCleartoSend回應(yīng)對(duì)方發(fā)送的RTS的發(fā)送許可,告訴對(duì)方可以發(fā)送DSRDRDataSetReady告知本機(jī)在待命狀態(tài)DTRERDataTerminalReady告知數(shù)據(jù)終端處于待命狀態(tài)CDCDCarrierDetect載波檢出,用以確認(rèn)是否收到Modem的載波SGSGSignalGround信號(hào)線的接地線(嚴(yán)格的說是信號(hào)線的零標(biāo)準(zhǔn)線)RS-232C規(guī)標(biāo)準(zhǔn)接口有25條線,4條數(shù)據(jù)線、11條控制線、3條定時(shí)線、7條備用和未定義線,常用的只有9根,它們是:狀態(tài)線:數(shù)據(jù)準(zhǔn)備就緒(Datasetready-DSR)
18、有效時(shí)(ON)狀態(tài),表明數(shù)據(jù)通信設(shè)備可以使用。(DCE-DTE)數(shù)據(jù)終端就緒(Datasetready-DTR)有效時(shí)(ON)狀態(tài),表明數(shù)據(jù)終端設(shè)備可以使用。(DTE-DCE)這兩個(gè)信號(hào)有時(shí)連到電源上,上電就立即有效。這兩個(gè)設(shè)備狀態(tài)信號(hào)有效,只表示設(shè)備本身可用,并不說明通信鏈路可以開始進(jìn)行通信了,能否開始進(jìn)行通信要由下面的控制信號(hào)決定。(2)聯(lián)絡(luò)線請(qǐng)求發(fā)送(Requesttosend-RTS)DTE準(zhǔn)備向DCE發(fā)送數(shù)據(jù),DTE使該信號(hào)有效(ON狀態(tài)),通知DCE要發(fā)送數(shù)據(jù)給DCE了。(DTE-DCE)允許發(fā)送(Cleartosend-CTS)是對(duì)RTS的響應(yīng)信號(hào)。當(dāng)DCE已準(zhǔn)備好接收DTE傳來
19、的數(shù)據(jù)時(shí),使該信號(hào)有效,通知DTE開始發(fā)送數(shù)據(jù)。(DCE-DTE)RTS/CTS請(qǐng)求應(yīng)答聯(lián)絡(luò)信號(hào)是用于半雙工MODEM系統(tǒng)中發(fā)送方式和接收方式之間的切換。在全雙工系統(tǒng)中,因配置雙向通道,故不需要RTS/CTS聯(lián)絡(luò)信號(hào),使其變高。(3)數(shù)據(jù)線發(fā)送數(shù)據(jù)(Transmitteddata-TxDDTE發(fā)送數(shù)據(jù)到DCE。(DTE-DCE)接收數(shù)據(jù)(Receiveddata-RxD)DCE發(fā)送數(shù)據(jù)到DTE(DCE-DTE)(4)地線有兩根線SG、PG信號(hào)地和保護(hù)地信號(hào)線。(5)其余載波檢測(CarrierDetection-CD)用來表示DCE已接通通信鏈路,告知DTE準(zhǔn)備接收數(shù)據(jù)。(DCE-DTE)振鈴
20、指示(Ringing-RI)當(dāng)DCE收到交換臺(tái)送來的振鈴呼叫信號(hào)時(shí),使該信號(hào)有效(ON狀態(tài)),通知DTE,已被呼叫。(DCE-DTE)通常的應(yīng)用系統(tǒng)中,往往是CPU和I/O設(shè)備之間傳送信息,兩者都是DTE,比如PC和色溫計(jì),PC和單片機(jī)之間的通信,雙方都能發(fā)送和接收,它們的連接只需要使用三根線即可,即RXD,TXD和GND,連接方式見圖4。圖4“三線連接法”2、RS-232C的電氣特性(1)邏輯電平在TXD和RXD上:邏輯l(MARK)=-3V-15V邏輯0(SPACE)=+3+15V在RTS、CTS、DSR、DTR和DCD等控制線上:信號(hào)有效(接通,ON狀態(tài),正電壓)=+3V+15V信號(hào)無效
21、(斷開,OFF狀態(tài),負(fù)電壓)=-3V-15V由以上定義可以看出,信號(hào)無效的電平低于-3V,也就是當(dāng)傳輸電平的絕對(duì)值大于3V時(shí),電路可以有效地檢查出來,介于-3+3V之間的電壓無意義,低于-15V或高于+15V的電壓也認(rèn)為無意義,因此,實(shí)際工作時(shí),應(yīng)保證電平的絕對(duì)值在(315)V之間。當(dāng)計(jì)算機(jī)和TTL電平的設(shè)備通信時(shí),如計(jì)算機(jī)和單片機(jī)通信時(shí),需要使用RS-232C/TTL電平轉(zhuǎn)換器件,常用的有MAX232。(2)傳輸距離由RS-232C標(biāo)準(zhǔn)規(guī)定在碼元畸變小于4%的情況下,傳輸電纜長度應(yīng)為15m,其實(shí)這個(gè)4%的碼元畸變是很保守的,在實(shí)際應(yīng)用中,約有99%的用戶是按碼元畸變10-20%的范圍工作的,
22、所以實(shí)際使用中最大距離會(huì)遠(yuǎn)超過15m。3、RS-232C的不足之處由于RS-232C接口標(biāo)準(zhǔn)出現(xiàn)較早,難免有不足之處,主要有以下四點(diǎn):接口的信號(hào)電平值較高,易損壞接口電路的芯片,又因?yàn)榕cTTL電平不兼容故需使用電平轉(zhuǎn)換電路方能與TTL電路連接。傳輸速率較低,在異步傳輸時(shí),波特率最大為19200bps。接口使用一根信號(hào)線和一根信號(hào)返回線而構(gòu)成共地的傳輸形式,這種共地傳輸容易產(chǎn)生共模干擾所以抗噪聲干擾性弱。傳輸距離有限,實(shí)際最大傳輸距離只有50米左右.第三章系統(tǒng)設(shè)計(jì)及系統(tǒng)調(diào)試3.1設(shè)計(jì)方案本次設(shè)計(jì),對(duì)于兩片89C51,采用RS232進(jìn)行雙機(jī)通信。發(fā)送方的數(shù)據(jù)由串行口TXD段輸出,經(jīng)過電平轉(zhuǎn)換芯片M
23、AX232將TTL電平轉(zhuǎn)換為RS232電平輸出,經(jīng)過傳輸線將信號(hào)傳送到接收端。接收方也使用MAX232芯片進(jìn)行電平轉(zhuǎn)換后,信號(hào)到達(dá)接收方串行口的接收端。接受方接收后,在數(shù)碼管上顯示接收的信息。為提高抗干擾能力,還可以在輸入輸出端加光耦合進(jìn)行光電隔離。軟件部分,通過通信協(xié)議進(jìn)行發(fā)送接收,主機(jī)先送AAH給從機(jī),當(dāng)從機(jī)接收到AAH后,向主機(jī)回答B(yǎng)BH。主機(jī)收到BBH后就把數(shù)碼表TAB16中的10個(gè)數(shù)據(jù)送給從機(jī),并發(fā)送檢驗(yàn)和。從機(jī)收到16個(gè)數(shù)據(jù)并計(jì)算接收到數(shù)據(jù)的檢驗(yàn)和,與主機(jī)發(fā)送來的檢驗(yàn)和進(jìn)行比較,若檢驗(yàn)和相同則發(fā)送00H給主機(jī);否則發(fā)送FFH給主機(jī),重新接受。從機(jī)收到16個(gè)正確數(shù)據(jù)后送到一個(gè)數(shù)碼管顯
24、示。3.2硬件設(shè)計(jì)1.51單片機(jī)串行通信功能計(jì)算機(jī)與外界的信息交換稱為通信,常用的通信方式有兩種:并行通信和串行通信。51單片機(jī)用4個(gè)接口與外界進(jìn)行數(shù)據(jù)輸入與數(shù)據(jù)輸出就是并行通信,并行通信的特點(diǎn)是傳輸信號(hào)的速度快,但所用的信號(hào)線較多,成本高,傳輸?shù)木嚯x較近。串行通信的特點(diǎn)是只用兩條信號(hào)線(一條信號(hào)線,再加一條地線作為信號(hào)回路)即可完成通信,成本低,傳輸?shù)木嚯x較遠(yuǎn)。51單片機(jī)的串行接口是一個(gè)全雙工的接口,它可以作為UART(通用異步接受和發(fā)送器)用,也可以作為同步移位寄存器用。51單片機(jī)串行接口的結(jié)構(gòu)如下:(1)數(shù)據(jù)緩沖器(SBUF)接受或發(fā)送的數(shù)據(jù)都要先送到SBUF緩存。有兩個(gè),一個(gè)緩存,另一
25、個(gè)接受,用同一直接地址99H,發(fā)送時(shí)用指令將數(shù)據(jù)送到SBUF即可啟動(dòng)發(fā)送;接收時(shí)用指令將SBUF中接收到的數(shù)據(jù)取出。(2)串行控制寄存器(PCON)SCON用于串行通信方式的選擇,收發(fā)控制及狀態(tài)指示,各位含義如下:SM0SM1SM2RENTB8RB8TIRISMO,SM1:串行接口工作方式選擇位,這兩位組合成00,01,10,11對(duì)應(yīng)于工作方式0、1、2、3。串行接口工作方式特點(diǎn)見下表SM0SM1工作方式功能波特率0008位同步移位寄存器(用于I/O擴(kuò)展)f/12ORC01110位異步串行通信(UART)可變(T1溢出率*2smod/32)10211位異步串行通信(UART)f/64或f/32
26、ORCORC11311位異步串行通信(UART)可變(T1溢出率*2smod/32)SM2:多機(jī)通信控制位。REN:接收允許控制位。軟件置1允許接收;軟件置0禁止接收。TB8:方式2或3時(shí),TB8為要發(fā)送的第9位數(shù)據(jù),根據(jù)需要由軟件置1或清0。RB9:在方式2或3時(shí),RB8位接收到的第9位數(shù)據(jù),實(shí)際為主機(jī)發(fā)送的第9位數(shù)據(jù)TB8,使從機(jī)根據(jù)這一位來判斷主機(jī)發(fā)送的時(shí)呼叫地址還是要傳送的數(shù)據(jù)。TI:發(fā)送中斷標(biāo)志。發(fā)送完一幀數(shù)據(jù)后由硬件自動(dòng)置位,并申請(qǐng)中斷。必須要軟件清零后才能繼續(xù)發(fā)送。RI:接收中斷標(biāo)志。接收完一幀數(shù)據(jù)后由硬件自動(dòng)置位,并申請(qǐng)中斷。必須要軟件清零后才能繼續(xù)接收。(3)輸入移位寄存器接
27、收的數(shù)據(jù)先串行進(jìn)入輸入移位寄存器,8位數(shù)據(jù)全移入后,再并行送入接收SBUF中。(4)波特率發(fā)生器波特率發(fā)生器用來控制串行通信的數(shù)據(jù)傳輸速率的,51系列單片機(jī)用定時(shí)器T1作為波特率發(fā)生器,T1設(shè)置在定時(shí)方式。波特率時(shí)用來表示串行通信數(shù)據(jù)傳輸快慢程度的物理量,定義為每秒鐘傳送的數(shù)據(jù)位數(shù)。(5)電源控制寄存器PCON其最高位為SMOD。(6)波特率計(jì)算當(dāng)定時(shí)器T1工作在定時(shí)方式的時(shí)候,定時(shí)器T1溢出率=(T1計(jì)數(shù)率)/(產(chǎn)生溢出所需機(jī)器周期)。由于是定時(shí)方式,T1計(jì)數(shù)率=fORC12。產(chǎn)生溢出所需機(jī)器周期數(shù)=模M-計(jì)數(shù)初值X。MAX232芯片用8051串行接口通信,如果兩臺(tái)8051單片機(jī)之間的距離很
28、近(不超過1.5m),可以采用直接將兩臺(tái)8051單片機(jī)的串行接口直接相連,利用其自身的TTL電平(0-5V)直接傳輸數(shù)據(jù)信息。如果傳輸距離較遠(yuǎn)(超過1.5m),由于傳輸線的阻抗與分布電容,會(huì)產(chǎn)生電平損耗和波形畸變,以至于檢測不出數(shù)據(jù)或數(shù)據(jù)出錯(cuò)。此時(shí)可利用RS232標(biāo)準(zhǔn)總線接口,將單片機(jī)輸出的TTL電平轉(zhuǎn)換為RS232標(biāo)準(zhǔn)電平(邏輯1為-155V;邏輯0為+5+15V)。用RS232可將傳輸距離提高到15m,如果想遠(yuǎn)距離傳輸,可以米用RS422或者RS485。電平轉(zhuǎn)換芯片MAX232是美信公司(MAXIM)生產(chǎn),專用于進(jìn)行將TTL電平轉(zhuǎn)換為RS232電平的芯片,MAX232內(nèi)部有泵電源,能將+5
29、V電源電壓在芯片內(nèi)提高到RS232電平所需的+10V或者-10V電平。圖2.電平轉(zhuǎn)換芯片MAX232整體電路設(shè)計(jì)最終設(shè)計(jì)電路如下圖3所示,發(fā)送方的數(shù)據(jù)由串行口TXD段輸出,經(jīng)過電平轉(zhuǎn)換芯片MAX232將TTL電平轉(zhuǎn)換為RS232電平輸出,經(jīng)過傳輸線將信號(hào)傳送到接收端。接收方也使用MAX232芯片進(jìn)行電平轉(zhuǎn)換后,信號(hào)到達(dá)接收方串行口的接收端。接受方接收后,通過P1口在數(shù)碼管上顯示接收的信息。XTXLIJCTALZRETP8EMALEEftPOXVADDP口.WAD1PDAtZPD3AD3PCI.4ZAD*PDJVAD5P口J9ADEPH.T/ADTPIDifiSP2AifiBPZAIDPZa*A
30、11PZ.4A12PZSA13PZJ9AUFZ.TmSP1DF1.1P12P13P1.+P1SP3IYHXDF3.1iTXDPAIHTDP3INT1P3.4HT1F3ST1P3jSWRP3.T/RD-PDIYADDXTAL1PD.1/AD1PCIADZPCIXTALZPO.WAD+PDAD5PDjS*AD6PO.7/AD7RSTPZDhEPSAIDP23A11PBEMPZ.h.12h.LEF2SA13ERP2jS*AUP2.TW1SF3URXDF1DPl.lfTXDP1.1P31rraP1ZP33INT1P13PH+TDP1.+pmsrnP1SP1J5P3.7/RDP1.7舊C1+Cl-TII
31、MT1OUTP.1OUTrunF2:UTFZIMxra*VB-CZ*C2-v(C1-C1+T1OUTtiimR1INR1OUTTSjUTTZIMF2IMR20UTVS*VB-CZ-CZ*圖3.串行通信電路3.3軟件設(shè)計(jì)通過通信協(xié)議進(jìn)行發(fā)送接收,主機(jī)先送CDH給從機(jī),當(dāng)從機(jī)接收到CDH后,向主機(jī)回答DCH。主機(jī)收到DCH后就把數(shù)碼表TAB16中的10個(gè)數(shù)據(jù)送給從機(jī),并發(fā)送檢驗(yàn)和。從機(jī)收到16個(gè)數(shù)據(jù)并計(jì)算接收到數(shù)據(jù)的檢驗(yàn)和,與主機(jī)發(fā)送來的檢驗(yàn)和進(jìn)行比較,若檢驗(yàn)和相同則發(fā)送00H給主機(jī);否則發(fā)送FFH給主機(jī),重新接受。從機(jī)收到16個(gè)正確數(shù)據(jù)后送到一個(gè)數(shù)碼管顯示。1.串行通信軟件實(shí)現(xiàn)串行口工作于方式3
32、;用定時(shí)器1產(chǎn)生4800bit/s的波特率,晶振頻率為11.0592MHZ。功能:將本機(jī)ROM中數(shù)碼表TAB16中的16個(gè)數(shù)發(fā)送到從機(jī),并保存在從機(jī)內(nèi)部ROM中,從機(jī)收到這16個(gè)數(shù)據(jù)后送到一個(gè)數(shù)碼管循環(huán)顯示。通信協(xié)議:主機(jī)首先發(fā)送連絡(luò)信號(hào)(CDH),從機(jī)接收到之后返回一個(gè)連絡(luò)信號(hào)(DCH)表示從機(jī)已準(zhǔn)備好接收。通信過程使用第九位發(fā)送奇偶校驗(yàn)位。從機(jī)接收到一個(gè)數(shù)據(jù)后,立即進(jìn)行奇偶校驗(yàn),若數(shù)據(jù)沒有錯(cuò)誤,則返回00H,否則返回FFH。主機(jī)發(fā)送一個(gè)數(shù)據(jù)后,等待從機(jī)返回?cái)?shù)據(jù);若為00H,則繼續(xù)發(fā)送下一個(gè)數(shù)據(jù),若為FFH,則重新發(fā)送數(shù)據(jù)。2.程序流程圖1)發(fā)送端程序流程圖2)接收方程序流程圖A、B兩臺(tái)51
33、單片機(jī)的異步串行接收采用查詢方式,它們?cè)敿?xì)的C51程序如下所示。/A機(jī)程序#include/包含單片機(jī)寄存器的頭文件unsignedcharcodeddata=0 x88,0 x83,0 xc6,0 xa1,0 x86,0 x8e,0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,;/A,B,C,D,E,F,0,1.,8,9的段碼/*函數(shù)功能:發(fā)送一個(gè)字節(jié)數(shù)據(jù)*/voidSend(unsignedchardat)SBUF=dat;While(TI=0);/等待TI=0;/*函數(shù)功能:接收一個(gè)字節(jié)數(shù)據(jù)*/unsignedcha
34、rReceive(void)unsignedchardat;while(RI=0);/等待,直至接收完畢(RI=1)RI=0;/為了接收下一幀數(shù)據(jù),需將RI清0dat=SBUF;/將接收緩沖器中的數(shù)據(jù)存于datreturndat;/*函數(shù)功能:延時(shí)約150ms*/voiddelay(void)unsignedcharm,n;for(m=0;m200;m+)for(n=0;n250;n+)/*函數(shù)功能:主函數(shù)*/voidmain(void)unsignedchari;TM0D=0 x20;/TM0D=0010OOOOB,定時(shí)器T1工作于方式2SCON=OxDO;/SCON=11O10000B,串
35、口工作方式3,允許接收PCON=0 x00;TH1=0 xfa;/定時(shí)器TH1賦初值,波特率4800MHzTL1=0 xfa;/定時(shí)器TL1賦初值TR1=1;/啟動(dòng)定時(shí)器T1while(1)for(i=0;i8;i+)Send(i);/發(fā)送數(shù)據(jù)iP0=ddataReceive();/將接收到的數(shù)據(jù)送P0口顯示delay();/600ms后發(fā)送下一個(gè)數(shù)據(jù)delay();delay();delay();/B機(jī)程序#include/包含單片機(jī)寄存器的頭文件unsignedcharcodeddata=0 x88,0 x83,0 xc6,0 xa1,0 x86,0 x8e,0 xc0,0 xf9,0 x
36、a4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;/A,B,C,D,E,F,0,1.,8,9的段碼/*函數(shù)功能:發(fā)送一個(gè)字節(jié)數(shù)據(jù)*/voidSend(unsignedchardat)SBUF=dat;while(TI=0);/等待TI=0;/*函數(shù)功能:接收一個(gè)字節(jié)數(shù)據(jù)*/unsignedcharReceive(void)unsignedchardat;while(RI=0);/等待,直至接收完畢(RI=1)RI=0;/為了接收下一幀數(shù)據(jù),需將RI清0dat=SBUF;/將接收緩沖器中的數(shù)據(jù)存于datreturndat;/*函數(shù)功能:主函數(shù)*/voidm
37、ain(void)unsignedchardat;TM0D=0 x20;/定時(shí)器T1工作于方式2SCON=OxDO;/SC0N=1101OOOOB,串口工作方式3,允許接收(REN=1)PCON=0 x00;THl=0 xfa;/定時(shí)器TH1賦初值,波特率4800TL1=0 xfa;/定時(shí)器TL1賦初值TR1=1;/啟動(dòng)定時(shí)器T1while(1)dat=Receive();P0=ddatadat;/將接收到的數(shù)據(jù)送P0口顯示Send(dat+8);/偏移量為+83.4聯(lián)合調(diào)試在protues上進(jìn)行仿真實(shí)驗(yàn)。首先使用KeilC將編寫完成的程序編譯生成HEX文件,將HEX文件燒錄到兩片單片機(jī)中,進(jìn)
38、行仿真實(shí)驗(yàn),結(jié)果如下圖所示,可以看到,接收端已將接受到的數(shù)據(jù)完整的顯示了出來。1歸iB*?XTAL1XTAL2F.E:T!PSENALEEftP1.TpinP1.1P12P1P1.6ATOC51:tehtt:pnnH.DnPQ.VAD1P0AD2pnaADP.HAD*POfADSpn.sADbPQ.TrADTPZUhEP2.1/ABPSZAIOPHF2.WA12P2JVA13P2J9A1+P2.T/A15P3URXDP3.1iTXPFliIMTDpwliiTTPI.+hTOP3ST1pijaiTuTPl.TiRDilissis-zfds耄亙器一:!?器盞吾T1UUTF.1IMTTijUTF.IJUTTzmR3:|UT:壬衛(wèi)3?芳353*H33E21-NZ3I-M26Z?衛(wèi)皿111zl13lz1s1h1?U2pnnADnXTAL1;PEJ.VAD1PnZADZpnaHiGXTAL2PD.4/AD+PDADSPn.GADGPEJ.TWDTRSTPZDhEPZ.Ii.HSpzzfAinFZ3fA11PSENPZ.H.IZALEPZS*A13EAPZJST
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 促進(jìn)社區(qū)居民參與社團(tuán)活動(dòng)的個(gè)人工作計(jì)劃
- 寧夏慶華煤化集團(tuán)有限公司鹽池縣曹家灣煤礦礦山地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案評(píng)審表
- 人教版七年級(jí)歷史與社會(huì)下冊(cè)7.1-規(guī)則的演變教學(xué)設(shè)計(jì)001
- 距骨骨折護(hù)理
- 全國青島版信息技術(shù)七年級(jí)上冊(cè)專題一第3課一、《網(wǎng)絡(luò)信息安全現(xiàn)狀》教學(xué)設(shè)計(jì)
- 2025年孝感貨運(yùn)上崗資格證模擬考試
- 保密法知識(shí)培訓(xùn)講座
- 2025年濟(jì)南貨運(yùn)從業(yè)資格證500道題目和答案
- 2025年青海道路客貨運(yùn)輸從業(yè)資格證模擬考試下載
- 2025年西藏c1貨運(yùn)從業(yè)資格證考試內(nèi)容
- GB/T 45032-2024智慧城市面向城市治理的知識(shí)可信賴評(píng)估框架
- 2025年安全員B證理論考試900題及答案
- 廣東省廣州市2025屆高三下學(xué)期一模考試數(shù)學(xué)試題含解析
- 《畢業(yè)生就業(yè)協(xié)議書》(空白)原件
- 《胰島素和C肽》課件
- 開題報(bào)告:家庭教育投入視角下的中小學(xué)生減負(fù)政策效果研究
- 大學(xué)圖書館發(fā)展規(guī)劃
- 【MOOC】跨文化交際-蘇州大學(xué) 中國大學(xué)慕課MOOC答案
- 高中物理【原子結(jié)構(gòu)和原子核】知識(shí)點(diǎn)、規(guī)律總結(jié)
- 湘陰縣易聚餐飲有限公司部門備用金業(yè)務(wù)財(cái)務(wù)融合流程設(shè)計(jì)
- 企業(yè)員工合規(guī)管理培訓(xùn)
評(píng)論
0/150
提交評(píng)論