單片機(jī)之間多機(jī)通信演示電路設(shè)計_第1頁
單片機(jī)之間多機(jī)通信演示電路設(shè)計_第2頁
單片機(jī)之間多機(jī)通信演示電路設(shè)計_第3頁
單片機(jī)之間多機(jī)通信演示電路設(shè)計_第4頁
單片機(jī)之間多機(jī)通信演示電路設(shè)計_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

單片機(jī)之間多機(jī)通信演示電路設(shè)計第1頁,課件共27頁,創(chuàng)作于2023年2月

摘要:“單片機(jī)之間多機(jī)通信演示電路設(shè)計與研究”是基于單片機(jī)的串行通信演示電路系統(tǒng)設(shè)計。本設(shè)計研究的是三個AT89C51單片機(jī)通過串行通信技術(shù)實現(xiàn)相互之間的通信。在設(shè)計中,我們利用AT89C51單片機(jī)具有多機(jī)通信功能,構(gòu)成主從分布式控制系統(tǒng),由一臺主機(jī)來控制兩臺從機(jī),主機(jī)可以向從機(jī)發(fā)送命令來控制從機(jī),同時也可以接收從機(jī)反饋回來的信息,主從機(jī)之間實現(xiàn)雙工通信。系統(tǒng)設(shè)計中主要由自制鍵盤和指撥開關(guān)作為輸入設(shè)備,選擇較為簡單的發(fā)光二極管和一位數(shù)碼管作為輸出設(shè)備,通過串行接口技術(shù)實現(xiàn)主從機(jī)之間數(shù)據(jù)的傳輸并用顯示設(shè)備觀察其通信結(jié)果。本次系統(tǒng)設(shè)計中主要用到單片機(jī)之間多機(jī)通信技術(shù)以及單片機(jī)串行通信接口和中斷系統(tǒng),在下面設(shè)計中將進(jìn)行具體的研究和討論。關(guān)鍵詞:多機(jī)通信串行通信中斷控制演示電路第2頁,課件共27頁,創(chuàng)作于2023年2月整體方案第3頁,課件共27頁,創(chuàng)作于2023年2月功能介紹

(1)當(dāng)主機(jī)A,按鍵盤選擇鍵1#,主機(jī)與從機(jī)B通信,接下來按鍵數(shù)據(jù)會發(fā)送給從機(jī)B,由數(shù)碼管DS1顯示結(jié)果。同理,當(dāng)主機(jī)A,按鍵盤選擇鍵2#,主機(jī)與從機(jī)C通信,接下來按鍵數(shù)據(jù)會發(fā)送給從機(jī)C,由數(shù)碼管DS2顯示結(jié)果。(2)當(dāng)從機(jī)B,P1的指撥開關(guān)切換時,此數(shù)據(jù)會發(fā)送給主機(jī)A,并控制其低4位的4個LED的亮滅。同理,當(dāng)從機(jī)C,P2的指撥開關(guān)切換時,此數(shù)據(jù)會發(fā)送給主機(jī)A,并控制其高4位的4個LED的亮。第4頁,課件共27頁,創(chuàng)作于2023年2月單片機(jī)多機(jī)通信技術(shù)

1.多機(jī)通信接口設(shè)計在實際應(yīng)用系統(tǒng)中,經(jīng)常需要多個微處理機(jī)協(xié)調(diào)工作。由于AT89系列的單片機(jī)具有多機(jī)通信功能,因而可利用它構(gòu)成各種分布式系統(tǒng),其系統(tǒng)結(jié)構(gòu)如圖所示。第5頁,課件共27頁,創(chuàng)作于2023年2月

