![電子工程畢業(yè)設(shè)計雙機(jī)之間的串行通信設(shè)計_第1頁](http://file4.renrendoc.com/view/c780f278776f14f70b6829933ced65a3/c780f278776f14f70b6829933ced65a31.gif)
![電子工程畢業(yè)設(shè)計雙機(jī)之間的串行通信設(shè)計_第2頁](http://file4.renrendoc.com/view/c780f278776f14f70b6829933ced65a3/c780f278776f14f70b6829933ced65a32.gif)
![電子工程畢業(yè)設(shè)計雙機(jī)之間的串行通信設(shè)計_第3頁](http://file4.renrendoc.com/view/c780f278776f14f70b6829933ced65a3/c780f278776f14f70b6829933ced65a33.gif)
![電子工程畢業(yè)設(shè)計雙機(jī)之間的串行通信設(shè)計_第4頁](http://file4.renrendoc.com/view/c780f278776f14f70b6829933ced65a3/c780f278776f14f70b6829933ced65a34.gif)
![電子工程畢業(yè)設(shè)計雙機(jī)之間的串行通信設(shè)計_第5頁](http://file4.renrendoc.com/view/c780f278776f14f70b6829933ced65a3/c780f278776f14f70b6829933ced65a35.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
電子工程畢業(yè)設(shè)計雙機(jī)之間的串行通信設(shè)計目錄一、引言 2二、方案設(shè)計 21.方案一 22.方案二 3三、總體設(shè)計 41.單片機(jī)串行口通信 52.MAX232芯片 5五、軟件設(shè)計 5六、整體電路設(shè)計 6七、結(jié)論 6八、附錄 71、發(fā)送程序 72、接收程序 83、整體電路圖 9九、參考文獻(xiàn) 10雙機(jī)之間的串行通信設(shè)計引言由于MCS51系列單片機(jī)具有性能穩(wěn)定、工作可靠、價格低廉等特點,因此其應(yīng)用相當(dāng)廣泛。一個MCS51系列的單片機(jī)(如Atmel89c**)內(nèi)部包含有RAM、FLASHROM、兩個或者三個16位的定時器/計數(shù)器、一個通用異步串行通信控制器(UART)等多種資源。在這種情況下,一個系統(tǒng)中就使用了兩個或兩個以上的單片機(jī),而單片機(jī)之間就要通過互連來進(jìn)行數(shù)據(jù)通信。MCS51系列的單片機(jī)(以下簡稱單片機(jī))都帶有串口,利用串口進(jìn)行互連通信極為方便,其各種連接方式在許多書籍和資料上都有介紹,在此不再重述。但如果系統(tǒng)要求擴(kuò)充的資源是對外連接的串口,或?qū)ο嗷ブg的數(shù)據(jù)傳送有一定的速度要求,則單片機(jī)的串口就不能用作系統(tǒng)內(nèi)兩單片機(jī)的通信接口了。所幸的是,單片機(jī)的并行端口也能相互連接來進(jìn)行數(shù)據(jù)通信。根據(jù)單片機(jī)端口內(nèi)部結(jié)構(gòu)的特點,這些端口的端口線可以直接相連,從而使兩單片機(jī)之間并行通信接口的實現(xiàn)不用另外的硬件電路設(shè)備。方案設(shè)計1方案一本方案采用單片機(jī)AT89C51作為軟件程序的載體,并采用并行通信方式。并行通信是指數(shù)據(jù)各位同時并行傳送的通信方式。如果只需要一個單片機(jī)向另一個單片機(jī)傳送數(shù)據(jù),則可以采用單向并行通信接口方式,這種方式較為簡單。單片機(jī)A為數(shù)據(jù)發(fā)送方,單片機(jī)B為數(shù)據(jù)接收方,8位端口可以是P0?3的任何一個。數(shù)據(jù)傳送的流程是:單片機(jī)A將數(shù)據(jù)送到端口后,通過STB信號中斷單片機(jī)B。單片機(jī)B進(jìn)入中斷并從端口讀取數(shù)據(jù),讀完后,在LED燈上顯示。原理圖如圖1-1。圖1-12、方案二本次設(shè)計,對于兩片89C51,采用RS232進(jìn)行雙機(jī)通信。發(fā)送方的數(shù)據(jù)由串行口TXD段輸出,經(jīng)過電平轉(zhuǎn)換芯片MAX232將TTL電平轉(zhuǎn)換為RS232電平輸出,經(jīng)過傳輸線將信號傳送到接收端。接收方也使用MAX232芯片進(jìn)行電平轉(zhuǎn)換后,信號到達(dá)接收方串行口的接收端。接受方接收后,在數(shù)碼管上顯示接收的信息。軟件部分,通過通信協(xié)議進(jìn)行發(fā)送接收,主機(jī)先送AAH給從機(jī),當(dāng)從機(jī)接收到AAH后,向主機(jī)回答B(yǎng)BH。主機(jī)收到BBH后就把數(shù)碼表TAB[16]中的10個數(shù)據(jù)送給從機(jī),并發(fā)送檢驗和。從機(jī)收到16個數(shù)據(jù)并計算接收到數(shù)據(jù)的檢驗和,與主機(jī)發(fā)送來的檢驗和進(jìn)行比較,若檢驗和相同則發(fā)送00H給主機(jī);否則發(fā)送FFH給主機(jī),重新接受。從機(jī)收到16個正確數(shù)據(jù)后送到一個數(shù)碼管顯示。如圖1-2圖1-23方案論證方案一中的傳輸?shù)姆€(wěn)定性明顯不如的方案二中采用串行方式。由于有多根傳輸線并行傳輸數(shù)據(jù),因此傳送速度快、通信速率高。一般而言,串行通信的傳送速度明顯將低于并行通信。但當(dāng)多位數(shù)據(jù)遠(yuǎn)程傳輸時,傳輸線路的開銷就成為突出問題。由于串行通信只需一對傳輸線,并且可以利用電話線等有通信信道作為傳輸介質(zhì),因而可以大大降低傳輸線路的成本。所以此報告結(jié)合實際,采用串行通信方式,即方案二。很容易看出,采用方案二,電路比較的簡單穩(wěn)定,將接受到的數(shù)據(jù)顯示出來??傮w設(shè)計最終設(shè)計電路如下圖3所示,發(fā)送方的數(shù)據(jù)由串行口TXD段輸出,經(jīng)過電平轉(zhuǎn)換芯片MAX232將TTL電平轉(zhuǎn)換為RS232電平輸出,經(jīng)過傳輸線將信號傳送到接收端。接收方也使用MAX232芯片進(jìn)行電平轉(zhuǎn)換后,信號到達(dá)接收方串行口的接收端。接受方接收后,通過P1口在數(shù)碼管上顯示接收的信息。單元電路(或軟件模塊)設(shè)計1.單片機(jī)串行通信功能圖1-4AT89C5151單片機(jī)的串行接口是一個全雙工的接口,它可以作為UART(通用異步接受和發(fā)送器)用,也可以作為同步移位寄存器用。數(shù)據(jù)緩沖器(SBUF)接受或發(fā)送的數(shù)據(jù)都要先送到SBUF緩存。有兩個,一個緩存,另一個接受,用同一直接地址99H,發(fā)送時用指令將數(shù)據(jù)送到SBUF即可啟動發(fā)送;接收時用指令將SBUF中接收到的數(shù)據(jù)取出。2.MAX232芯片用8051串行接口通信,如果兩臺8051單片機(jī)之間的距離很近(不超過1.5m),可以采用直接將兩臺8051單片機(jī)的串行接口直接相連,利用其自身的TTL電平(0-5V)直接傳輸數(shù)據(jù)信息。如果傳輸距離較遠(yuǎn)(超過1.5m),由于傳輸線的阻抗與分布電容,會產(chǎn)生電平損耗和波形畸變,以至于檢測不出數(shù)據(jù)或數(shù)據(jù)出錯。此時可利用RS232標(biāo)準(zhǔn)總線接口,將單片機(jī)輸出的TTL電平轉(zhuǎn)換為RS232標(biāo)準(zhǔn)電平(邏輯1為-15—-5V;邏輯0為+5-—+15V)。用RS232可將傳輸距離提高到15m,如果想遠(yuǎn)距離傳輸,可以采用RS422或者RS485。 電平轉(zhuǎn)換芯片MAX232是美信公司(MAXIM)生產(chǎn),專用于進(jìn)行將TTL電平轉(zhuǎn)換為RS232電平的芯片,MAX232內(nèi)部有泵電源,能將+5V電源電壓在芯片內(nèi)提高到RS232電平所需的+10V或者-10V電平。圖1-5電平轉(zhuǎn)換芯片MAX23五、軟件設(shè)計通過通信協(xié)議進(jìn)行發(fā)送接收,主機(jī)先送AAH給從機(jī),當(dāng)從機(jī)接收到AAH后,向主機(jī)回答B(yǎng)BH。主機(jī)收到BBH后就把數(shù)碼表TAB[16]中的10個數(shù)據(jù)送給從機(jī),并發(fā)送檢驗和。從機(jī)收到16個數(shù)據(jù)并計算接收到數(shù)據(jù)的檢驗和,與主機(jī)發(fā)送來的檢驗和進(jìn)行比較,若檢驗和相同則發(fā)送00H給主機(jī);否則發(fā)送FFH給主機(jī),重新接受。從機(jī)收到16個正確數(shù)據(jù)后送到一個數(shù)碼管顯示。六、電路整體測試在protues上進(jìn)行仿真實驗。首先使用KeilC將編寫完成的程序編譯生成HEX文件,將HEX文件燒錄到兩片單片機(jī)中,進(jìn)行仿真實驗,結(jié)果如下圖所示,可以看到,接收端已將接受到的數(shù)據(jù)完整的顯示了出來。結(jié)論經(jīng)過繁忙而又緊張的課程設(shè)計,終于順利的完成了設(shè)計任務(wù)。雖然在這段時間里每天都那么繁忙,但是在這忙碌的過程中卻得到了許多的收獲。經(jīng)過課程設(shè)計,在查閱資料的過程中,學(xué)習(xí)了基于單片機(jī)的C語言程序設(shè)計,了解了單片機(jī)串行通信的基本知識,對于以后的學(xué)習(xí)和工作都有很大的益處。在學(xué)習(xí)的過程中,也遇到了一些困難,比如開始的時候,由于發(fā)送端和接收端的通信協(xié)議沒有做好,導(dǎo)致數(shù)據(jù)不能正確的傳輸,在解決問題的過程中,對于通信協(xié)議的實現(xiàn)有了深刻的認(rèn)識。通過這次課程設(shè)計,鍛煉了自己獨立思考的能力。附錄1、主機(jī)發(fā)送程序#include<reg51.h>#defineucharunsignedchar voidinit();voidsend();ucharTAB[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};uchari,sum;intj;main(){init();send(); }voidinit(void){EA=1;ES=1;TMOD=0x20;TH1=0xfd;TL1=0xfd;PCON=0x00;SCON=0x50;TR1=1; }voidsend(void){do {SBUF=0xaa; while(!TI); TI=0; while(!RI); RI=0; }while((SBUF^0xbb)!=0); do {sum=0; for(i=0;i<=15;i++) {SBUF=TAB[i]; sum+=TAB[i]; while(!TI); TI=0; } SBUF=sum; while(!TI); TI=0; while(!RI); RI=0; } while(SBUF!=0); }2、從機(jī)接收程序#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintvoiddelay(int);voidreceive(void);voidinit(void);uchari,sum;intj;ucharTAB[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};voidmain(){init();receive();}voidinit(void){EA=1;ES=1;TMOD=0x20;TH1=0xfd;TL1=0xfd;PCON=0x00;SCON=0x50;TR1=1; }voiddelay(intx){ inti,j; for(i=0;i<x;i++) for(j=1;j<=150;j++); }voidreceive(void){ucharTABS[16];do{while(!RI);RI=0;}while((SBUF^0xaa)!=0); SBUF=0xbb; while(!TI);TI=0; while(1) {sum=0; for(i=0;i<=15;i++) {while(!RI);RI=0; TABS[i]=SBUF; sum+=TABS[i]; } while(!RI);RI=0; if((SBUF^sum)==0) {SBUF=0x00; while(!TI); TI=0; break; } else {SBUF=0xff; while(!TI); TI=0; } } while(1) {for(i=0;i<=15;i++) {P1=TABS[i]; delay(500); } } }系統(tǒng)電路圖九、參考文獻(xiàn)[1]趙茂泰.智能儀器原理及應(yīng)用.北京:電子工業(yè)出版社,200
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物質(zhì)能助力汽車行業(yè)綠色發(fā)展
- 刑事再審申請書范本
- 2025年氧氣瓶行業(yè)深度研究分析報告
- 公司加薪申請書
- 《求比一個數(shù)多(少)幾的數(shù)是多少的實際問題》(教案)二年級下冊數(shù)學(xué)蘇教版
- 電子商務(wù)時代下的倉儲與配送模式創(chuàng)新
- 中國無人駕駛汽車行業(yè)市場發(fā)展現(xiàn)狀及投資方向研究報告
- 2025年退贓退賠協(xié)議模板
- 2025年高邊拼密扣板項目投資可行性研究分析報告
- 2020-2025年中國利福平片市場供需格局及投資規(guī)劃研究報告
- pp顧問的常見面試問題
- 法理學(xué)原理與案例完整版教學(xué)課件全套ppt教程
- 2021年蘇州市職業(yè)大學(xué)職業(yè)適應(yīng)性測試試題及答案解析
- DBJ∕T 13-253-2016 福建省耐腐蝕混凝土應(yīng)用技術(shù)規(guī)程
- 軟體家具、沙發(fā)質(zhì)量檢驗及工藝
- 電鍍廢水中各種重金屬廢水處理反應(yīng)原理及控制條件
- Q∕GDW 12118.1-2021 人工智能平臺架構(gòu)及技術(shù)要求 第1部分:總體架構(gòu)與技術(shù)要求
- 數(shù)據(jù)結(jié)構(gòu)英文教學(xué)課件:chapter3 Linked Lists
- 中建一局醫(yī)院直線加速器室專項施工方案
- 會計英語專業(yè)詞匯全
- 怎樣把握文章線索
評論
0/150
提交評論