在圖中,系統(tǒng)采用一臺主機(jī)和多臺從機(jī),主機(jī)的RXD端與所有從機(jī)的TXD端連接,TXD端與所有從機(jī)的RXD端相連,主機(jī)發(fā)送的信息可被各從機(jī)接收,而各從機(jī)發(fā)送的信息只能由主機(jī)接收,各從機(jī)之間交換信息需通過主機(jī)。2.多機(jī)通信原理多機(jī)通信中,要保證主機(jī)與從機(jī)間進(jìn)行可靠的通信,通信接口必須具有從機(jī)身份的識別功能。串行口控制寄存器SCON中的SM2位就是為滿足這一要求而設(shè)置的多機(jī)通信控制位。串行口以方式2或方式3實現(xiàn)多機(jī)通信,發(fā)送和接收的每一幀信息都是11位,其中第9數(shù)據(jù)位是可編程位,通過對SCON的TB8賦值1或0,以區(qū)別發(fā)送的是地址幀還是數(shù)據(jù)幀第6頁,課件共27頁,創(chuàng)作于2023年2月(規(guī)定地址幀的第9位為1,數(shù)據(jù)幀的第9位為0)。若從機(jī)的控制位SM2=1,則接收的是地址幀時,數(shù)據(jù)裝入SBUF,并置RI=1,向CPU發(fā)出中斷請求;若接收的是數(shù)據(jù)幀,則不產(chǎn)生中斷標(biāo)志,信息將拋棄。若SM2=0,則無論是地址幀還是數(shù)據(jù)幀都產(chǎn)生RI=1中斷標(biāo)志,數(shù)據(jù)裝入SBUF。第7頁,課件共27頁,創(chuàng)作于2023年2月單片機(jī)的串口工作原理1串口寄存器結(jié)構(gòu)

AT89C51單片機(jī)串行口寄存器結(jié)構(gòu)如圖所示。SBUF為串行口的收發(fā)緩沖器,它是一個可尋址的專用寄存器,其中包含了接收器和發(fā)送器寄存器,可以實現(xiàn)全雙工通信。但這兩個寄存器具有同一地址(99H)。AT89C51的串行數(shù)據(jù)傳輸很簡單,只要向發(fā)送緩沖器寫入數(shù)據(jù)即可發(fā)送數(shù)據(jù)。而從接收緩沖器讀出數(shù)據(jù)即可接收數(shù)據(jù)。第8頁,課件共27頁,創(chuàng)作于2023年2月

輸入移位寄存器接收SBUF(99H)發(fā)送SBUF(99H)TI(發(fā)送中斷)TXD串行輸出系統(tǒng)總線移位時鐘RXD串行輸入RI(接收中斷)AT89C51串行口寄存器結(jié)構(gòu)第9頁,課件共27頁,創(chuàng)作于2023年2月2單片機(jī)串口工作寄存器1.串行通信控制寄存器

SCON控制寄存器,它是一個可尋址的專用寄存器,用于串行數(shù)據(jù)的通信控制,單元地址是98H,其結(jié)構(gòu)格式如下:

SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRI位9FH9EH9DH9CH9BH9AH99H98H第10頁,課件共27頁,創(chuàng)作于2023年2月下面我們對各控制位功能介紹如下:(1).SM0、SM1:串行口工作方式控制位。SM0SM1工作方式00方式001方式110方式211方式3第11頁,課件共27頁,創(chuàng)作于2023年2月(2).SM2:多機(jī)通信控制位。多機(jī)通信是工作于方式2和方式3,SM2位主要用于方式2和方式3。接收狀態(tài),當(dāng)串行口工作于方式2或3,以及SM2=1時,只有當(dāng)接收到第9位數(shù)據(jù)(RB8)為1時,才把接收到的前8位數(shù)據(jù)送入SBUF,且置位RI發(fā)出中斷申請,否則會將接受到的數(shù)據(jù)放棄。當(dāng)SM2=0時,就不管第位數(shù)據(jù)是0還是1,都難得數(shù)據(jù)送入SBUF,并發(fā)出中斷申請。工作于方式0時,SM2必須為0。

(3).REN:允許接收位。

REN用于控制數(shù)據(jù)接收的允許和禁止,REN=1時,允許接收,REN=0時,禁止接收。第12頁,課件共27頁,創(chuàng)作于2023年2月(4).TB8:發(fā)送接收數(shù)據(jù)位8。在方式2和方式3中,TB8是要發(fā)送的——即第9位數(shù)據(jù)位。在多機(jī)通信中同樣亦要傳輸這一位,并且它代表傳輸?shù)牡刂愤€是數(shù)據(jù),TB8=0為數(shù)據(jù),TB8=1時為地址。(5).RB8:接收數(shù)據(jù)位8。在方式2和方式3中,RB8存放接收到的第9位數(shù)據(jù),用以識別接收到的數(shù)據(jù)特征。

(6).TI:發(fā)送中斷標(biāo)志位??蓪ぶ窐?biāo)志位。方式0時,發(fā)送完第8位數(shù)據(jù)后,由硬件置位,其它方式下,在發(fā)送或停止位之前由硬件置位,因此,TI=1表示幀發(fā)送結(jié)束,TI可由軟件清“0”。

(7).RI:接收中斷標(biāo)志位。

可尋址標(biāo)志位。接收完第8位數(shù)據(jù)后,該位由硬件置位,在其他工作方式下,該位由硬件置位,RI=1表示幀接收完成。第13頁,課件共27頁,創(chuàng)作于2023年2月2.電源管理寄存器PCONPCON主要是為CHMOS型單片機(jī)的電源控制而設(shè)置的專用寄存器,單元地址是87H,其結(jié)構(gòu)格式如下:在CHMOS型單片機(jī)中,除SMOD位外,其他位均為虛設(shè)的,SMOD是串行口波特率倍增位,當(dāng)SMOD=1時,串行口波特率加倍。系統(tǒng)復(fù)位默認(rèn)為SMOD=0。PCOND7D6D5D4D3D2D1D0位SMOD___GF1GF0PDIDL第14頁,課件共27頁,創(chuàng)作于2023年2月3單片機(jī)串口工作方式

AT89C51單片機(jī)的串行口有4種工作方式,通過SCON中的SM0、SM1位來設(shè)置。本系統(tǒng)研究的是單片機(jī)之間多機(jī)通信,所以主要介紹能實現(xiàn)多機(jī)通信的方式2和方式3。

1.方式0——同步移位寄存器方式

2.方式1——8位異步串行通信方式

3.方式2——9位異步通信接口若SM0SM1=10B,則串行口工作于方式2.方式2為波特率固定的11位異步串行通信方式,傳送波特率與SMOD有關(guān)。發(fā)送或接受一幀信息位11位,其中包括1位起始位0,8位數(shù)據(jù)位,1位可編程位(用于奇偶校驗或多機(jī)通信)和1位停止位1。第15頁,課件共27頁,創(chuàng)作于2023年2月1)方式2發(fā)送發(fā)送時,根據(jù)通信協(xié)議由軟件設(shè)置TB8,然后用指令將要發(fā)送的數(shù)據(jù)寫入SBUF,啟動發(fā)送器。寫SBUF的指令,除了將8位數(shù)據(jù)送入SBUF外,同時還將TB8裝入發(fā)送移位寄存器的第9位,并啟動發(fā)送控制器進(jìn)行一次發(fā)送。一幀信息即從TXD發(fā)送出去,在送完一幀信息后,TI被自動置1,在發(fā)送下一幀信息之前,TI必須由中斷服務(wù)程序或查詢程序清0.2)方式2接收當(dāng)REN=1時,允許串行口接收數(shù)據(jù)。數(shù)據(jù)由RXD端輸入,當(dāng)接收器采樣到RXD端的負(fù)跳變,并判斷起始位有效后,開始接收一幀信息,每幀接收11位信息。方式2接收時,若同時滿足以下兩個條件:第16頁,課件共27頁,創(chuàng)作于2023年2月

(1)RI=0;

(2)SM2=0或接收到的第9位數(shù)據(jù)位1。則接收數(shù)據(jù)有效,8位數(shù)據(jù)送入SBUF,第9位送入RB8,并置RI=1;若不滿足上述兩個條件,則信息丟棄。

4.方式3——波特率可變的9位異步通信接口若SM0SM1=11B,串行口工作于方式3,為波特率可變的11位異步串行通信方式。除了波特率以外,方式3和方式2完全相同。第17頁,課件共27頁,創(chuàng)作于2023年2月多機(jī)通信電路設(shè)計

1硬件電路設(shè)計1時鐘電路

如圖4.2所示,AT89C51的時鐘電路接腳為XTAL1(pin19)和XTAL2(pin18),XTAL1和XTAL2分別為反向放大器的輸入和輸出.于pin18、19之間接一個石英振蕩器(常用頻率在3.58MHZ、6MHZ、11.0592MHZ、12MHZ),并在兩端各接一電容接地,電容以30p-40p較為適當(dāng)。X112MHZC1130pC230p第18頁,課件共27頁,創(chuàng)作于2023年2月2鍵盤電路在本系統(tǒng)中,主機(jī)的數(shù)據(jù)和控制信號通過串口或鍵盤輸入,為節(jié)省單片機(jī)I/O口,簡化硬件線路,采用4*3矩陣式鍵盤[1]。鍵盤共設(shè)有12個鍵,其中包括數(shù)字鍵和功能鍵。如圖所示,由AT89C51的P1.0-P1.3四條行線和P1.5-P1.7三條列線構(gòu)成。按鍵設(shè)置在行、列交點上,行。列線分別連接到按鍵開關(guān)兩端,列線通過上拉電阻接到+5V上。平時無按鍵動作時,列線處于高電平狀態(tài),而當(dāng)有鍵按下時,必須將行、列線信號配合起來作適當(dāng)處理,才能確定閉合鍵的位置。鍵盤中有無鍵按下是由行線送入全掃描,用列線讀列線狀態(tài)來判斷的。鍵盤中哪個鍵按下是逐行掃描低電平后,檢查列輸入狀態(tài)來確定的。第19頁,課件共27頁,創(chuàng)作于2023年2月3顯示電路1.發(fā)光二極管顯示電路如圖所示,為主AT89C51單片機(jī)基本顯示電路,PORT2連接LED后,再接上470歐姆電阻作為限流裝置,防治LED燒壞,最后接上VCC供應(yīng)電源,當(dāng)?shù)?0頁,課件共27頁,創(chuàng)作于2023年2月PORT2輸出腳為0時,LED亮,例如控制PORT2.0=0時,第一只LED亮.AT89C51單晶片可控制這些腳位的電壓,產(chǎn)生數(shù)位信號,經(jīng)過放大電路,進(jìn)而控制周邊設(shè)備.注意當(dāng)PORT0作為輸出口時,必須接上拉電阻.第21頁,課件共27頁,創(chuàng)作于2023年2月2.數(shù)碼管顯示電路如圖所示,為兩個從機(jī)的顯示電路,本系統(tǒng)采用的是一位共陽極數(shù)碼管作為顯示器,當(dāng)a~g為低電平時,發(fā)光二極管點亮。其a、b、c、d、e、f、g、dp八個引腳分別接單片機(jī)的P2.0-P2.7,中間加一個330歐姆的限流電阻。1~9共9個數(shù)字,共陽極型LED的編碼分別為:F9H、A4H、B0H、99H、92H、82H、F8H、80H和90H。第22頁,課件共27頁,創(chuàng)作于2023年2月2軟件程序設(shè)計1.鍵盤程序設(shè)計1#2#滅789456123鍵盤掃描消抖延時有無鍵按下取鍵盤碼功能鍵?功能鍵處理程序發(fā)送數(shù)據(jù)返回NYYN第23頁,課件共27頁,創(chuàng)作于2023年2月2.主機(jī)程序設(shè)計流程本系統(tǒng)選用12MHZ晶振,采用2400HZ波特率。程序流程如圖4.9所示,其定時器串行口通信的初始化步驟如下:(1)確定串口工作于方式3,并允許接收——對SCON寄存器送控制字C0H(SM0=1,SM1=1,REN=1);(2)確定定時器T1工作于方式2——對TMO

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論